diff --git a/asset-manifest.json b/asset-manifest.json index ea71822..222cec9 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,16 +1,16 @@ { "files": { - "main.css": "/statsboard/static/css/main.1c1619ad.css", - "main.js": "/statsboard/static/js/main.7bab7422.js", + "main.css": "/statsboard/static/css/main.265573cd.css", + "main.js": "/statsboard/static/js/main.c8287e73.js", "static/js/787.c8b1fb18.chunk.js": "/statsboard/static/js/787.c8b1fb18.chunk.js", "static/media/world-countries.json": "/statsboard/static/media/world-countries.36cfc374c3caeabe2159.json", "index.html": "/statsboard/index.html", - "main.1c1619ad.css.map": "/statsboard/static/css/main.1c1619ad.css.map", - "main.7bab7422.js.map": "/statsboard/static/js/main.7bab7422.js.map", + "main.265573cd.css.map": "/statsboard/static/css/main.265573cd.css.map", + "main.c8287e73.js.map": "/statsboard/static/js/main.c8287e73.js.map", "787.c8b1fb18.chunk.js.map": "/statsboard/static/js/787.c8b1fb18.chunk.js.map" }, "entrypoints": [ - "static/css/main.1c1619ad.css", - "static/js/main.7bab7422.js" + "static/css/main.265573cd.css", + "static/js/main.c8287e73.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index 97554ed..676b08b 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Statistics Dashboard
\ No newline at end of file +Statistics Dashboard
\ No newline at end of file diff --git a/static/css/main.1c1619ad.css b/static/css/main.1c1619ad.css deleted file mode 100644 index b4972ba..0000000 --- a/static/css/main.1c1619ad.css +++ /dev/null @@ -1,2 +0,0 @@ -body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:#f5f5f5;font-family:Roboto,sans-serif;padding:1%;text-align:center}#form-container{justify-content:space-between}#form-left{text-align:left}#limit{margin-top:20px}h1{color:#333;font-size:26px;font-weight:700;text-shadow:1px 1px #eee}.info{color:#666;font-size:1rem}.upload-note{font-size:12px;margin:5px 0}.stations-note,.upload-note{color:#999;font-style:italic}.stations-note{font-size:13px;margin-top:-5px}#mapAndBoxes{align-items:flex-start;border-radius:10px;display:flex;padding-left:10px}#country-plots{flex:1 1}#nns-checkboxes{margin-left:50px;margin-right:20%;margin-top:6.6%;max-height:282px;min-width:150px;overflow-y:auto;text-align:left}#nns-checkboxes::-webkit-scrollbar{width:7px}#nns-checkboxes::-webkit-scrollbar-thumb{background-color:#888;border-radius:4px}#nns-checkboxes::-webkit-scrollbar-thumb:hover{background-color:#555}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;color:#721c24;margin-top:10px;padding:10px}#loading-msg{color:#333;font-size:16px;font-weight:700;margin:20px 0;text-align:center}.error-plot{color:red;font-style:italic;margin-top:10px}.plot{background-color:#fff;border-radius:10px;overflow:hidden}.autocomplete{display:inline-flex} -/*# sourceMappingURL=main.1c1619ad.css.map*/ \ No newline at end of file diff --git a/static/css/main.1c1619ad.css.map b/static/css/main.1c1619ad.css.map deleted file mode 100644 index 1cbdd45..0000000 --- a/static/css/main.1c1619ad.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/css/main.1c1619ad.css","mappings":"AAAA,KAKE,kCAAmC,CACnC,iCAAkC,CAJlC,mIAEY,CAHZ,QAMF,CAEA,KACE,uEAEF,CCZA,KAGE,wBAAyB,CADzB,6BAAiC,CAEjC,UAAW,CAHX,iBAIF,CAEA,gBACE,6BACF,CAEA,WACE,eACF,CAEA,OACE,eACF,CAEA,GAGE,UAAW,CAFX,cAAe,CACf,eAAiB,CAEjB,wBACF,CAEA,MAEE,UAAW,CADX,cAEF,CAEA,aACE,cAAe,CAGf,YACF,CAEA,4BALE,UAAW,CACX,iBASF,CALA,eACE,cAAe,CAGf,eACF,CAEA,aAEE,sBAAuB,CACvB,kBAAmB,CAFnB,YAAa,CAGb,iBACF,CAEA,eACE,QACF,CAEA,gBAEE,gBAAiB,CAKjB,gBAAiB,CANjB,eAAgB,CAGhB,gBAAiB,CAEjB,eAAgB,CADhB,eAAgB,CAFhB,eAKF,CAEA,mCACE,SACF,CAEA,yCACE,qBAAsB,CACtB,iBACF,CAEA,+CACE,qBACF,CAEA,eACE,wBAAyB,CAGzB,wBAAyB,CACzB,iBAAkB,CAHlB,aAAc,CAId,eAAgB,CAHhB,YAIF,CAEA,aAGE,UAAW,CAFX,cAAe,CACf,eAAiB,CAGjB,aAAc,CADd,iBAEF,CAEA,YACE,SAAU,CACV,iBAAkB,CAClB,eACF,CAEA,MAEE,qBAAuB,CADvB,kBAAmB,CAEnB,eACF,CAEA,cACE,mBACF","sources":["index.css","App.css"],"sourcesContent":["body {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n",".App {\n text-align: center;\n font-family: 'Roboto', sans-serif;\n background-color: #f5f5f5;\n padding: 1%;\n}\n\n#form-container {\n justify-content: space-between;\n}\n\n#form-left{\n text-align: left;\n}\n\n#limit {\n margin-top: 20px;\n}\n\nh1 {\n font-size: 26px;\n font-weight: bold;\n color: #333;\n text-shadow: 1px 1px #eee;\n}\n\n.info {\n font-size: 1rem;\n color: #666;\n}\n\n.upload-note {\n font-size: 12px;\n color: #999;\n font-style: italic;\n margin: 5px 0;\n}\n\n.stations-note {\n font-size: 13px;\n color: #999;\n font-style: italic;\n margin-top: -5px;\n}\n\n#mapAndBoxes {\n display: flex;\n align-items: flex-start;\n border-radius: 10px;\n padding-left: 10px;\n}\n\n#country-plots {\n flex: 1;\n}\n\n#nns-checkboxes {\n margin-top: 6.6%;\n margin-left: 50px;\n text-align: left;\n max-height: 282px;\n overflow-y: auto;\n min-width: 150px;\n margin-right: 20%;\n}\n\n#nns-checkboxes::-webkit-scrollbar {\n width: 7px;\n}\n\n#nns-checkboxes::-webkit-scrollbar-thumb {\n background-color: #888;\n border-radius: 4px;\n}\n\n#nns-checkboxes::-webkit-scrollbar-thumb:hover {\n background-color: #555;\n}\n\n.error-message {\n background-color: #f8d7da;\n color: #721c24;\n padding: 10px;\n border: 1px solid #f5c6cb;\n border-radius: 5px;\n margin-top: 10px;\n}\n\n#loading-msg {\n font-size: 16px;\n font-weight: bold;\n color: #333;\n text-align: center;\n margin: 20px 0;\n}\n\n.error-plot {\n color: red;\n font-style: italic;\n margin-top: 10px;\n}\n\n.plot {\n border-radius: 10px;\n background-color: white;\n overflow: hidden;\n}\n\n.autocomplete {\n display: inline-flex;\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/css/main.265573cd.css b/static/css/main.265573cd.css new file mode 100644 index 0000000..9be36f6 --- /dev/null +++ b/static/css/main.265573cd.css @@ -0,0 +1,2 @@ +body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:#f5f5f5;font-family:Roboto,sans-serif;padding:1%;text-align:center}#form-container{justify-content:space-between}#form-left{text-align:left}#limit{margin-top:20px}h1{color:#333;font-size:26px;font-weight:700;text-shadow:1px 1px #eee}.info{color:#666;font-size:1rem}.upload-note{color:#999;margin:5px 0}.networks-note,.upload-note{font-size:12px;font-style:italic}.networks-note{color:#ca2400;margin-top:-5px}.stations-note{color:#999;font-size:13px;font-style:italic;margin-top:-5px}#mapAndBoxes{align-items:flex-start;border-radius:10px;display:flex;padding-left:10px}#country-plots{flex:1 1}#nns-checkboxes{margin-left:50px;margin-right:20%;margin-top:6.6%;max-height:282px;min-width:150px;overflow-y:auto;text-align:left}#nns-checkboxes::-webkit-scrollbar{width:7px}#nns-checkboxes::-webkit-scrollbar-thumb{background-color:#888;border-radius:4px}#nns-checkboxes::-webkit-scrollbar-thumb:hover{background-color:#555}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;color:#721c24;margin-top:10px;padding:10px}#loading-msg{color:#333;font-size:16px;font-weight:700;margin:20px 0;text-align:center}.error-plot{color:red;font-style:italic;margin-top:10px}.plot{background-color:#fff;border-radius:10px;overflow:hidden}.autocomplete{display:inline-flex} +/*# sourceMappingURL=main.265573cd.css.map*/ \ No newline at end of file diff --git a/static/css/main.265573cd.css.map b/static/css/main.265573cd.css.map new file mode 100644 index 0000000..ff5c116 --- /dev/null +++ b/static/css/main.265573cd.css.map @@ -0,0 +1 @@ +{"version":3,"file":"static/css/main.265573cd.css","mappings":"AAAA,KAKE,kCAAmC,CACnC,iCAAkC,CAJlC,mIAEY,CAHZ,QAMF,CAEA,KACE,uEAEF,CCZA,KAGE,wBAAyB,CADzB,6BAAiC,CAEjC,UAAW,CAHX,iBAIF,CAEA,gBACE,6BACF,CAEA,WACE,eACF,CAEA,OACE,eACF,CAEA,GAGE,UAAW,CAFX,cAAe,CACf,eAAiB,CAEjB,wBACF,CAEA,MAEE,UAAW,CADX,cAEF,CAEA,aAEE,UAAW,CAEX,YACF,CAEA,4BANE,cAAe,CAEf,iBASF,CALA,eAEE,aAAc,CAEd,eACF,CAEA,eAEE,UAAW,CADX,cAAe,CAEf,iBAAkB,CAClB,eACF,CAEA,aAEE,sBAAuB,CACvB,kBAAmB,CAFnB,YAAa,CAGb,iBACF,CAEA,eACE,QACF,CAEA,gBAEE,gBAAiB,CAKjB,gBAAiB,CANjB,eAAgB,CAGhB,gBAAiB,CAEjB,eAAgB,CADhB,eAAgB,CAFhB,eAKF,CAEA,mCACE,SACF,CAEA,yCACE,qBAAsB,CACtB,iBACF,CAEA,+CACE,qBACF,CAEA,eACE,wBAAyB,CAGzB,wBAAyB,CACzB,iBAAkB,CAHlB,aAAc,CAId,eAAgB,CAHhB,YAIF,CAEA,aAGE,UAAW,CAFX,cAAe,CACf,eAAiB,CAGjB,aAAc,CADd,iBAEF,CAEA,YACE,SAAU,CACV,iBAAkB,CAClB,eACF,CAEA,MAEE,qBAAuB,CADvB,kBAAmB,CAEnB,eACF,CAEA,cACE,mBACF","sources":["index.css","App.css"],"sourcesContent":["body {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n",".App {\n text-align: center;\n font-family: 'Roboto', sans-serif;\n background-color: #f5f5f5;\n padding: 1%;\n}\n\n#form-container {\n justify-content: space-between;\n}\n\n#form-left{\n text-align: left;\n}\n\n#limit {\n margin-top: 20px;\n}\n\nh1 {\n font-size: 26px;\n font-weight: bold;\n color: #333;\n text-shadow: 1px 1px #eee;\n}\n\n.info {\n font-size: 1rem;\n color: #666;\n}\n\n.upload-note {\n font-size: 12px;\n color: #999;\n font-style: italic;\n margin: 5px 0;\n}\n\n.networks-note {\n font-size: 12px;\n color: #CA2400;\n font-style: italic;\n margin-top: -5px;\n}\n\n.stations-note {\n font-size: 13px;\n color: #999;\n font-style: italic;\n margin-top: -5px;\n}\n\n#mapAndBoxes {\n display: flex;\n align-items: flex-start;\n border-radius: 10px;\n padding-left: 10px;\n}\n\n#country-plots {\n flex: 1;\n}\n\n#nns-checkboxes {\n margin-top: 6.6%;\n margin-left: 50px;\n text-align: left;\n max-height: 282px;\n overflow-y: auto;\n min-width: 150px;\n margin-right: 20%;\n}\n\n#nns-checkboxes::-webkit-scrollbar {\n width: 7px;\n}\n\n#nns-checkboxes::-webkit-scrollbar-thumb {\n background-color: #888;\n border-radius: 4px;\n}\n\n#nns-checkboxes::-webkit-scrollbar-thumb:hover {\n background-color: #555;\n}\n\n.error-message {\n background-color: #f8d7da;\n color: #721c24;\n padding: 10px;\n border: 1px solid #f5c6cb;\n border-radius: 5px;\n margin-top: 10px;\n}\n\n#loading-msg {\n font-size: 16px;\n font-weight: bold;\n color: #333;\n text-align: center;\n margin: 20px 0;\n}\n\n.error-plot {\n color: red;\n font-style: italic;\n margin-top: 10px;\n}\n\n.plot {\n border-radius: 10px;\n background-color: white;\n overflow: hidden;\n}\n\n.autocomplete {\n display: inline-flex;\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/main.7bab7422.js.map b/static/js/main.7bab7422.js.map deleted file mode 100644 index 892c1dc..0000000 --- a/static/js/main.7bab7422.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/main.7bab7422.js","mappings":"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,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,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ADgB,CAAC,OAAQklE,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,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","sources":["js_hll.js","../node_modules/@mui/material/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/@mui/material/node_modules/react-is/index.js","../node_modules/@mui/utils/setRef.js","../node_modules/@mui/utils/useControlled.js","../node_modules/@mui/utils/useEnhancedEffect.js","../node_modules/@mui/utils/useEventCallback.js","../node_modules/@mui/utils/useForkRef.js","../node_modules/@mui/utils/useId.js","../node_modules/country-iso-2-to-3/index.js","../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/customParseFormat.js","../node_modules/dayjs/plugin/isBetween.js","../node_modules/dayjs/plugin/localizedFormat.js","../node_modules/dayjs/plugin/weekOfYear.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.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/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/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../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/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.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/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/clsx/dist/clsx.m.js","../node_modules/@mui/utils/esm/resolveProps.js","../node_modules/@mui/utils/esm/composeClasses/composeClasses.js","../node_modules/@mui/utils/esm/formatMuiErrorMessage.js","../node_modules/@mui/system/esm/colorManipulator.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/@emotion/memoize/dist/emotion-memoize.esm.js","../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","../node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Serializer.js","../node_modules/stylis/src/Parser.js","../node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","../node_modules/stylis/src/Middleware.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js","../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js","../node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","../node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","../node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js","../node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js","../node_modules/@mui/utils/esm/deepmerge.js","../node_modules/@mui/system/esm/createTheme/createBreakpoints.js","../node_modules/@mui/system/esm/createTheme/shape.js","../node_modules/@mui/system/esm/breakpoints.js","../node_modules/@mui/utils/esm/capitalize.js","../node_modules/@mui/system/esm/style.js","../node_modules/@mui/system/esm/merge.js","../node_modules/@mui/system/esm/spacing.js","../node_modules/@mui/system/esm/memoize.js","../node_modules/@mui/system/esm/compose.js","../node_modules/@mui/system/esm/borders.js","../node_modules/@mui/system/esm/cssGrid.js","../node_modules/@mui/system/esm/palette.js","../node_modules/@mui/system/esm/sizing.js","../node_modules/@mui/system/esm/styleFunctionSx/defaultSxConfig.js","../node_modules/@mui/system/esm/styleFunctionSx/styleFunctionSx.js","../node_modules/@mui/system/esm/createTheme/createTheme.js","../node_modules/@mui/system/esm/createTheme/createSpacing.js","../node_modules/@mui/system/esm/propsToClassKey.js","../node_modules/@mui/system/esm/createStyled.js","../node_modules/@mui/material/styles/createMixins.js","../node_modules/@mui/material/colors/common.js","../node_modules/@mui/material/colors/grey.js","../node_modules/@mui/material/colors/purple.js","../node_modules/@mui/material/colors/red.js","../node_modules/@mui/material/colors/orange.js","../node_modules/@mui/material/colors/blue.js","../node_modules/@mui/material/colors/lightBlue.js","../node_modules/@mui/material/colors/green.js","../node_modules/@mui/material/styles/createPalette.js","../node_modules/@mui/material/styles/createTypography.js","../node_modules/@mui/material/styles/shadows.js","../node_modules/@mui/material/styles/createTransitions.js","../node_modules/@mui/material/styles/zIndex.js","../node_modules/@mui/material/styles/createTheme.js","../node_modules/@mui/material/styles/defaultTheme.js","../node_modules/@mui/material/styles/identifier.js","../node_modules/@mui/material/styles/styled.js","../node_modules/@mui/styled-engine/index.js","../node_modules/@mui/system/esm/useThemeProps/getThemeProps.js","../node_modules/@mui/system/esm/useThemeWithoutDefault.js","../node_modules/@mui/system/esm/useTheme.js","../node_modules/@mui/material/styles/useThemeProps.js","../node_modules/@mui/system/esm/useThemeProps/useThemeProps.js","../node_modules/@mui/utils/esm/setRef.js","../node_modules/@mui/utils/esm/useForkRef.js","../node_modules/@mui/material/utils/useForkRef.js","../node_modules/@mui/utils/esm/useEnhancedEffect.js","../node_modules/@mui/utils/esm/useEventCallback.js","../node_modules/@mui/material/utils/useEventCallback.js","../node_modules/@mui/utils/esm/useIsFocusVisible.js","../node_modules/@mui/material/utils/useIsFocusVisible.js","../node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/react-transition-group/esm/TransitionGroupContext.js","../node_modules/react-transition-group/esm/utils/ChildMapping.js","../node_modules/react-transition-group/esm/TransitionGroup.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@emotion/react/dist/emotion-react.browser.esm.js","../node_modules/@mui/material/ButtonBase/Ripple.js","../node_modules/@mui/utils/esm/ClassNameGenerator/ClassNameGenerator.js","../node_modules/@mui/utils/esm/generateUtilityClass/generateUtilityClass.js","../node_modules/@mui/utils/esm/generateUtilityClasses/generateUtilityClasses.js","../node_modules/@mui/material/ButtonBase/touchRippleClasses.js","../node_modules/@mui/material/ButtonBase/TouchRipple.js","../node_modules/@mui/material/ButtonBase/buttonBaseClasses.js","../node_modules/@mui/material/ButtonBase/ButtonBase.js","../node_modules/@mui/material/utils/capitalize.js","../node_modules/@mui/material/Button/buttonClasses.js","../node_modules/@mui/material/ButtonGroup/ButtonGroupContext.js","../node_modules/@mui/material/Button/Button.js","../node_modules/@mui/utils/esm/useId.js","../node_modules/@mui/utils/esm/ownerDocument.js","../node_modules/@mui/utils/esm/ownerWindow.js","../node_modules/@mui/utils/esm/debounce.js","../node_modules/@mui/base/TextareaAutosize/TextareaAutosize.js","../node_modules/@mui/base/utils/isHostComponent.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/utils/useEnhancedEffect.js","../node_modules/@mui/styled-engine/GlobalStyles/GlobalStyles.js","../node_modules/@mui/system/esm/GlobalStyles/GlobalStyles.js","../node_modules/@mui/material/GlobalStyles/GlobalStyles.js","../node_modules/@mui/material/InputBase/utils.js","../node_modules/@mui/material/InputBase/inputBaseClasses.js","../node_modules/@mui/material/InputBase/InputBase.js","../node_modules/@mui/material/Input/inputClasses.js","../node_modules/@mui/material/Input/Input.js","../node_modules/@mui/material/FilledInput/filledInputClasses.js","../node_modules/@mui/material/FilledInput/FilledInput.js","../node_modules/@mui/material/OutlinedInput/NotchedOutline.js","../node_modules/@mui/material/OutlinedInput/outlinedInputClasses.js","../node_modules/@mui/material/OutlinedInput/OutlinedInput.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/material/FormControl/formControlClasses.js","../node_modules/@mui/material/FormControl/FormControl.js","../node_modules/@mui/material/FormHelperText/formHelperTextClasses.js","../node_modules/@mui/material/FormHelperText/FormHelperText.js","../node_modules/@mui/material/utils/ownerDocument.js","../node_modules/@mui/material/List/ListContext.js","../node_modules/@mui/material/List/listClasses.js","../node_modules/@mui/material/List/List.js","../node_modules/@mui/utils/esm/getScrollbarSize.js","../node_modules/@mui/material/utils/getScrollbarSize.js","../node_modules/@mui/material/MenuList/MenuList.js","../node_modules/@mui/base/utils/omitEventHandlers.js","../node_modules/@mui/base/utils/mergeSlotProps.js","../node_modules/@mui/base/utils/extractEventHandlers.js","../node_modules/@mui/base/utils/resolveComponentProps.js","../node_modules/@mui/base/utils/useSlotProps.js","../node_modules/@mui/base/utils/appendOwnerState.js","../node_modules/@mui/material/utils/debounce.js","../node_modules/@mui/material/utils/ownerWindow.js","../node_modules/react-transition-group/esm/config.js","../node_modules/react-transition-group/esm/utils/reflow.js","../node_modules/react-transition-group/esm/Transition.js","../node_modules/@mui/material/styles/useTheme.js","../node_modules/@mui/material/transitions/utils.js","../node_modules/@mui/material/Grow/Grow.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/@mui/base/Portal/Portal.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@mui/base/Modal/ModalManager.js","../node_modules/@mui/base/FocusTrap/FocusTrap.js","../node_modules/@mui/base/Modal/modalClasses.js","../node_modules/@mui/base/utils/ClassNameConfigurator.js","../node_modules/@mui/base/Modal/Modal.js","../node_modules/@mui/material/Fade/Fade.js","../node_modules/@mui/material/Backdrop/backdropClasses.js","../node_modules/@mui/material/Backdrop/Backdrop.js","../node_modules/@mui/material/Modal/Modal.js","../node_modules/@mui/material/styles/getOverlayAlpha.js","../node_modules/@mui/material/Paper/paperClasses.js","../node_modules/@mui/material/Paper/Paper.js","../node_modules/@mui/material/Popover/popoverClasses.js","../node_modules/@mui/material/Popover/Popover.js","../node_modules/@mui/material/Menu/menuClasses.js","../node_modules/@mui/material/Menu/Menu.js","../node_modules/@mui/material/NativeSelect/nativeSelectClasses.js","../node_modules/@mui/material/NativeSelect/NativeSelectInput.js","../node_modules/@mui/utils/esm/useControlled.js","../node_modules/@mui/material/utils/useControlled.js","../node_modules/@mui/material/Select/selectClasses.js","../node_modules/@mui/material/Select/SelectInput.js","../node_modules/@mui/material/SvgIcon/svgIconClasses.js","../node_modules/@mui/material/SvgIcon/SvgIcon.js","../node_modules/@mui/material/utils/createSvgIcon.js","../node_modules/@mui/material/internal/svg-icons/ArrowDropDown.js","../node_modules/@mui/material/Select/Select.js","../node_modules/@mui/material/TextField/textFieldClasses.js","../node_modules/@mui/material/TextField/TextField.js","../node_modules/@mui/utils/esm/usePreviousProps.js","../node_modules/@mui/base/useAutocomplete/useAutocomplete.js","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/@mui/base/Popper/popperClasses.js","../node_modules/@mui/base/Popper/Popper.js","../node_modules/@mui/material/Popper/Popper.js","../node_modules/@mui/material/ListSubheader/listSubheaderClasses.js","../node_modules/@mui/material/ListSubheader/ListSubheader.js","../node_modules/@mui/material/IconButton/iconButtonClasses.js","../node_modules/@mui/material/IconButton/IconButton.js","../node_modules/@mui/material/internal/svg-icons/Cancel.js","../node_modules/@mui/material/Chip/chipClasses.js","../node_modules/@mui/material/Chip/Chip.js","../node_modules/@mui/material/internal/svg-icons/Close.js","../node_modules/@mui/material/Autocomplete/autocompleteClasses.js","../node_modules/@mui/material/Autocomplete/Autocomplete.js","../node_modules/@mui/material/CircularProgress/circularProgressClasses.js","../node_modules/@mui/material/CircularProgress/CircularProgress.js","../node_modules/@mui/system/esm/styleFunctionSx/extendSxProp.js","../node_modules/@mui/material/Typography/typographyClasses.js","../node_modules/@mui/material/Typography/Typography.js","../node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js","../node_modules/@mui/material/FormControlLabel/FormControlLabel.js","../node_modules/@mui/material/internal/switchBaseClasses.js","../node_modules/@mui/material/internal/SwitchBase.js","../node_modules/@mui/material/internal/svg-icons/RadioButtonUnchecked.js","../node_modules/@mui/material/internal/svg-icons/RadioButtonChecked.js","../node_modules/@mui/material/Radio/RadioButtonIcon.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/RadioGroup/RadioGroupContext.js","../node_modules/@mui/material/Radio/radioClasses.js","../node_modules/@mui/material/Radio/Radio.js","../node_modules/@mui/material/RadioGroup/useRadioGroup.js","../node_modules/@mui/material/FormGroup/formGroupClasses.js","../node_modules/@mui/material/FormGroup/FormGroup.js","../node_modules/@mui/material/utils/useId.js","../node_modules/@mui/material/RadioGroup/RadioGroup.js","../node_modules/@mui/material/internal/svg-icons/CheckBoxOutlineBlank.js","../node_modules/@mui/material/internal/svg-icons/CheckBox.js","../node_modules/@mui/material/internal/svg-icons/IndeterminateCheckBox.js","../node_modules/@mui/material/Checkbox/checkboxClasses.js","../node_modules/@mui/material/Checkbox/Checkbox.js","../node_modules/@mui/material/Grid/GridContext.js","../node_modules/@mui/material/Grid/gridClasses.js","../node_modules/@mui/material/Grid/Grid.js","../node_modules/@mui/material/useMediaQuery/useMediaQuery.js","../node_modules/@mui/x-date-pickers/internals/utils/views.js","../node_modules/@mui/x-date-pickers/internals/utils/date-utils.js","../node_modules/@mui/x-date-pickers/internals/utils/time-utils.js","../node_modules/@mui/x-date-pickers/internals/utils/getDefaultReferenceDate.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useField.utils.js","../node_modules/@mui/x-date-pickers/internals/utils/valueManagers.js","../node_modules/@mui/x-date-pickers/LocalizationProvider/LocalizationProvider.js","../node_modules/@mui/x-date-pickers/locales/enUS.js","../node_modules/@mui/x-date-pickers/internals/hooks/useUtils.js","../node_modules/@mui/x-date-pickers/locales/utils/getPickersLocalization.js","../node_modules/@mui/x-date-pickers/internals/components/pickersToolbarClasses.js","../node_modules/@mui/x-date-pickers/internals/components/PickersToolbar.js","../node_modules/@mui/x-date-pickers/DatePicker/datePickerToolbarClasses.js","../node_modules/@mui/x-date-pickers/DatePicker/DatePickerToolbar.js","../node_modules/@mui/x-date-pickers/internals/utils/slots-migration.js","../node_modules/@mui/x-date-pickers/DatePicker/shared.js","../node_modules/@mui/x-date-pickers/internals/utils/validation/validateDate.js","../node_modules/@mui/material/InputAdornment/inputAdornmentClasses.js","../node_modules/@mui/material/InputAdornment/InputAdornment.js","../node_modules/@mui/x-date-pickers/internals/components/pickersPopperClasses.js","../node_modules/@mui/x-date-pickers/internals/utils/utils.js","../node_modules/@mui/x-date-pickers/internals/components/PickersPopper.js","../node_modules/@mui/x-date-pickers/internals/hooks/useValidation.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePickerValue.js","../node_modules/@mui/x-date-pickers/internals/hooks/useOpenState.js","../node_modules/@mui/x-date-pickers/internals/hooks/useViews.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePickerViews.js","../node_modules/@mui/x-date-pickers/internals/hooks/useIsLandscape.js","../node_modules/@mui/x-date-pickers/internals/utils/warning.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePicker.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePickerLayoutProps.js","../node_modules/@mui/x-date-pickers/PickersLayout/pickersLayoutClasses.js","../node_modules/@mui/material/DialogActions/dialogActionsClasses.js","../node_modules/@mui/material/DialogActions/DialogActions.js","../node_modules/@mui/x-date-pickers/PickersActionBar/PickersActionBar.js","../node_modules/@mui/material/ListItem/listItemClasses.js","../node_modules/@mui/material/ListItemButton/listItemButtonClasses.js","../node_modules/@mui/material/ListItemSecondaryAction/listItemSecondaryActionClasses.js","../node_modules/@mui/material/ListItemSecondaryAction/ListItemSecondaryAction.js","../node_modules/@mui/material/ListItem/ListItem.js","../node_modules/@mui/x-date-pickers/internals/constants/dimensions.js","../node_modules/@mui/x-date-pickers/PickersShortcuts/PickersShortcuts.js","../node_modules/@mui/x-date-pickers/PickersLayout/usePickerLayout.js","../node_modules/@mui/x-date-pickers/PickersLayout/PickersLayout.js","../node_modules/@mui/x-date-pickers/internals/hooks/useDesktopPicker/useDesktopPicker.js","../node_modules/@mui/x-date-pickers/icons/index.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useFieldState.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useFieldCharacterEditing.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useField.js","../node_modules/@mui/x-date-pickers/internals/utils/validation/extractValidationProps.js","../node_modules/@mui/x-date-pickers/internals/utils/fields.js","../node_modules/@mui/x-date-pickers/DateField/useDateField.js","../node_modules/@mui/x-date-pickers/DateField/DateField.js","../node_modules/@mui/x-date-pickers/DateCalendar/useIsDateDisabled.js","../node_modules/@mui/x-date-pickers/DateCalendar/useCalendarState.js","../node_modules/@mui/x-date-pickers/DateCalendar/pickersFadeTransitionGroupClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/PickersFadeTransitionGroup.js","../node_modules/@mui/x-date-pickers/PickersDay/pickersDayClasses.js","../node_modules/@mui/x-date-pickers/PickersDay/PickersDay.js","../node_modules/dom-helpers/esm/removeClass.js","../node_modules/react-transition-group/esm/CSSTransition.js","../node_modules/dom-helpers/esm/addClass.js","../node_modules/dom-helpers/esm/hasClass.js","../node_modules/@mui/x-date-pickers/DateCalendar/pickersSlideTransitionClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/PickersSlideTransition.js","../node_modules/@mui/x-date-pickers/DateCalendar/dayCalendarClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/DayCalendar.js","../node_modules/@mui/x-date-pickers/MonthCalendar/pickersMonthClasses.js","../node_modules/@mui/x-date-pickers/MonthCalendar/PickersMonth.js","../node_modules/@mui/x-date-pickers/MonthCalendar/monthCalendarClasses.js","../node_modules/@mui/x-date-pickers/MonthCalendar/MonthCalendar.js","../node_modules/@mui/x-date-pickers/YearCalendar/pickersYearClasses.js","../node_modules/@mui/x-date-pickers/YearCalendar/PickersYear.js","../node_modules/@mui/x-date-pickers/YearCalendar/yearCalendarClasses.js","../node_modules/@mui/x-date-pickers/YearCalendar/YearCalendar.js","../node_modules/@mui/x-date-pickers/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.js","../node_modules/@mui/x-date-pickers/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js","../node_modules/@mui/x-date-pickers/DateCalendar/pickersCalendarHeaderClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/PickersCalendarHeader.js","../node_modules/@mui/x-date-pickers/internals/hooks/date-helpers-hooks.js","../node_modules/@mui/x-date-pickers/internals/components/PickerViewRoot/PickerViewRoot.js","../node_modules/@mui/x-date-pickers/internals/utils/defaultReduceAnimations.js","../node_modules/@mui/x-date-pickers/DateCalendar/dateCalendarClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/DateCalendar.js","../node_modules/@mui/x-date-pickers/dateViewRenderers/dateViewRenderers.js","../node_modules/@mui/x-date-pickers/DesktopDatePicker/DesktopDatePicker.js","../node_modules/@mui/material/DialogContent/dialogContentClasses.js","../node_modules/@mui/material/DialogTitle/dialogTitleClasses.js","../node_modules/@mui/material/DialogContent/DialogContent.js","../node_modules/@mui/material/Dialog/dialogClasses.js","../node_modules/@mui/material/Dialog/DialogContext.js","../node_modules/@mui/material/Dialog/Dialog.js","../node_modules/@mui/x-date-pickers/internals/components/PickersModalDialog.js","../node_modules/@mui/x-date-pickers/internals/hooks/useMobilePicker/useMobilePicker.js","../node_modules/@mui/x-date-pickers/MobileDatePicker/MobileDatePicker.js","../node_modules/@mui/x-date-pickers/DatePicker/DatePicker.js","../node_modules/@mui/x-date-pickers/AdapterDayjs/AdapterDayjs.js","App.js","plotsEIDA.js","plotsNode.js","plotsNetwork.js","plotsStation.js","reportWebVitals.js","index.js"],"sourcesContent":["// Code taken and modified from: https://github.com/aggregateknowledge/js-hll\n\nmodule.exports = {\n HLL: HLL,\n fromHexString: fromHexString\n};\n\n// ** Config ***************************************************************\n// default register width and number when loading explicit sets\nvar DEFAULT_REGISTER_WIDTH = 5/*schema v1*/,\n DEFAULT_LOG2M = 13/*schema v1*/;\n\n// -------------------------------------------------------------------------\nvar LOWER = 0/*lower 32bits of the hashed value*/,\n UPPER = 1/*upper 32bits of the hashed value*/;\n\n// ** Set Representation ***************************************************\n/**\n * Creates a new HLL structure with the specified precision.\n *\n * @param {Number} [log2m=DEFAULT_LOG2M] the log-base-2 of the number of\n * registers. This cannot be less than four or greater than 24.\n * @param {Number} [registerWidth=DEFAULT_REGISTER_WIDTH] the width in bits\n * of the register values. This is ceil(log2(log2(expectedUniqueElements)))\n * and cannot be less than one or greater than five.\n * @constructor\n */\n// NOTE: the register width is limited to at most 5 since that provides for\n// a maximum register value of 31 which is the limit of the JavaScript\n// bit shifting operators.\nfunction HLL (log2m, registerWidth) {\n var self = {};\n\n if(arguments.length < 1) log2m = DEFAULT_LOG2M;\n if(arguments.length < 2) registerWidth = DEFAULT_REGISTER_WIDTH;\n if((log2m < 4) || (log2m > 24)) throw new Error(\"Register width must be between 4 and 24 inclusive (log2m = \" + log2m + \").\");\n if((registerWidth < 1) || (registerWidth > 5)) throw new Error(\"Register width must be between 1 and 5 inclusive (registerWidth = \" + registerWidth + \").\");\n\n // .. initialization ...................................................\n self.log2m = log2m;\n self.m = 1 << log2m/*for convenience*/;\n self.registerWidth = registerWidth;\n\n // NOTE: there are two approaches that can be taken on storage:\n // 1. Simply use an array of register values. This results in\n // the easiest to read and maintain code but consumes considerably\n // more memory than is necessary. (64bits are used for every\n // register even though the register width is always less\n // than or equal to 6.)\n // 2. Use an ArrayBuffer to encode exactly '2^log2m * registerWidth'\n // bits. This results in highly complex code to both read and\n // maintain but is provides for optimal storage.\n // Currently the first approach is taken.\n self.registers = [];\n for(var i=self.m-1; i>=0; i--) self.registers.push(0);\n\n // .. initialize meta values ...........................................\n // register count/width meta values\n var maxRegisterValue = ((1 << self.registerWidth/*2^registerWidth*/) - 1) >>> 0;\n var registerIndexMask = ((1 << log2m) - 1) >>> 0/*the mask applied to the lower-4bytes of the hashed value to get the register index*/;\n\n // cardinality estimation meta values\n var PW_BITS = maxRegisterValue - 1,\n L = PW_BITS + log2m,\n TWO_TO_L = Math.pow(2, L)/*L may be larger than 32 so '<<' cannot be used*/;\n\n var LARGE_ESTIMATOR_CUTOFF = (TWO_TO_L / 30),\n SMALL_ESTIMATOR_CUTOFF = 5 * self.registers.length/*m*/ / 2;\n\n var ALPHA_M_SQUARED = cardinalityAlphaMSquared(self.m);\n\n // =====================================================================\n function rho(value/*w*/) {\n // NOTE: by contract the value must be 32bits (therefore only LOWER is needed)\n // NOTE: there are two approaches: mask \"value\" so that there are 1's\n // in the upper bits or do a min. The former is more performant\n // the latter is easier to read.\n var lsb = leastSignificantBit(value[LOWER]) + 1/*since 1-based*/;\n return Math.min(maxRegisterValue, lsb);\n };\n\n /**\n * @param {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values (of a 64bit hashed value)\n * to be added to this set. This must be specified and cannot be\n * null.\n * @returns {hll.HLL}\n */\n self.addRaw = function(hashValue) {\n var registerIndex = hashValue[LOWER] & registerIndexMask/*by contract <32bits so LOWER is sufficient*/;\n var registerValue = rho(shiftRightUnsignedLong(hashValue, log2m));\n self.registers[registerIndex] = Math.max(self.registers[registerIndex], registerValue);\n };\n\n // ---------------------------------------------------------------------\n /**\n * @returns {Number} the estimated cardinality of the set as a floating\n * point number.\n * @see http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf\n */\n self.algorithmCardinality = function() {\n var m = self.m/*for convenience*/;\n\n // compute the \"indicator function\" -- sum(2^(-M[j])) where M[j] is\n // the 'j'th register value\n var sum = 0.0;\n var numberOfZeroes = 0/*\"V\" in the paper*/;\n var registers = self.registers/*for performance*/;\n for(var j=m-1; j>=0; j--) {\n var registerValue = registers[j];\n\n sum += 1.0 / ((1 << registerValue/*2^registerValue*/)/*registerValue < 32 by contract*/ >>> 0)/*unsigned*/;\n if(registerValue == 0) numberOfZeroes++;\n }\n\n // apply the estimate and correction to the indicator function\n var estimator = ALPHA_M_SQUARED / sum;\n if((numberOfZeroes != 0) && (estimator < SMALL_ESTIMATOR_CUTOFF))\n return m * Math.log(m / numberOfZeroes);\n else if(estimator <= LARGE_ESTIMATOR_CUTOFF)\n return estimator;\n else\n return (-1 * TWO_TO_L) * Math.log(1.0 - (estimator / TWO_TO_L));\n };\n\n /**\n * @returns {Number} the estimated cardinality of the set ceil'd\n * up to an integral number.\n * @see http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf\n */\n self.cardinality = function() {\n return Math.ceil(self.algorithmCardinality());\n };\n\n // ---------------------------------------------------------------------\n /**\n * @return {Number} the standard error based on log2m (the number of registers)\n * @see http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf\n */\n self.cardinalityError = function() {\n return 1.04 / Math.sqrt(1 << log2m/*2^log2m = m*/);\n };\n\n // =====================================================================\n /**\n * @param {hll.HLL} otherSet another HLL. log2m and registerWidth\n * must be identical for the two sets otherwise an exception is\n * thrown. This set is not modified in any way.\n * @returns {hll.HLL} the unioned results (which is this object).\n * @throws {Error} if the log2m and registerWidth\n * of this set and the specified one do not match.\n */\n self.union = function(otherSet) {\n // NOTE: currently precluding unioning with different sized sets\n if((self.log2m != otherSet.log2m) || (self.registerWidth != otherSet.registerWidth)) throw new Error(\"Union of sets with different 'log2m' \" + ((self.log2m == otherSet.log2m) ? \"\" : \"(\" + self.log2m + \" != \" + otherSet.log2m + \") \") + \"or 'registerWidth'\" + ((self.registerWidth == otherSet.registerWidth) ? \"\" : \" (\" + self.registerWidth + \" != \" + otherSet.registerWidth + \")\") + \".\");\n\n var selfRegisterCount = self.m,\n otherRegisterCount = otherSet.m;\n var registerCount = Math.min(selfRegisterCount, otherRegisterCount);\n\n // TODO: re-incorporate when contract updated\n // TODO: don't change 'otherSet' since it's not in the contract. Make a clone.\n // // 'fold' the larger set until it is the same size as this set\n // var largerSet = selfRegisterCount > otherRegisterCount ? self : otherSet;\n // while(largerSet.registers.length != registerCount)\n // largerSet.fold();\n\n var selfRegisters = self.registers/*for performance*/,\n otherRegisters = otherSet.registers/*for performance*/;\n for(var i=registerCount-1; i>=0; i--)\n selfRegisters[i] = Math.max(selfRegisters[i], otherRegisters[i]);\n\n return self;\n };\n\n /**\n * 'Folds' a set down to the specified log2m as per\n * {@link http://blog.aggregateknowledge.com/2012/09/12/set-operations-on-hlls-of-different-sizes/}.\n *\n * @param {Number} the desired log2m (which determines the\n * relative error) of the HLL. This cannot be less than one or\n * greater than the current value.\n * @returns {hll.HLL} a duplicate of this set, folded to match the specified\n * log2m. The current set is left untouched.\n * @throws {Error} if the specified log2m is less than two\n * or greater than the current value.\n */\n self.fold = function(log2m) {\n if(log2m == self.log2m) return self.clone()/*trivial case -- by contract it must be a duplicate*/;\n if((log2m < 1) || (log2m > self.log2m)) throw new Error(\"'log2m' cannot be less than 1 or greater than the current value.\");\n\n // assume log2m=6 and registerWidth=5. Then there will be 6bits that\n // compose the index (I) and at most '2^5 - 1 = 31' bits that compose\n // the register value (V):\n // 0b ---- ---- ---V VVVV VVVV VVVV VVVV VVVV VVVV VVVV VVII IIII\n // Folding by one (log2m=6 -> log2m=5) means that one bit that was\n // previously in the index is now part of the register value:\n // 0b ---- ---- ---- VVVV VVVV VVVV VVVV VVVV VVVV VVVV VvVI IIII\n // (shown as a lower case 'v' to make it clear). Since the HLL\n // algorithm uses the least-significant set bit ('1') of the register\n // value, there are two possible cases:\n // 1. The upper bit of the old index (which is now the lower bit\n // of the register value) was set to '1' in which case the new\n // register value is '1';\n // 2. The upper bit of the old index was set to '0' in which case\n // the new register value is 'min(oldRegisterValue + 1, 31)';\n // Case #1 means that the upper half of the registers can be ignored\n // since the *maximum* register value of case #1 is '1' where as the\n // *minimum* register value in case #2 is '1'.\n // This can be easily extended to folding 'n' times.\n // SEE: http://blog.aggregateknowledge.com/2013/03/25/hyperloglog-engineering-choosing-the-right-bits/\n // NOTE: since 'registerWidth' does not change the same 'maxRegisterValue'\n // is to be used\n var hllSet = new HLL(log2m, self.registerWidth);\n var foldedRegisters = hllSet.registers/*for performance*/,\n selfRegisters = self.registers/*for performance*/;\n var difference = self.log2m - log2m,\n foldedM = hllSet.m/*by definition*/;\n for(var i=foldedM-1; i>=0; i--)\n foldedRegisters[i] = Math.min(selfRegisters[i] + difference, maxRegisterValue)/*bound above by 'maxRegisterValue'*/;\n\n return hllSet;\n };\n\n // =====================================================================\n /**\n * @returns {hll.HLL} a clone of this set (with no remaining references\n * to the original set.\n */\n self.clone = function() {\n var clone = new HLL(self.log2m, self.registerWidth);\n // copy all registers\n var selfRegisters = self.registers/*for performance*/,\n cloneRegisters = clone.registers/*for performance*/;\n for(var i=self.m-1; i>=0; i--)\n cloneRegisters[i] = selfRegisters[i];\n\n return clone;\n };\n\n /**\n * @returns {hll.HLL} this object with all of its register values set\n * to zero.\n */\n self.clear = function() {\n var registers = self.registers/*for performance*/;\n for(var i=self.m-1; i>=0; i--)\n registers[i] = 0/*clear*/;\n\n return self;\n };\n\n // =====================================================================\n /**\n * Encodes this structure into a hexadecimal string in the format\n * described in STORAGE.markdown schema version 1. Only\n * FULL representations are supported.\n *\n * @return {String} the string that encodes this HLL structure\n */\n self.toHexString = function() {\n // byte layout VPCB*'\n var writer = new ByteWriter();\n\n // version byte: schema 1, full\n writer.addBits(0x14, 8);\n // parameter byte:\n // * top 3 bits: registerWidth - 1\n // * bottom 5 bits: log2m\n writer.addBits(registerWidth - 1, 3);\n writer.addBits(log2m, 5);\n // cutoff byte\n writer.addBits(0, 8)/*1 bit of padding, explicit enabled = 0, explicit cuttoff = 0*/;\n\n // The data bytes encode the register values in 'registerWidth'-bit-wide\n // \"short words\". The words are stored in _ascending_ index order\n\n // If 'BITS = registerWidth * numberOfRegisters' is not divisible by\n // 8, then 'BITS % 8' padding bits are added to the _bottom_ of the\n // _last_ byte of the array\n\n // The short words are written from the top of the zero-th byte of\n // the array to the bottom of the last byte of the array, with the\n // high bits of the short words toward the high bits of the byte.\n\n var m = self.m/*for performance*/;\n var registers = self.registers/*for performance*/;\n for(var i=0; i4), and cannot be greater than 65536 (216).\n * @returns {Number} gamma times m squared where gamma is based\n * on the value of m\n * @throws {Error} if m is less than 16\n */\nfunction cardinalityAlphaMSquared(m) {\n switch(m) {\n case 1/*2^0*/:\n case 2/*2^1*/:\n case 4/*2^2*/:\n case 8/*2^3*/:\n throw new Error(\"'m' cannot be less than 16 (\" + m + \" < 16).\");\n\n case 16/*2^4*/:\n return 0.673 * m * m;\n\n case 32/*2^5*/:\n return 0.697 * m * m;\n\n case 64/*2^6*/:\n return 0.709 * m * m;\n\n default/*>2^6*/:\n return (0.7213 / (1.0 + 1.079 / m)) * m * m;\n }\n}\n\n// ** Parsing **************************************************************\n// number of bits in a byte\nvar BITS_IN_BYTE = 8;\n\n// schema version constants\nvar SCHEMA1 = 1;\n\n// algorithm constants\nvar algorithm = {\n EMPTY: \"Empty\",\n EXPLICIT: \"Explicit\",\n SPARSE: \"Sparse\",\n FULL: \"Full\",\n UNDEFINED: \"Undefined\"\n};\n\n// schema version 1 algorithm indexes\nvar schema1 = {\n UNDEFINED : 0,\n EMPTY : 1,\n EXPLICIT : 2,\n SPARSE : 3,\n FULL : 4\n};\n\n// =========================================================================\n/**\n * Decodes an HLL encoded in the specified hexadecimal string as defined by\n * STORAGE.markdown.\n *\n * @param {String} string the string to decode\n * @returns {{hllSet: hll.HLL, version: Number, algorithm: String}}\n * set the HLL object loaded from the hex string.\n * version the schema version number.\n * algorithm the name of the encoding {@link hll.algorithm algorithm}.\n */\nfunction fromHexString (string) {\n var arrayBuffer = hexToArrayBuffer(string);\n return parseSet(arrayBuffer);\n};\n\n/**\n * @param {ByteArray} arrayBuffer an encoded HLL as defined by STORAGE.markdown.\n * @returns {{hllSet: hll.HLL, version: Number, algorithm: String}}\n * hllSet the HLL object loaded from the hex string.\n * version the schema version number.\n * algorithm the name of the encoding {@link hll.algorithm algorithm}.\n */\nvar parseSet = function(arrayBuffer) {\n // SEE: STORAGE.markdown\n\n // byte array format: V*\n var bytes = new Uint8Array(arrayBuffer);\n\n // the schema value is stored in the upper nibble of the version byte,\n // while the algorithm version is stored in the lower nibble of that byte\n var version = upperNibble(bytes[0/*V*/]),\n algorithm = lowerNibble(bytes[0/*V*/]);\n\n if(version == SCHEMA1) {\n switch(algorithm) {\n case schema1.UNDEFINED:\n return { hllSet: schema1_empty(arrayBuffer), version: version, algorithm: algorithm.UNDEFINED };\n case schema1.EMPTY:\n return { hllSet: schema1_empty(arrayBuffer), version: version, algorithm: algorithm.EMPTY };\n case schema1.EXPLICIT:\n return { hllSet: schema1_explicit(arrayBuffer), version: version, algorithm: algorithm.EXPLICIT };\n case schema1.SPARSE:\n return { hllSet: schema1_sparse(arrayBuffer), version: version, algorithm: algorithm.SPARSE };\n case schema1.FULL:\n return { hllSet: schema1_full(arrayBuffer), version: version, algorithm: algorithm.FULL };\n default:\n throw new Error(\"Unknown schema version 1 algorithm (index): \" + algorithm);\n }\n } else /*unknown*/\n throw new Error(\"Unknown schema version: \" + version);\n};\n\n// == Schema v1 ============================================================\n// @param {Number} parameterByte the parameter byte that is to be parsed\n// @returns {{ log2m: Number, registerWidth: Number }} the parsed register\n// width and log2m\nfunction schema1_parameters(parameterByte) {\n // highest 3 bits encode the value 'registerWidth - 1' and the remaining\n // 5 bits encode 'log2m'\n return { registerWidth: getBitSequenceFromByte(parameterByte, 0, 3) + 1,\n log2m: getBitSequenceFromByte(parameterByte, 3, 5) };\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'FULL'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_full(arrayBuffer) {\n // byte array format: VPCB*\n var bytes = new Uint8Array(arrayBuffer);\n\n var parameters = schema1_parameters(bytes[1/*P*/]);\n var registerWidth = parameters.registerWidth/*for convenience*/,\n log2m = parameters.log2m/*for convenience*/,\n m = 1 << log2m/*2^log2m*/;\n\n // the values are stored in 'registerWidth' bit wide ascending sequence\n var registers = [];\n var byteOffset = 3 * BITS_IN_BYTE/*VPC*/;\n for(var i=m-1; i>=0; i--) {\n registers.push(getBitSequenceValueFromByteArray(bytes, byteOffset, registerWidth));\n byteOffset += registerWidth;\n }\n\n var hllSet = new HLL(log2m, registerWidth);\n hllSet.registers = registers;\n return hllSet;\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'SPARSE'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_sparse(arrayBuffer) {\n // byte array format: VPCB*\n var bytes = new Uint8Array(arrayBuffer);\n return common_sparse(arrayBuffer, 3/*VPC*/, schema1_parameters(bytes[1/*P*/]));\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'EMPTY'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_empty(arrayBuffer) {\n var bytes = new Uint8Array(arrayBuffer);\n return common_empty(schema1_parameters(bytes[1/*P*/]));\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'EXPLICIT'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_explicit(arrayBuffer) {\n // byte array format: VPCB{8}*\n var bytes = new Uint8Array(arrayBuffer);\n return common_explicit(arrayBuffer, 3/*VPC*/, schema1_parameters(bytes[1/*P*/]));\n}\n\n// == Decoding Common ======================================================\n// @param {{ log2m: Number, registerWidth: Number }} parameters the register\n// width and log2m parameters\n// @returns {hll.HLL} a new HLL with the specified parameters\nfunction common_empty(parameters) {\n return new HLL(parameters.log2m, parameters.registerWidth);\n}\n\n// @param {ArrayBuffer} arrayBuffer array buffer encoding an 'EXPLICIT' set\n// @param {Number} offset the offset in the array buffer to the data bytes\n// @param {{ log2m: Number, registerWidth: Number }} parameters the register\n// width and log2m parameters\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction common_explicit(arrayBuffer, offset, parameters) {\n var hllSet = new HLL(parameters.log2m, parameters.registerWidth);\n\n // Each block of 8 bytes represent a signed 64-bit integer (sign bit +\n // 63 value bits). These integers are encoded as big-endian (with sign-bit\n // at highest position), and are the \"contents\" of the multiset.\n var bytes = new Uint8Array(arrayBuffer);\n var byteOffset = offset;\n while(byteOffset < bytes.length) {\n // load the tuple from the byte array at the given offset\n var value = extractLong(bytes, byteOffset);\n hllSet.addRaw(value);\n\n // move forward 8 bytes to the next value;\n byteOffset += 8/*bytes in 'long'*/;\n }\n\n return hllSet;\n}\n\n// @param {ArrayBuffer} arrayBuffer array buffer encoding an 'EXPLICIT' set\n// @param {Number} offset the offset in the byte array to the data bytes\n// @param {{ log2m: Number, registerWidth: Number }} parameters the register\n// width and log2m parameters\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction common_sparse(arrayBuffer, offset, parameters) {\n var registerWidth = parameters.registerWidth/*for convenience*/,\n log2m = parameters.log2m/*for convenience*/,\n m = 1 << log2m/*2^log2m*/;\n\n var registers = [];\n for(var i=m-1; i>=0; i--) registers.push(0/*initialize*/);\n\n // If 'BITS = registerWidth * m' is not divisible by 8, then 'BITS % 8'\n // padding bits are added to top of the first byte of the array account\n // for this padding\n var bitOffset = offset * BITS_IN_BYTE/*after offset*/;\n bitOffset += (m * registerWidth) % BITS_IN_BYTE;\n\n var bytes = new Uint8Array(arrayBuffer);\n var registerCount = Math.floor(((bytes.length - offset)/*data bytes*/ * BITS_IN_BYTE) / (log2m + registerWidth));\n for(var i=registerCount-1; i>=0; i--) {\n var key = getBitSequenceValueFromByteArray(bytes, bitOffset, log2m);\n bitOffset += log2m;\n var value = getBitSequenceValueFromByteArray(bytes, bitOffset, registerWidth);\n bitOffset += registerWidth;\n\n registers[key] = value;\n }\n\n var hllSet = new HLL(log2m, registerWidth);\n hllSet.registers = registers;\n return hllSet;\n}\n\n/**\n * @fileoverview Utility functions for manipulating bit and byte values in\n * JavaScript. In general there are a few points to remember when working with\n * JavaScript and bit operations:\n * \n */\n\n// *************************************************************************\nvar BITS_IN_BYTE = 8;\n\n// -------------------------------------------------------------------------\nvar LOWER = 0/*lower 32bits of a 'long' value*/,\n UPPER = 1/*upper 32bits of a 'long' value*/;\n\n// *************************************************************************\n/**\n * @param {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values of a 64bit value.\n * @param {Number} the number of bits to be shifted right. If negative or\n * greater than 63 then it is made positive or bounded to [0, 63]\n * @returns {Array} the specified long value shifted right by the specified\n * amount with the left-padded bits matching that of the sign bit.\n */\nfunction shiftRightLong (longValue, shift) {\n shift &= 63/*by contract*/;\n if(shift == 0) return longValue/*nothing to do*/;\n\n var upper = longValue[UPPER]/*for convenience*/;\n if(shift < 32) {\n var lower = longValue[LOWER]/*for convenience*/;\n return [ ((lower >>> shift) | (upper << (32 - shift))),\n (upper >> shift) ];\n } else { /*shift >= 32*/\n return [ (upper >> (shift - 32)),\n (upper >= 0 ? 0 : -1) ];\n }\n};\n\n/**\n * @param {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values of a 64bit value.\n * @param {Number} the number of bits to be shifted right. If negative or\n * greater than 63 then it is made positive or bounded to [0, 63]\n * @returns {Array} the specified long value shifted right by the specified\n * amount with the left-padded bits set to zero.\n */\nfunction shiftRightUnsignedLong (longValue, shift) {\n shift &= 63/*by contract*/;\n if(shift == 0) return longValue/*nothing to do*/;\n\n var upper = longValue[UPPER]/*for convenience*/;\n if(shift < 32) {\n var lower = longValue[LOWER]/*for convenience*/;\n return [ ((lower >>> shift) | (upper << (32 - shift))),\n (upper >>> shift) ];\n } else if(shift == 32)\n return [ upper, 0/*clear upper*/ ];\n else /*shift > 32*/\n return [ (upper >>> (shift - 32)), 0/*clear upper*/ ];\n};\n\n// -------------------------------------------------------------------------\n/**\n * Load a long (64bit) integer from the given byte array, starting from the\n * given byte position.\n *\n * @param {Array} bytes array of bytes, with long values packed from the 0th\n * byte in 8 byte intervals. Long values are stored big endian.\n * @param {Number} startByteIndex index into the array to the upper byte of\n * the long value\n * @returns {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values of the extracted 64bit value.\n */\nfunction extractLong (bytes, startByteIndex) {\n var lower = 0,\n upper = 0;\n\n // load 8 bytes, big endian order\n upper |= bytes[startByteIndex ] << 24;\n upper |= bytes[startByteIndex + 1] << 16;\n upper |= bytes[startByteIndex + 2] << 8;\n upper |= bytes[startByteIndex + 3];\n lower |= bytes[startByteIndex + 4] << 24;\n lower |= bytes[startByteIndex + 5] << 16;\n lower |= bytes[startByteIndex + 6] << 8;\n lower |= bytes[startByteIndex + 7];\n\n return [ lower >>> 0, upper >>> 0 ];\n};\n\n// =========================================================================\n/**\n * @param {Number} byteValue a byte\n * @returns {Number} the upper nibble (4bits) of that byte\n */\nfunction upperNibble (byteValue) {\n return byteValue >> 4;\n};\n\n/**\n * @param {Number} byteValue a byte\n * @returns {Number} the lower nibble (4bits) of that byte\n */\nfunction lowerNibble (byteValue) {\n return byteValue & 0x0F;\n};\n\n// =========================================================================\n/**\n * Decodes an array of bytes from a hex string.\n *\n * @param {String} hex string of hex digits, starts with two characters to\n * be discarded \"\\x\", \"0x\", or similar, the number of hex digits\n * must be an even number, come out to a round number of bytes\n * @returns {ArrayBuffer} an ArrayBuffer of values representing\n * the bytes encoded in the hex string\n */\n function hexToArrayBuffer (hex) {\n hex = hex.substring(2/*discard the first two characters \"0x, \\x\"*/);\n var length = hex.length / 2/*each hex digit is 4bits, or 1/2 byte*/;\n // allocate the byte array of the correct size.\n var arrayBuffer = new ArrayBuffer(length);\n var byteView = new Uint8Array(arrayBuffer);\n\n for(var i=0; istart\n * to start + length in the value\n */\nfunction getBitSequenceFromByte (byteValue, start, length) {\n return (byteValue >>> (BITS_IN_BYTE - (start + length))) &\n ((1 << length) - 1)/*mask of width 'length'*/;\n};\n\n// -------------------------------------------------------------------------\n/**\n * Retrieves the value of the integer between the given start and end bit\n * indexes from an array of bytes in big-endian order.\n *\n * @param {Array} bytes the byte array from which the number is read\n * @param {Number} start the index of the start of the bit sequence\n * @param {Number} length the length of the sequence of bits. This must be\n * less than 32.\n * @returns {Number} the value of the specified sequence of bits\n */\n// TODO: this can use some consistency clean-up\nfunction getBitSequenceValueFromByteArray (bytes, start, length) {\n // determine the start and end byte and bit indices of the requested bit sequence\n var byteStartIndex = start >>> 3/*divide by BITS_IN_BYTE*/;\n var byteEndIndex = (start + length) >>> 3/*divide by BITS_IN_BYTE*/;\n var bitStartIndex = start & 0x07/*% BITS_IN_BYTE*/;\n\n // if the value exists within a single byte, simply grab that value out of\n // the single byte\n if(byteStartIndex == byteEndIndex) return getBitSequenceFromByte(bytes[byteEndIndex], bitStartIndex, length);\n\n var bitEndIndex = (start + length) & 0x07/*% BITS_IN_BYTE*/;\n\n // iterate through the byte array from the end byte index to the start\n // byte index, accumulating the value.\n var result = 0;\n var shift = 0;\n for(var i=byteEndIndex; i>=byteStartIndex; i--) {\n var byteValue;\n if(i == byteStartIndex)\n byteValue = getBitSequenceFromByte(bytes[i], bitStartIndex, BITS_IN_BYTE - bitStartIndex);\n else if(i == byteEndIndex)\n byteValue = getBitSequenceFromByte(bytes[i], 0, bitEndIndex);\n else /*use the entire byte, if it is not the start or end bytes*/\n byteValue = bytes[i];\n\n result |= byteValue << shift;\n\n if(i == byteEndIndex)\n shift += bitEndIndex;\n else\n shift += BITS_IN_BYTE;\n }\n\n return result;\n};\n\n// =========================================================================\n// least significant bit\n// REF: http://stackoverflow.com/questions/757059/position-of-least-significant-bit-that-is-set\n// REF: http://www-graphics.stanford.edu/~seander/bithacks.html\nvar LEAST_SIGNIFICANT_BIT = [/*0-based*/\n -1, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0\n];\n/**\n * @param {Number} value a 32bit value for which the least-significant bit\n * set is desired. This cannot be null, greater than 32bits, or unspecified.\n * @returns {Number} the 0-based position of the least-significant bit set.\n */\nfunction leastSignificantBit (value) {\n if(value == 0) return -1/*by contract*/;\n if((value & 0x0000FF) != 0) return LEAST_SIGNIFICANT_BIT[( (value >>> 0) & 0xFF)] + 0;\n if((value & 0x00FFFF) != 0) return LEAST_SIGNIFICANT_BIT[( (value >>> 8) & 0xFF)] + 8;\n if((value & 0xFFFFFF) != 0) return LEAST_SIGNIFICANT_BIT[( (value >>> 16) & 0xFF)] + 16;\n return LEAST_SIGNIFICANT_BIT[( (value >>> 24) & 0xFF)] + 24;\n};\n\n// *************************************************************************\n/**\n * Creates a new mechanism for writing data into a byte array.\n * @constructor\n */\nfunction ByteWriter () {\n var self = this;\n\n var currentByte = 0;\n var bytes = [];\n var remainingBitsInByteCount = BITS_IN_BYTE;\n\n // ---------------------------------------------------------------------\n /**\n * Write bits to the tail end of the byte array writing from the upper\n * bits of each byte.\n *\n * @param {Number} value the value to add to the byte array\n * @param {Number} bitCount number of bits starting from the lower bits\n * of the value to add to the byte array, at most 32 bits\n */\n self.addBits = function(value, bitCount) {\n var remainingBitsInValueCount = bitCount;\n while(remainingBitsInValueCount > 0) {\n // the value is taken from the lower bits of 'value' but read\n // starting from the upper bit(s)\n var writeBitCount = Math.min(remainingBitsInValueCount, remainingBitsInByteCount);\n var writeValue = ((value >>> (remainingBitsInValueCount - writeBitCount)) &\n ((1 << writeBitCount) - 1)/*mask of width 'writeBitCount'*/) >>> 0;\n\n // writing starts at the upper bit(s)\n currentByte |= (writeValue << (remainingBitsInByteCount - writeBitCount));\n\n remainingBitsInValueCount -= writeBitCount;\n remainingBitsInByteCount -= writeBitCount;\n if(remainingBitsInByteCount <= 0) {\n bytes.push(currentByte);\n currentByte = 0/*clear*/;\n remainingBitsInByteCount = BITS_IN_BYTE/*reset*/;\n } /* else -- not a full byte yet */\n }\n };\n\n /**\n * @returns {Array} the bytes that have been {@link #addBits() added}\n * to this writer. Modifying this array will modify the internal\n * storage.\n */\n self.getBytes = function() {\n if(remainingBitsInByteCount < BITS_IN_BYTE) { /*bits in currentByte haven't been added to bytes yet*/\n var copyBytes = bytes.slice(0)/*clone*/;\n copyBytes.push(currentByte);\n return copyBytes;\n } else/*no addition bits have been added*/\n return bytes;\n };\n};\n","/**\n * @license React\n * react-is.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 b=Symbol.for(\"react.element\"),c=Symbol.for(\"react.portal\"),d=Symbol.for(\"react.fragment\"),e=Symbol.for(\"react.strict_mode\"),f=Symbol.for(\"react.profiler\"),g=Symbol.for(\"react.provider\"),h=Symbol.for(\"react.context\"),k=Symbol.for(\"react.server_context\"),l=Symbol.for(\"react.forward_ref\"),m=Symbol.for(\"react.suspense\"),n=Symbol.for(\"react.suspense_list\"),p=Symbol.for(\"react.memo\"),q=Symbol.for(\"react.lazy\"),t=Symbol.for(\"react.offscreen\"),u;u=Symbol.for(\"react.module.reference\");\nfunction v(a){if(\"object\"===typeof a&&null!==a){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}exports.ContextConsumer=h;exports.ContextProvider=g;exports.Element=b;exports.ForwardRef=l;exports.Fragment=d;exports.Lazy=q;exports.Memo=p;exports.Portal=c;exports.Profiler=f;exports.StrictMode=e;exports.Suspense=m;\nexports.SuspenseList=n;exports.isAsyncMode=function(){return!1};exports.isConcurrentMode=function(){return!1};exports.isContextConsumer=function(a){return v(a)===h};exports.isContextProvider=function(a){return v(a)===g};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===b};exports.isForwardRef=function(a){return v(a)===l};exports.isFragment=function(a){return v(a)===d};exports.isLazy=function(a){return v(a)===q};exports.isMemo=function(a){return v(a)===p};\nexports.isPortal=function(a){return v(a)===c};exports.isProfiler=function(a){return v(a)===f};exports.isStrictMode=function(a){return v(a)===e};exports.isSuspense=function(a){return v(a)===m};exports.isSuspenseList=function(a){return v(a)===n};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===d||a===f||a===e||a===m||a===n||a===t||\"object\"===typeof a&&null!==a&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||void 0!==a.getModuleId)?!0:!1};exports.typeOf=v;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = setRef;\n/**\n * TODO v5: consider making it private\n *\n * passes {value} to {ref}\n *\n * WARNING: Be sure to only call this inside a callback that is passed as a ref.\n * Otherwise, make sure to cleanup the previous {ref} if it changes. See\n * https://github.com/mui/material-ui/issues/13539\n *\n * Useful if you want to expose the ref of an inner component to the public API\n * while still using it inside the component.\n * @param ref A ref callback or ref object. If anything falsy, this is a no-op.\n */\nfunction setRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref) {\n ref.current = value;\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useControlled;\nvar React = _interopRequireWildcard(require(\"react\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n/* eslint-disable react-hooks/rules-of-hooks, react-hooks/exhaustive-deps */\n\nfunction useControlled({\n controlled,\n default: defaultProp,\n name,\n state = 'value'\n}) {\n // isControlled is ignored in the hook dependency lists as it should never change.\n const {\n current: isControlled\n } = React.useRef(controlled !== undefined);\n const [valueState, setValue] = React.useState(defaultProp);\n const value = isControlled ? controlled : valueState;\n if (process.env.NODE_ENV !== 'production') {\n React.useEffect(() => {\n if (isControlled !== (controlled !== undefined)) {\n console.error([`MUI: A component is changing the ${isControlled ? '' : 'un'}controlled ${state} state of ${name} to be ${isControlled ? 'un' : ''}controlled.`, 'Elements should not switch from uncontrolled to controlled (or vice versa).', `Decide between using a controlled or uncontrolled ${name} ` + 'element for the lifetime of the component.', \"The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.\", 'More info: https://fb.me/react-controlled-components'].join('\\n'));\n }\n }, [state, name, controlled]);\n const {\n current: defaultValue\n } = React.useRef(defaultProp);\n React.useEffect(() => {\n if (!isControlled && defaultValue !== defaultProp) {\n console.error([`MUI: A component is changing the default ${state} state of an uncontrolled ${name} after being initialized. ` + `To suppress this warning opt to use a controlled ${name}.`].join('\\n'));\n }\n }, [JSON.stringify(defaultProp)]);\n }\n const setValueIfUncontrolled = React.useCallback(newValue => {\n if (!isControlled) {\n setValue(newValue);\n }\n }, []);\n return [value, setValueIfUncontrolled];\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar React = _interopRequireWildcard(require(\"react\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nconst useEnhancedEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar _default = useEnhancedEffect;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useEventCallback;\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _useEnhancedEffect = _interopRequireDefault(require(\"./useEnhancedEffect\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n/**\n * https://github.com/facebook/react/issues/14099#issuecomment-440013892\n */\nfunction useEventCallback(fn) {\n const ref = React.useRef(fn);\n (0, _useEnhancedEffect.default)(() => {\n ref.current = fn;\n });\n return React.useCallback((...args) =>\n // @ts-expect-error hide `this`\n // tslint:disable-next-line:ban-comma-operator\n (0, ref.current)(...args), []);\n}","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useForkRef;\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _setRef = _interopRequireDefault(require(\"./setRef\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction useForkRef(...refs) {\n /**\n * This will create a new function if the refs passed to this hook change and are all defined.\n * This means react will call the old forkRef with `null` and the new forkRef\n * with the ref. Cleanup naturally emerges from this behavior.\n */\n return React.useMemo(() => {\n if (refs.every(ref => ref == null)) {\n return null;\n }\n return instance => {\n refs.forEach(ref => {\n (0, _setRef.default)(ref, instance);\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useId;\nvar React = _interopRequireWildcard(require(\"react\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nlet globalId = 0;\nfunction useGlobalId(idOverride) {\n const [defaultId, setDefaultId] = React.useState(idOverride);\n const id = idOverride || defaultId;\n React.useEffect(() => {\n if (defaultId == null) {\n // Fallback to this default id when possible.\n // Use the incrementing value for client-side rendering only.\n // We can't use it server-side.\n // If you want to use random values please consider the Birthday Problem: https://en.wikipedia.org/wiki/Birthday_problem\n globalId += 1;\n setDefaultId(`mui-${globalId}`);\n }\n }, [defaultId]);\n return id;\n}\n\n// downstream bundlers may remove unnecessary concatenation, but won't remove toString call -- Workaround for https://github.com/webpack/webpack/issues/14814\nconst maybeReactUseId = React['useId'.toString()];\n/**\n *\n * @example
\n * @param idOverride\n * @returns {string}\n */\nfunction useId(idOverride) {\n if (maybeReactUseId !== undefined) {\n const reactId = maybeReactUseId();\n return idOverride != null ? idOverride : reactId;\n }\n // eslint-disable-next-line react-hooks/rules-of-hooks -- `React.useId` is invariant at runtime.\n return useGlobalId(idOverride);\n}","var countryISOMapping = {\n AF: 'AFG',\n AX: 'ALA',\n AL: 'ALB',\n DZ: 'DZA',\n AS: 'ASM',\n AD: 'AND',\n AO: 'AGO',\n AI: 'AIA',\n AQ: 'ATA',\n AG: 'ATG',\n AR: 'ARG',\n AM: 'ARM',\n AW: 'ABW',\n AU: 'AUS',\n AT: 'AUT',\n AZ: 'AZE',\n BS: 'BHS',\n BH: 'BHR',\n BD: 'BGD',\n BB: 'BRB',\n BY: 'BLR',\n BE: 'BEL',\n BZ: 'BLZ',\n BJ: 'BEN',\n BM: 'BMU',\n BT: 'BTN',\n BO: 'BOL',\n BA: 'BIH',\n BW: 'BWA',\n BV: 'BVT',\n BR: 'BRA',\n VG: 'VGB',\n IO: 'IOT',\n BN: 'BRN',\n BG: 'BGR',\n BF: 'BFA',\n BI: 'BDI',\n KH: 'KHM',\n CM: 'CMR',\n CA: 'CAN',\n CV: 'CPV',\n KY: 'CYM',\n CF: 'CAF',\n TD: 'TCD',\n CL: 'CHL',\n CN: 'CHN',\n HK: 'HKG',\n MO: 'MAC',\n CX: 'CXR',\n CC: 'CCK',\n CO: 'COL',\n KM: 'COM',\n CG: 'COG',\n CD: 'COD',\n CK: 'COK',\n CR: 'CRI',\n CI: 'CIV',\n HR: 'HRV',\n CU: 'CUB',\n CY: 'CYP',\n CZ: 'CZE',\n DK: 'DNK',\n DJ: 'DJI',\n DM: 'DMA',\n DO: 'DOM',\n EC: 'ECU',\n EG: 'EGY',\n SV: 'SLV',\n GQ: 'GNQ',\n ER: 'ERI',\n EE: 'EST',\n ET: 'ETH',\n FK: 'FLK',\n FO: 'FRO',\n FJ: 'FJI',\n FI: 'FIN',\n FR: 'FRA',\n GF: 'GUF',\n PF: 'PYF',\n TF: 'ATF',\n GA: 'GAB',\n GM: 'GMB',\n GE: 'GEO',\n DE: 'DEU',\n GH: 'GHA',\n GI: 'GIB',\n GR: 'GRC',\n GL: 'GRL',\n GD: 'GRD',\n GP: 'GLP',\n GU: 'GUM',\n GT: 'GTM',\n GG: 'GGY',\n GN: 'GIN',\n GW: 'GNB',\n GY: 'GUY',\n HT: 'HTI',\n HM: 'HMD',\n VA: 'VAT',\n HN: 'HND',\n HU: 'HUN',\n IS: 'ISL',\n IN: 'IND',\n ID: 'IDN',\n IR: 'IRN',\n IQ: 'IRQ',\n IE: 'IRL',\n IM: 'IMN',\n IL: 'ISR',\n IT: 'ITA',\n JM: 'JAM',\n JP: 'JPN',\n JE: 'JEY',\n JO: 'JOR',\n KZ: 'KAZ',\n KE: 'KEN',\n KI: 'KIR',\n KP: 'PRK',\n KR: 'KOR',\n KW: 'KWT',\n KG: 'KGZ',\n LA: 'LAO',\n LV: 'LVA',\n LB: 'LBN',\n LS: 'LSO',\n LR: 'LBR',\n LY: 'LBY',\n LI: 'LIE',\n LT: 'LTU',\n LU: 'LUX',\n MK: 'MKD',\n MG: 'MDG',\n MW: 'MWI',\n MY: 'MYS',\n MV: 'MDV',\n ML: 'MLI',\n MT: 'MLT',\n MH: 'MHL',\n MQ: 'MTQ',\n MR: 'MRT',\n MU: 'MUS',\n YT: 'MYT',\n MX: 'MEX',\n FM: 'FSM',\n MD: 'MDA',\n MC: 'MCO',\n MN: 'MNG',\n ME: 'MNE',\n MS: 'MSR',\n MA: 'MAR',\n MZ: 'MOZ',\n MM: 'MMR',\n NA: 'NAM',\n NR: 'NRU',\n NP: 'NPL',\n NL: 'NLD',\n AN: 'ANT',\n NC: 'NCL',\n NZ: 'NZL',\n NI: 'NIC',\n NE: 'NER',\n NG: 'NGA',\n NU: 'NIU',\n NF: 'NFK',\n MP: 'MNP',\n NO: 'NOR',\n OM: 'OMN',\n PK: 'PAK',\n PW: 'PLW',\n PS: 'PSE',\n PA: 'PAN',\n PG: 'PNG',\n PY: 'PRY',\n PE: 'PER',\n PH: 'PHL',\n PN: 'PCN',\n PL: 'POL',\n PT: 'PRT',\n PR: 'PRI',\n QA: 'QAT',\n RE: 'REU',\n RO: 'ROU',\n RU: 'RUS',\n RW: 'RWA',\n BL: 'BLM',\n SH: 'SHN',\n KN: 'KNA',\n LC: 'LCA',\n MF: 'MAF',\n PM: 'SPM',\n VC: 'VCT',\n WS: 'WSM',\n SM: 'SMR',\n ST: 'STP',\n SA: 'SAU',\n SN: 'SEN',\n RS: 'SRB',\n SC: 'SYC',\n SL: 'SLE',\n SG: 'SGP',\n SK: 'SVK',\n SI: 'SVN',\n SB: 'SLB',\n SO: 'SOM',\n ZA: 'ZAF',\n GS: 'SGS',\n SS: 'SSD',\n ES: 'ESP',\n LK: 'LKA',\n SD: 'SDN',\n SR: 'SUR',\n SJ: 'SJM',\n SZ: 'SWZ',\n SE: 'SWE',\n CH: 'CHE',\n SY: 'SYR',\n TW: 'TWN',\n TJ: 'TJK',\n TZ: 'TZA',\n TH: 'THA',\n TL: 'TLS',\n TG: 'TGO',\n TK: 'TKL',\n TO: 'TON',\n TT: 'TTO',\n TN: 'TUN',\n TR: 'TUR',\n TM: 'TKM',\n TC: 'TCA',\n TV: 'TUV',\n UG: 'UGA',\n UA: 'UKR',\n AE: 'ARE',\n GB: 'GBR',\n US: 'USA',\n UM: 'UMI',\n UY: 'URY',\n UZ: 'UZB',\n VU: 'VUT',\n VE: 'VEN',\n VN: 'VNM',\n VI: 'VIR',\n WF: 'WLF',\n EH: 'ESH',\n YE: 'YEM',\n ZM: 'ZMB',\n ZW: 'ZWE',\n XK: 'XKX'\n}\n\nmodule.exports = function getCountryISO3(countryCode) {\n return countryISOMapping[countryCode]\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",f=\"month\",h=\"quarter\",c=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},w=function(t,e){if(p(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=v;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t)}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return O},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t)68?1900:2e3)};var a=function(e){return function(t){this[e]=+t}},f=[/[+-]\\d\\d:?(\\d\\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if(\"Z\"===e)return 0;var t=e.match(/([+-]|\\d\\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:\"+\"===t[0]?-n:n}(e)}],h=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?\"pm\":\"PM\");return n},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\\d/,function(e){this.milliseconds=100*+e}],SS:[n,function(e){this.milliseconds=10*+e}],SSS:[/\\d{3}/,function(e){this.milliseconds=+e}],s:[r,a(\"seconds\")],ss:[r,a(\"seconds\")],m:[r,a(\"minutes\")],mm:[r,a(\"minutes\")],H:[r,a(\"hours\")],h:[r,a(\"hours\")],HH:[r,a(\"hours\")],hh:[r,a(\"hours\")],D:[r,a(\"day\")],DD:[n,a(\"day\")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\\[|\\]/g,\"\")===e&&(this.day=r)}],M:[r,a(\"month\")],MM:[n,a(\"month\")],MMM:[i,function(e){var t=h(\"months\"),n=(h(\"monthsShort\")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(e){var t=h(\"months\").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\\d+/,a(\"year\")],YY:[n,function(e){this.year=s(e)}],YYYY:[/\\d{4}/,a(\"year\")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=s.length,f=0;f-1)return new Date((\"X\"===t?1e3:1)*e);var r=c(t)(e),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,h=r.seconds,u=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=h||0,g=u||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(e){return new Date(\"\")}}(t,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date(\"\")),o={}}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(\"\"))}else i.call(this,e)}}}));","!function(e,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isBetween=i()}(this,(function(){\"use strict\";return function(e,i,t){i.prototype.isBetween=function(e,i,s,f){var n=t(e),o=t(i),r=\"(\"===(f=f||\"()\")[0],u=\")\"===f[1];return(r?this.isAfter(n,s):!this.isBefore(n,s))&&(u?this.isBefore(o,s):!this.isAfter(o,s))||(r?this.isBefore(n,s):!this.isAfter(n,s))&&(u?this.isAfter(o,s):!this.isBefore(o,s))}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_localizedFormat=t()}(this,(function(){\"use strict\";var e={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\"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t=\"YYYY-MM-DDTHH:mm:ssZ\");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_weekOfYear=t()}(this,(function(){\"use strict\";var e=\"week\",t=\"year\";return function(i,n,r){var f=n.prototype;f.week=function(i){if(void 0===i&&(i=null),null!==i)return this.add(7*(i-this.week()),\"day\");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,\"millisecond\"),o=this.diff(a,e,!0);return o<0?r(this).startOf(\"week\").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}));","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.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'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\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>>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","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}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","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}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","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}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\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}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// 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\t// no module.id needed\n\t\t// no module.loaded needed\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// 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};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\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 + \".\" + \"c8b1fb18\" + \".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__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"statsboard:\";\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__.p = \"/statsboard/\";","__webpack_require__.b = document.baseURI || self.location.href;\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[\"webpackChunkstatsboard\"] = self[\"webpackChunkstatsboard\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","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\";\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}","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\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}","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}","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}","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t {\n if (propName.toString().match(/^(components|slots)$/)) {\n output[propName] = {\n ...defaultProps[propName],\n ...output[propName]\n };\n } else if (propName.toString().match(/^(componentsProps|slotProps)$/)) {\n const defaultSlotProps = defaultProps[propName] || {};\n const slotProps = props[propName];\n output[propName] = {};\n if (!slotProps || !Object.keys(slotProps)) {\n // Reduce the iteration if the slot props is empty\n output[propName] = defaultSlotProps;\n } else if (!defaultSlotProps || !Object.keys(defaultSlotProps)) {\n // Reduce the iteration if the default slot props is empty\n output[propName] = slotProps;\n } else {\n output[propName] = {\n ...slotProps\n };\n Object.keys(defaultSlotProps).forEach(slotPropName => {\n output[propName][slotPropName] = resolveProps(defaultSlotProps[slotPropName], slotProps[slotPropName]);\n });\n }\n } else if (output[propName] === undefined) {\n output[propName] = defaultProps[propName];\n }\n });\n return output;\n}","export default function composeClasses(slots, getUtilityClass, classes = undefined) {\n const output = {};\n Object.keys(slots).forEach(\n // `Objet.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.\n // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208\n slot => {\n output[slot] = slots[slot].reduce((acc, key) => {\n if (key) {\n const utilityClass = getUtilityClass(key);\n if (utilityClass !== '') {\n acc.push(utilityClass);\n }\n if (classes && classes[key]) {\n acc.push(classes[key]);\n }\n }\n return acc;\n }, []).join(' ');\n });\n return output;\n}","/**\n * WARNING: Don't import this directly.\n * Use `MuiError` from `@mui/utils/macros/MuiError.macro` instead.\n * @param {number} code\n */\nexport default function formatMuiErrorMessage(code) {\n // Apply babel-plugin-transform-template-literals in loose mode\n // loose mode is safe iff we're concatenating primitives\n // see https://babeljs.io/docs/en/babel-plugin-transform-template-literals#loose\n /* eslint-disable prefer-template */\n let url = 'https://mui.com/production-error/?code=' + code;\n for (let i = 1; i < arguments.length; i += 1) {\n // rest params over-transpile for this case\n // eslint-disable-next-line prefer-rest-params\n url += '&args[]=' + encodeURIComponent(arguments[i]);\n }\n return 'Minified MUI error #' + code + '; visit ' + url + ' for the full message.';\n /* eslint-enable prefer-template */\n}","import { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\n/* eslint-disable @typescript-eslint/naming-convention */\n/**\n * Returns a number whose value is limited to the given range.\n * @param {number} value The value to be clamped\n * @param {number} min The lower boundary of the output range\n * @param {number} max The upper boundary of the output range\n * @returns {number} A number in the range [min, max]\n */\nfunction clamp(value, min = 0, max = 1) {\n if (process.env.NODE_ENV !== 'production') {\n if (value < min || value > max) {\n console.error(`MUI: The value provided ${value} is out of range [${min}, ${max}].`);\n }\n }\n return Math.min(Math.max(min, value), max);\n}\n\n/**\n * Converts a color from CSS hex format to CSS rgb format.\n * @param {string} color - Hex color, i.e. #nnn or #nnnnnn\n * @returns {string} A CSS rgb color string\n */\nexport function hexToRgb(color) {\n color = color.slice(1);\n const re = new RegExp(`.{1,${color.length >= 6 ? 2 : 1}}`, 'g');\n let colors = color.match(re);\n if (colors && colors[0].length === 1) {\n colors = colors.map(n => n + n);\n }\n return colors ? `rgb${colors.length === 4 ? 'a' : ''}(${colors.map((n, index) => {\n return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;\n }).join(', ')})` : '';\n}\nfunction intToHex(int) {\n const hex = int.toString(16);\n return hex.length === 1 ? `0${hex}` : hex;\n}\n\n/**\n * Returns an object with the type and values of a color.\n *\n * Note: Does not support rgb % values.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {object} - A MUI color object: {type: string, values: number[]}\n */\nexport function decomposeColor(color) {\n // Idempotent\n if (color.type) {\n return color;\n }\n if (color.charAt(0) === '#') {\n return decomposeColor(hexToRgb(color));\n }\n const marker = color.indexOf('(');\n const type = color.substring(0, marker);\n if (['rgb', 'rgba', 'hsl', 'hsla', 'color'].indexOf(type) === -1) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: Unsupported \\`${color}\\` color.\nThe following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().` : _formatMuiErrorMessage(9, color));\n }\n let values = color.substring(marker + 1, color.length - 1);\n let colorSpace;\n if (type === 'color') {\n values = values.split(' ');\n colorSpace = values.shift();\n if (values.length === 4 && values[3].charAt(0) === '/') {\n values[3] = values[3].slice(1);\n }\n if (['srgb', 'display-p3', 'a98-rgb', 'prophoto-rgb', 'rec-2020'].indexOf(colorSpace) === -1) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: unsupported \\`${colorSpace}\\` color space.\nThe following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.` : _formatMuiErrorMessage(10, colorSpace));\n }\n } else {\n values = values.split(',');\n }\n values = values.map(value => parseFloat(value));\n return {\n type,\n values,\n colorSpace\n };\n}\n\n/**\n * Returns a channel created from the input color.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {string} - The channel for the color, that can be used in rgba or hsla colors\n */\nexport const colorChannel = color => {\n const decomposedColor = decomposeColor(color);\n return decomposedColor.values.slice(0, 3).map((val, idx) => decomposedColor.type.indexOf('hsl') !== -1 && idx !== 0 ? `${val}%` : val).join(' ');\n};\nexport const private_safeColorChannel = (color, warning) => {\n try {\n return colorChannel(color);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n};\n\n/**\n * Converts a color object with type and values to a string.\n * @param {object} color - Decomposed color\n * @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla', 'color'\n * @param {array} color.values - [n,n,n] or [n,n,n,n]\n * @returns {string} A CSS color string\n */\nexport function recomposeColor(color) {\n const {\n type,\n colorSpace\n } = color;\n let {\n values\n } = color;\n if (type.indexOf('rgb') !== -1) {\n // Only convert the first 3 values to int (i.e. not alpha)\n values = values.map((n, i) => i < 3 ? parseInt(n, 10) : n);\n } else if (type.indexOf('hsl') !== -1) {\n values[1] = `${values[1]}%`;\n values[2] = `${values[2]}%`;\n }\n if (type.indexOf('color') !== -1) {\n values = `${colorSpace} ${values.join(' ')}`;\n } else {\n values = `${values.join(', ')}`;\n }\n return `${type}(${values})`;\n}\n\n/**\n * Converts a color from CSS rgb format to CSS hex format.\n * @param {string} color - RGB color, i.e. rgb(n, n, n)\n * @returns {string} A CSS rgb color string, i.e. #nnnnnn\n */\nexport function rgbToHex(color) {\n // Idempotent\n if (color.indexOf('#') === 0) {\n return color;\n }\n const {\n values\n } = decomposeColor(color);\n return `#${values.map((n, i) => intToHex(i === 3 ? Math.round(255 * n) : n)).join('')}`;\n}\n\n/**\n * Converts a color from hsl format to rgb format.\n * @param {string} color - HSL color values\n * @returns {string} rgb color values\n */\nexport function hslToRgb(color) {\n color = decomposeColor(color);\n const {\n values\n } = color;\n const h = values[0];\n const s = values[1] / 100;\n const l = values[2] / 100;\n const a = s * Math.min(l, 1 - l);\n const f = (n, k = (n + h / 30) % 12) => l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n let type = 'rgb';\n const rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)];\n if (color.type === 'hsla') {\n type += 'a';\n rgb.push(values[3]);\n }\n return recomposeColor({\n type,\n values: rgb\n });\n}\n/**\n * The relative brightness of any point in a color space,\n * normalized to 0 for darkest black and 1 for lightest white.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {number} The relative brightness of the color in the range 0 - 1\n */\nexport function getLuminance(color) {\n color = decomposeColor(color);\n let rgb = color.type === 'hsl' || color.type === 'hsla' ? decomposeColor(hslToRgb(color)).values : color.values;\n rgb = rgb.map(val => {\n if (color.type !== 'color') {\n val /= 255; // normalized\n }\n\n return val <= 0.03928 ? val / 12.92 : ((val + 0.055) / 1.055) ** 2.4;\n });\n\n // Truncate at 3 digits\n return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3));\n}\n\n/**\n * Calculates the contrast ratio between two colors.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n * @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @returns {number} A contrast ratio value in the range 0 - 21.\n */\nexport function getContrastRatio(foreground, background) {\n const lumA = getLuminance(foreground);\n const lumB = getLuminance(background);\n return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05);\n}\n\n/**\n * Sets the absolute transparency of a color.\n * Any existing alpha values are overwritten.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} value - value to set the alpha channel to in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function alpha(color, value) {\n color = decomposeColor(color);\n value = clamp(value);\n if (color.type === 'rgb' || color.type === 'hsl') {\n color.type += 'a';\n }\n if (color.type === 'color') {\n color.values[3] = `/${value}`;\n } else {\n color.values[3] = value;\n }\n return recomposeColor(color);\n}\nexport function private_safeAlpha(color, value, warning) {\n try {\n return alpha(color, value);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Darkens a color.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function darken(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clamp(coefficient);\n if (color.type.indexOf('hsl') !== -1) {\n color.values[2] *= 1 - coefficient;\n } else if (color.type.indexOf('rgb') !== -1 || color.type.indexOf('color') !== -1) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] *= 1 - coefficient;\n }\n }\n return recomposeColor(color);\n}\nexport function private_safeDarken(color, coefficient, warning) {\n try {\n return darken(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Lightens a color.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function lighten(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clamp(coefficient);\n if (color.type.indexOf('hsl') !== -1) {\n color.values[2] += (100 - color.values[2]) * coefficient;\n } else if (color.type.indexOf('rgb') !== -1) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] += (255 - color.values[i]) * coefficient;\n }\n } else if (color.type.indexOf('color') !== -1) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] += (1 - color.values[i]) * coefficient;\n }\n }\n return recomposeColor(color);\n}\nexport function private_safeLighten(color, coefficient, warning) {\n try {\n return lighten(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Darken or lighten a color, depending on its luminance.\n * Light colors are darkened, dark colors are lightened.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient=0.15 - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function emphasize(color, coefficient = 0.15) {\n return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient);\n}\nexport function private_safeEmphasize(color, coefficient, warning) {\n try {\n return private_safeEmphasize(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\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}","function memoize(fn) {\n var cache = Object.create(null);\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport { memoize as default };\n","import memoize from '@emotion/memoize';\n\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport { isPropValid as default };\n","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n","import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\nexport var LAYER = '@layer'\n","import {IMPORT, LAYER, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase LAYER: if (element.children.length) break\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f') != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset: if (ampersand == -1) characters = replace(characters, /\\f/g, '')\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d l m s\n\t\t\t\t\t\t\t\t\tcase 100: case 108: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import {MS, MOZ, WEBKIT, RULESET, KEYFRAMES, DECLARATION} from './Enum.js'\nimport {match, charat, substr, strlen, sizeof, replace, combine} from './Utility.js'\nimport {copy, tokenize} from './Tokenizer.js'\nimport {serialize} from './Serializer.js'\nimport {prefix} from './Prefixer.js'\n\n/**\n * @param {function[]} collection\n * @return {function}\n */\nexport function middleware (collection) {\n\tvar length = sizeof(collection)\n\n\treturn function (element, index, children, callback) {\n\t\tvar output = ''\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t\toutput += collection[i](element, index, children, callback) || ''\n\n\t\treturn output\n\t}\n}\n\n/**\n * @param {function} callback\n * @return {function}\n */\nexport function rulesheet (callback) {\n\treturn function (element) {\n\t\tif (!element.root)\n\t\t\tif (element = element.return)\n\t\t\t\tcallback(element)\n\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n */\nexport function prefixer (element, index, children, callback) {\n\tif (element.length > -1)\n\t\tif (!element.return)\n\t\t\tswitch (element.type) {\n\t\t\t\tcase DECLARATION: element.return = prefix(element.value, element.length, children)\n\t\t\t\t\treturn\n\t\t\t\tcase KEYFRAMES:\n\t\t\t\t\treturn serialize([copy(element, {value: replace(element.value, '@', '@' + WEBKIT)})], callback)\n\t\t\t\tcase RULESET:\n\t\t\t\t\tif (element.length)\n\t\t\t\t\t\treturn combine(element.props, function (value) {\n\t\t\t\t\t\t\tswitch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n\t\t\t\t\t\t\t\t// :read-(only|write)\n\t\t\t\t\t\t\t\tcase ':read-only': case ':read-write':\n\t\t\t\t\t\t\t\t\treturn serialize([copy(element, {props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]})], callback)\n\t\t\t\t\t\t\t\t// :placeholder\n\t\t\t\t\t\t\t\tcase '::placeholder':\n\t\t\t\t\t\t\t\t\treturn serialize([\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]})\n\t\t\t\t\t\t\t\t\t], callback)\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn ''\n\t\t\t\t\t\t})\n\t\t\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n */\nexport function namespace (element) {\n\tswitch (element.type) {\n\t\tcase RULESET:\n\t\t\telement.props = element.props.map(function (value) {\n\t\t\t\treturn combine(tokenize(value), function (value, index, children) {\n\t\t\t\t\tswitch (charat(value, 0)) {\n\t\t\t\t\t\t// \\f\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\t\treturn substr(value, 1, strlen(value))\n\t\t\t\t\t\t// \\0 ( + > ~\n\t\t\t\t\t\tcase 0: case 40: case 43: case 62: case 126:\n\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t// :\n\t\t\t\t\t\tcase 58:\n\t\t\t\t\t\t\tif (children[++index] === 'global')\n\t\t\t\t\t\t\t\tchildren[index] = '', children[++index] = '\\f' + substr(children[index], index = 1, -1)\n\t\t\t\t\t\t// \\s\n\t\t\t\t\t\tcase 32:\n\t\t\t\t\t\t\treturn index === 1 ? '' : value\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tswitch (index) {\n\t\t\t\t\t\t\t\tcase 0: element = value\n\t\t\t\t\t\t\t\t\treturn sizeof(children) > 1 ? '' : value\n\t\t\t\t\t\t\t\tcase index = sizeof(children) - 1: case 2:\n\t\t\t\t\t\t\t\t\treturn index === 2 ? value + element + element : value + element\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t}\n}\n","var unitlessKeys = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport { unitlessKeys as default };\n","import hashString from '@emotion/hash';\nimport unitless from '@emotion/unitless';\nimport memoize from '@emotion/memoize';\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\nvar UNDEFINED_AS_OBJECT_KEY_ERROR = \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\";\nvar hyphenateRegex = /[A-Z]|^ms/g;\nvar animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;\n\nvar isCustomProperty = function isCustomProperty(property) {\n return property.charCodeAt(1) === 45;\n};\n\nvar isProcessableValue = function isProcessableValue(value) {\n return value != null && typeof value !== 'boolean';\n};\n\nvar processStyleName = /* #__PURE__ */memoize(function (styleName) {\n return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();\n});\n\nvar processStyleValue = function processStyleValue(key, value) {\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n if (typeof value === 'string') {\n return value.replace(animationRegex, function (match, p1, p2) {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n };\n return p1;\n });\n }\n }\n }\n\n if (unitless[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {\n return value + 'px';\n }\n\n return value;\n};\n\nif (process.env.NODE_ENV !== 'production') {\n var contentValuePattern = /(var|attr|counters?|url|element|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n var contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n var oldProcessStyleValue = processStyleValue;\n var msPattern = /^-ms-/;\n var hyphenPattern = /-(.)/g;\n var hyphenatedCache = {};\n\n processStyleValue = function processStyleValue(key, value) {\n if (key === 'content') {\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n throw new Error(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\" + value + \"\\\"'`\");\n }\n }\n\n var processed = oldProcessStyleValue(key, value);\n\n if (processed !== '' && !isCustomProperty(key) && key.indexOf('-') !== -1 && hyphenatedCache[key] === undefined) {\n hyphenatedCache[key] = true;\n console.error(\"Using kebab-case for css properties in objects is not supported. Did you mean \" + key.replace(msPattern, 'ms-').replace(hyphenPattern, function (str, _char) {\n return _char.toUpperCase();\n }) + \"?\");\n }\n\n return processed;\n };\n}\n\nvar noComponentSelectorMessage = 'Component selectors can only be used in conjunction with ' + '@emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware ' + 'compiler transform.';\n\nfunction handleInterpolation(mergedProps, registered, interpolation) {\n if (interpolation == null) {\n return '';\n }\n\n if (interpolation.__emotion_styles !== undefined) {\n if (process.env.NODE_ENV !== 'production' && interpolation.toString() === 'NO_COMPONENT_SELECTOR') {\n throw new Error(noComponentSelectorMessage);\n }\n\n return interpolation;\n }\n\n switch (typeof interpolation) {\n case 'boolean':\n {\n return '';\n }\n\n case 'object':\n {\n if (interpolation.anim === 1) {\n cursor = {\n name: interpolation.name,\n styles: interpolation.styles,\n next: cursor\n };\n return interpolation.name;\n }\n\n if (interpolation.styles !== undefined) {\n var next = interpolation.next;\n\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n };\n next = next.next;\n }\n }\n\n var styles = interpolation.styles + \";\";\n\n if (process.env.NODE_ENV !== 'production' && interpolation.map !== undefined) {\n styles += interpolation.map;\n }\n\n return styles;\n }\n\n return createStringFromObject(mergedProps, registered, interpolation);\n }\n\n case 'function':\n {\n if (mergedProps !== undefined) {\n var previousCursor = cursor;\n var result = interpolation(mergedProps);\n cursor = previousCursor;\n return handleInterpolation(mergedProps, registered, result);\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('Functions that are interpolated in css calls will be stringified.\\n' + 'If you want to have a css call based on props, create a function that returns a css call like this\\n' + 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' + 'It can be called directly with props or interpolated in a styled call like this\\n' + \"let SomeComponent = styled('div')`${dynamicStyle}`\");\n }\n\n break;\n }\n\n case 'string':\n if (process.env.NODE_ENV !== 'production') {\n var matched = [];\n var replaced = interpolation.replace(animationRegex, function (match, p1, p2) {\n var fakeVarName = \"animation\" + matched.length;\n matched.push(\"const \" + fakeVarName + \" = keyframes`\" + p2.replace(/^@keyframes animation-\\w+/, '') + \"`\");\n return \"${\" + fakeVarName + \"}\";\n });\n\n if (matched.length) {\n console.error('`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\n' + 'Instead of doing this:\\n\\n' + [].concat(matched, [\"`\" + replaced + \"`\"]).join('\\n') + '\\n\\nYou should wrap it with `css` like this:\\n\\n' + (\"css`\" + replaced + \"`\"));\n }\n }\n\n break;\n } // finalize string values (regular strings and functions interpolated into css calls)\n\n\n if (registered == null) {\n return interpolation;\n }\n\n var cached = registered[interpolation];\n return cached !== undefined ? cached : interpolation;\n}\n\nfunction createStringFromObject(mergedProps, registered, obj) {\n var string = '';\n\n if (Array.isArray(obj)) {\n for (var i = 0; i < obj.length; i++) {\n string += handleInterpolation(mergedProps, registered, obj[i]) + \";\";\n }\n } else {\n for (var _key in obj) {\n var value = obj[_key];\n\n if (typeof value !== 'object') {\n if (registered != null && registered[value] !== undefined) {\n string += _key + \"{\" + registered[value] + \"}\";\n } else if (isProcessableValue(value)) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value) + \";\";\n }\n } else {\n if (_key === 'NO_COMPONENT_SELECTOR' && process.env.NODE_ENV !== 'production') {\n throw new Error(noComponentSelectorMessage);\n }\n\n if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {\n for (var _i = 0; _i < value.length; _i++) {\n if (isProcessableValue(value[_i])) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value[_i]) + \";\";\n }\n }\n } else {\n var interpolated = handleInterpolation(mergedProps, registered, value);\n\n switch (_key) {\n case 'animation':\n case 'animationName':\n {\n string += processStyleName(_key) + \":\" + interpolated + \";\";\n break;\n }\n\n default:\n {\n if (process.env.NODE_ENV !== 'production' && _key === 'undefined') {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR);\n }\n\n string += _key + \"{\" + interpolated + \"}\";\n }\n }\n }\n }\n }\n }\n\n return string;\n}\n\nvar labelPattern = /label:\\s*([^\\s;\\n{]+)\\s*(;|$)/g;\nvar sourceMapPattern;\n\nif (process.env.NODE_ENV !== 'production') {\n sourceMapPattern = /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//g;\n} // this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\n\n\nvar cursor;\nvar serializeStyles = function serializeStyles(args, registered, mergedProps) {\n if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {\n return args[0];\n }\n\n var stringMode = true;\n var styles = '';\n cursor = undefined;\n var strings = args[0];\n\n if (strings == null || strings.raw === undefined) {\n stringMode = false;\n styles += handleInterpolation(mergedProps, registered, strings);\n } else {\n if (process.env.NODE_ENV !== 'production' && strings[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[0];\n } // we start at 1 since we've already handled the first arg\n\n\n for (var i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i]);\n\n if (stringMode) {\n if (process.env.NODE_ENV !== 'production' && strings[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[i];\n }\n }\n\n var sourceMap;\n\n if (process.env.NODE_ENV !== 'production') {\n styles = styles.replace(sourceMapPattern, function (match) {\n sourceMap = match;\n return '';\n });\n } // using a global regex with .exec is stateful so lastIndex has to be reset each time\n\n\n labelPattern.lastIndex = 0;\n var identifierName = '';\n var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName += '-' + // $FlowFixMe we know it's not null\n match[1];\n }\n\n var name = hashString(styles) + identifierName;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe SerializedStyles type doesn't have toString property (and we don't want to add it)\n return {\n name: name,\n styles: styles,\n map: sourceMap,\n next: cursor,\n toString: function toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\";\n }\n };\n }\n\n return {\n name: name,\n styles: styles,\n next: cursor\n };\n};\n\nexport { serializeStyles };\n","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport { murmur2 as default };\n","import * as React from 'react';\n\nvar syncFallback = function syncFallback(create) {\n return create();\n};\n\nvar useInsertionEffect = React['useInsertion' + 'Effect'] ? React['useInsertion' + 'Effect'] : false;\nvar useInsertionEffectAlwaysWithSyncFallback = useInsertionEffect || syncFallback;\nvar useInsertionEffectWithLayoutFallback = useInsertionEffect || React.useLayoutEffect;\n\nexport { useInsertionEffectAlwaysWithSyncFallback, useInsertionEffectWithLayoutFallback };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","var isBrowser = \"object\" !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport * as React from 'react';\nimport isPropValid from '@emotion/is-prop-valid';\nimport { withEmotionCache, ThemeContext } from '@emotion/react';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar testOmitPropsOnStringTag = isPropValid;\n\nvar testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {\n return key !== 'theme';\n};\n\nvar getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {\n return typeof tag === 'string' && // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;\n};\nvar composeShouldForwardProps = function composeShouldForwardProps(tag, options, isReal) {\n var shouldForwardProp;\n\n if (options) {\n var optionsShouldForwardProp = options.shouldForwardProp;\n shouldForwardProp = tag.__emotion_forwardProp && optionsShouldForwardProp ? function (propName) {\n return tag.__emotion_forwardProp(propName) && optionsShouldForwardProp(propName);\n } : optionsShouldForwardProp;\n }\n\n if (typeof shouldForwardProp !== 'function' && isReal) {\n shouldForwardProp = tag.__emotion_forwardProp;\n }\n\n return shouldForwardProp;\n};\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar createStyled = function createStyled(tag, options) {\n if (process.env.NODE_ENV !== 'production') {\n if (tag === undefined) {\n throw new Error('You are trying to create a styled element with an undefined component.\\nYou may have forgotten to import it.');\n }\n }\n\n var isReal = tag.__emotion_real === tag;\n var baseTag = isReal && tag.__emotion_base || tag;\n var identifierName;\n var targetClassName;\n\n if (options !== undefined) {\n identifierName = options.label;\n targetClassName = options.target;\n }\n\n var shouldForwardProp = composeShouldForwardProps(tag, options, isReal);\n var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);\n var shouldUseAs = !defaultShouldForwardProp('as');\n return function () {\n var args = arguments;\n var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];\n\n if (identifierName !== undefined) {\n styles.push(\"label:\" + identifierName + \";\");\n }\n\n if (args[0] == null || args[0].raw === undefined) {\n styles.push.apply(styles, args);\n } else {\n if (process.env.NODE_ENV !== 'production' && args[0][0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[0][0]);\n var len = args.length;\n var i = 1;\n\n for (; i < len; i++) {\n if (process.env.NODE_ENV !== 'production' && args[0][i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[i], args[0][i]);\n }\n } // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class\n\n\n var Styled = withEmotionCache(function (props, cache, ref) {\n var FinalTag = shouldUseAs && props.as || baseTag;\n var className = '';\n var classInterpolations = [];\n var mergedProps = props;\n\n if (props.theme == null) {\n mergedProps = {};\n\n for (var key in props) {\n mergedProps[key] = props[key];\n }\n\n mergedProps.theme = React.useContext(ThemeContext);\n }\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, classInterpolations, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(styles.concat(classInterpolations), cache.registered, mergedProps);\n className += cache.key + \"-\" + serialized.name;\n\n if (targetClassName !== undefined) {\n className += \" \" + targetClassName;\n }\n\n var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(FinalTag) : defaultShouldForwardProp;\n var newProps = {};\n\n for (var _key in props) {\n if (shouldUseAs && _key === 'as') continue;\n\n if ( // $FlowFixMe\n finalShouldForwardProp(_key)) {\n newProps[_key] = props[_key];\n }\n }\n\n newProps.className = className;\n newProps.ref = ref;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof FinalTag === 'string'\n }), /*#__PURE__*/React.createElement(FinalTag, newProps));\n });\n Styled.displayName = identifierName !== undefined ? identifierName : \"Styled(\" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + \")\";\n Styled.defaultProps = tag.defaultProps;\n Styled.__emotion_real = Styled;\n Styled.__emotion_base = baseTag;\n Styled.__emotion_styles = styles;\n Styled.__emotion_forwardProp = shouldForwardProp;\n Object.defineProperty(Styled, 'toString', {\n value: function value() {\n if (targetClassName === undefined && process.env.NODE_ENV !== 'production') {\n return 'NO_COMPONENT_SELECTOR';\n } // $FlowFixMe: coerce undefined to string\n\n\n return \".\" + targetClassName;\n }\n });\n\n Styled.withComponent = function (nextTag, nextOptions) {\n return createStyled(nextTag, _extends({}, options, nextOptions, {\n shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)\n })).apply(void 0, styles);\n };\n\n return Styled;\n };\n};\n\nexport { createStyled as default };\n","import createStyled from '../base/dist/emotion-styled-base.browser.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport 'react';\nimport '@emotion/is-prop-valid';\nimport '@emotion/react';\nimport '@emotion/utils';\nimport '@emotion/serialize';\nimport '@emotion/use-insertion-effect-with-fallbacks';\n\nvar tags = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\nvar newStyled = createStyled.bind();\ntags.forEach(function (tagName) {\n // $FlowFixMe: we can ignore this because its exposed type is defined by the CreateStyled type\n newStyled[tagName] = newStyled(tagName);\n});\n\nexport { newStyled as default };\n","export function isPlainObject(item) {\n return item !== null && typeof item === 'object' && item.constructor === Object;\n}\nfunction deepClone(source) {\n if (!isPlainObject(source)) {\n return source;\n }\n const output = {};\n Object.keys(source).forEach(key => {\n output[key] = deepClone(source[key]);\n });\n return output;\n}\nexport default function deepmerge(target, source, options = {\n clone: true\n}) {\n const output = options.clone ? {\n ...target\n } : target;\n if (isPlainObject(target) && isPlainObject(source)) {\n Object.keys(source).forEach(key => {\n // Avoid prototype pollution\n if (key === '__proto__') {\n return;\n }\n if (isPlainObject(source[key]) && key in target && isPlainObject(target[key])) {\n // Since `output` is a clone of `target` and we have narrowed `target` in this block we can cast to the same type.\n output[key] = deepmerge(target[key], source[key], options);\n } else if (options.clone) {\n output[key] = isPlainObject(source[key]) ? deepClone(source[key]) : source[key];\n } else {\n output[key] = source[key];\n }\n });\n }\n return output;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"values\", \"unit\", \"step\"];\n// Sorted ASC by size. That's important.\n// It can't be configured as it's used statically for propTypes.\nexport const breakpointKeys = ['xs', 'sm', 'md', 'lg', 'xl'];\nconst sortBreakpointsValues = values => {\n const breakpointsAsArray = Object.keys(values).map(key => ({\n key,\n val: values[key]\n })) || [];\n // Sort in ascending order\n breakpointsAsArray.sort((breakpoint1, breakpoint2) => breakpoint1.val - breakpoint2.val);\n return breakpointsAsArray.reduce((acc, obj) => {\n return _extends({}, acc, {\n [obj.key]: obj.val\n });\n }, {});\n};\n\n// Keep in mind that @media is inclusive by the CSS specification.\nexport default function createBreakpoints(breakpoints) {\n const {\n // The breakpoint **start** at this value.\n // For instance with the first breakpoint xs: [xs, sm).\n values = {\n xs: 0,\n // phone\n sm: 600,\n // tablet\n md: 900,\n // small laptop\n lg: 1200,\n // desktop\n xl: 1536 // large screen\n },\n\n unit = 'px',\n step = 5\n } = breakpoints,\n other = _objectWithoutPropertiesLoose(breakpoints, _excluded);\n const sortedValues = sortBreakpointsValues(values);\n const keys = Object.keys(sortedValues);\n function up(key) {\n const value = typeof values[key] === 'number' ? values[key] : key;\n return `@media (min-width:${value}${unit})`;\n }\n function down(key) {\n const value = typeof values[key] === 'number' ? values[key] : key;\n return `@media (max-width:${value - step / 100}${unit})`;\n }\n function between(start, end) {\n const endIndex = keys.indexOf(end);\n return `@media (min-width:${typeof values[start] === 'number' ? values[start] : start}${unit}) and ` + `(max-width:${(endIndex !== -1 && typeof values[keys[endIndex]] === 'number' ? values[keys[endIndex]] : end) - step / 100}${unit})`;\n }\n function only(key) {\n if (keys.indexOf(key) + 1 < keys.length) {\n return between(key, keys[keys.indexOf(key) + 1]);\n }\n return up(key);\n }\n function not(key) {\n // handle first and last key separately, for better readability\n const keyIndex = keys.indexOf(key);\n if (keyIndex === 0) {\n return up(keys[1]);\n }\n if (keyIndex === keys.length - 1) {\n return down(keys[keyIndex]);\n }\n return between(key, keys[keys.indexOf(key) + 1]).replace('@media', '@media not all and');\n }\n return _extends({\n keys,\n values: sortedValues,\n up,\n down,\n between,\n only,\n not,\n unit\n }, other);\n}","const shape = {\n borderRadius: 4\n};\nexport default shape;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport PropTypes from 'prop-types';\nimport { deepmerge } from '@mui/utils';\nimport merge from './merge';\n\n// The breakpoint **start** at this value.\n// For instance with the first breakpoint xs: [xs, sm[.\nexport const values = {\n xs: 0,\n // phone\n sm: 600,\n // tablet\n md: 900,\n // small laptop\n lg: 1200,\n // desktop\n xl: 1536 // large screen\n};\n\nconst defaultBreakpoints = {\n // Sorted ASC by size. That's important.\n // It can't be configured as it's used statically for propTypes.\n keys: ['xs', 'sm', 'md', 'lg', 'xl'],\n up: key => `@media (min-width:${values[key]}px)`\n};\nexport function handleBreakpoints(props, propValue, styleFromPropValue) {\n const theme = props.theme || {};\n if (Array.isArray(propValue)) {\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n return propValue.reduce((acc, item, index) => {\n acc[themeBreakpoints.up(themeBreakpoints.keys[index])] = styleFromPropValue(propValue[index]);\n return acc;\n }, {});\n }\n if (typeof propValue === 'object') {\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n return Object.keys(propValue).reduce((acc, breakpoint) => {\n // key is breakpoint\n if (Object.keys(themeBreakpoints.values || values).indexOf(breakpoint) !== -1) {\n const mediaKey = themeBreakpoints.up(breakpoint);\n acc[mediaKey] = styleFromPropValue(propValue[breakpoint], breakpoint);\n } else {\n const cssKey = breakpoint;\n acc[cssKey] = propValue[cssKey];\n }\n return acc;\n }, {});\n }\n const output = styleFromPropValue(propValue);\n return output;\n}\nfunction breakpoints(styleFunction) {\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const newStyleFunction = props => {\n const theme = props.theme || {};\n const base = styleFunction(props);\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n const extended = themeBreakpoints.keys.reduce((acc, key) => {\n if (props[key]) {\n acc = acc || {};\n acc[themeBreakpoints.up(key)] = styleFunction(_extends({\n theme\n }, props[key]));\n }\n return acc;\n }, null);\n return merge(base, extended);\n };\n newStyleFunction.propTypes = process.env.NODE_ENV !== 'production' ? _extends({}, styleFunction.propTypes, {\n xs: PropTypes.object,\n sm: PropTypes.object,\n md: PropTypes.object,\n lg: PropTypes.object,\n xl: PropTypes.object\n }) : {};\n newStyleFunction.filterProps = ['xs', 'sm', 'md', 'lg', 'xl', ...styleFunction.filterProps];\n return newStyleFunction;\n}\nexport function createEmptyBreakpointObject(breakpointsInput = {}) {\n var _breakpointsInput$key;\n const breakpointsInOrder = (_breakpointsInput$key = breakpointsInput.keys) == null ? void 0 : _breakpointsInput$key.reduce((acc, key) => {\n const breakpointStyleKey = breakpointsInput.up(key);\n acc[breakpointStyleKey] = {};\n return acc;\n }, {});\n return breakpointsInOrder || {};\n}\nexport function removeUnusedBreakpoints(breakpointKeys, style) {\n return breakpointKeys.reduce((acc, key) => {\n const breakpointOutput = acc[key];\n const isBreakpointUnused = !breakpointOutput || Object.keys(breakpointOutput).length === 0;\n if (isBreakpointUnused) {\n delete acc[key];\n }\n return acc;\n }, style);\n}\nexport function mergeBreakpointsInOrder(breakpointsInput, ...styles) {\n const emptyBreakpoints = createEmptyBreakpointObject(breakpointsInput);\n const mergedOutput = [emptyBreakpoints, ...styles].reduce((prev, next) => deepmerge(prev, next), {});\n return removeUnusedBreakpoints(Object.keys(emptyBreakpoints), mergedOutput);\n}\n\n// compute base for responsive values; e.g.,\n// [1,2,3] => {xs: true, sm: true, md: true}\n// {xs: 1, sm: 2, md: 3} => {xs: true, sm: true, md: true}\nexport function computeBreakpointsBase(breakpointValues, themeBreakpoints) {\n // fixed value\n if (typeof breakpointValues !== 'object') {\n return {};\n }\n const base = {};\n const breakpointsKeys = Object.keys(themeBreakpoints);\n if (Array.isArray(breakpointValues)) {\n breakpointsKeys.forEach((breakpoint, i) => {\n if (i < breakpointValues.length) {\n base[breakpoint] = true;\n }\n });\n } else {\n breakpointsKeys.forEach(breakpoint => {\n if (breakpointValues[breakpoint] != null) {\n base[breakpoint] = true;\n }\n });\n }\n return base;\n}\nexport function resolveBreakpointValues({\n values: breakpointValues,\n breakpoints: themeBreakpoints,\n base: customBase\n}) {\n const base = customBase || computeBreakpointsBase(breakpointValues, themeBreakpoints);\n const keys = Object.keys(base);\n if (keys.length === 0) {\n return breakpointValues;\n }\n let previous;\n return keys.reduce((acc, breakpoint, i) => {\n if (Array.isArray(breakpointValues)) {\n acc[breakpoint] = breakpointValues[i] != null ? breakpointValues[i] : breakpointValues[previous];\n previous = i;\n } else if (typeof breakpointValues === 'object') {\n acc[breakpoint] = breakpointValues[breakpoint] != null ? breakpointValues[breakpoint] : breakpointValues[previous];\n previous = breakpoint;\n } else {\n acc[breakpoint] = breakpointValues;\n }\n return acc;\n }, {});\n}\nexport default breakpoints;","import _formatMuiErrorMessage from \"./formatMuiErrorMessage\";\n// It should to be noted that this function isn't equivalent to `text-transform: capitalize`.\n//\n// A strict capitalization should uppercase the first letter of each word in the sentence.\n// We only handle the first word.\nexport default function capitalize(string) {\n if (typeof string !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: \\`capitalize(string)\\` expects a string argument.` : _formatMuiErrorMessage(7));\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n}","import { unstable_capitalize as capitalize } from '@mui/utils';\nimport responsivePropType from './responsivePropType';\nimport { handleBreakpoints } from './breakpoints';\nexport function getPath(obj, path, checkVars = true) {\n if (!path || typeof path !== 'string') {\n return null;\n }\n\n // Check if CSS variables are used\n if (obj && obj.vars && checkVars) {\n const val = `vars.${path}`.split('.').reduce((acc, item) => acc && acc[item] ? acc[item] : null, obj);\n if (val != null) {\n return val;\n }\n }\n return path.split('.').reduce((acc, item) => {\n if (acc && acc[item] != null) {\n return acc[item];\n }\n return null;\n }, obj);\n}\nexport function getStyleValue(themeMapping, transform, propValueFinal, userValue = propValueFinal) {\n let value;\n if (typeof themeMapping === 'function') {\n value = themeMapping(propValueFinal);\n } else if (Array.isArray(themeMapping)) {\n value = themeMapping[propValueFinal] || userValue;\n } else {\n value = getPath(themeMapping, propValueFinal) || userValue;\n }\n if (transform) {\n value = transform(value, userValue, themeMapping);\n }\n return value;\n}\nfunction style(options) {\n const {\n prop,\n cssProperty = options.prop,\n themeKey,\n transform\n } = options;\n\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const fn = props => {\n if (props[prop] == null) {\n return null;\n }\n const propValue = props[prop];\n const theme = props.theme;\n const themeMapping = getPath(theme, themeKey) || {};\n const styleFromPropValue = propValueFinal => {\n let value = getStyleValue(themeMapping, transform, propValueFinal);\n if (propValueFinal === value && typeof propValueFinal === 'string') {\n // Haven't found value\n value = getStyleValue(themeMapping, transform, `${prop}${propValueFinal === 'default' ? '' : capitalize(propValueFinal)}`, propValueFinal);\n }\n if (cssProperty === false) {\n return value;\n }\n return {\n [cssProperty]: value\n };\n };\n return handleBreakpoints(props, propValue, styleFromPropValue);\n };\n fn.propTypes = process.env.NODE_ENV !== 'production' ? {\n [prop]: responsivePropType\n } : {};\n fn.filterProps = [prop];\n return fn;\n}\nexport default style;","import { deepmerge } from '@mui/utils';\nfunction merge(acc, item) {\n if (!item) {\n return acc;\n }\n return deepmerge(acc, item, {\n clone: false // No need to clone deep, it's way faster.\n });\n}\n\nexport default merge;","import responsivePropType from './responsivePropType';\nimport { handleBreakpoints } from './breakpoints';\nimport { getPath } from './style';\nimport merge from './merge';\nimport memoize from './memoize';\nconst properties = {\n m: 'margin',\n p: 'padding'\n};\nconst directions = {\n t: 'Top',\n r: 'Right',\n b: 'Bottom',\n l: 'Left',\n x: ['Left', 'Right'],\n y: ['Top', 'Bottom']\n};\nconst aliases = {\n marginX: 'mx',\n marginY: 'my',\n paddingX: 'px',\n paddingY: 'py'\n};\n\n// memoize() impact:\n// From 300,000 ops/sec\n// To 350,000 ops/sec\nconst getCssProperties = memoize(prop => {\n // It's not a shorthand notation.\n if (prop.length > 2) {\n if (aliases[prop]) {\n prop = aliases[prop];\n } else {\n return [prop];\n }\n }\n const [a, b] = prop.split('');\n const property = properties[a];\n const direction = directions[b] || '';\n return Array.isArray(direction) ? direction.map(dir => property + dir) : [property + direction];\n});\nexport const marginKeys = ['m', 'mt', 'mr', 'mb', 'ml', 'mx', 'my', 'margin', 'marginTop', 'marginRight', 'marginBottom', 'marginLeft', 'marginX', 'marginY', 'marginInline', 'marginInlineStart', 'marginInlineEnd', 'marginBlock', 'marginBlockStart', 'marginBlockEnd'];\nexport const paddingKeys = ['p', 'pt', 'pr', 'pb', 'pl', 'px', 'py', 'padding', 'paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft', 'paddingX', 'paddingY', 'paddingInline', 'paddingInlineStart', 'paddingInlineEnd', 'paddingBlock', 'paddingBlockStart', 'paddingBlockEnd'];\nconst spacingKeys = [...marginKeys, ...paddingKeys];\nexport function createUnaryUnit(theme, themeKey, defaultValue, propName) {\n var _getPath;\n const themeSpacing = (_getPath = getPath(theme, themeKey, false)) != null ? _getPath : defaultValue;\n if (typeof themeSpacing === 'number') {\n return abs => {\n if (typeof abs === 'string') {\n return abs;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (typeof abs !== 'number') {\n console.error(`MUI: Expected ${propName} argument to be a number or a string, got ${abs}.`);\n }\n }\n return themeSpacing * abs;\n };\n }\n if (Array.isArray(themeSpacing)) {\n return abs => {\n if (typeof abs === 'string') {\n return abs;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(abs)) {\n console.error([`MUI: The \\`theme.${themeKey}\\` array type cannot be combined with non integer values.` + `You should either use an integer value that can be used as index, or define the \\`theme.${themeKey}\\` as a number.`].join('\\n'));\n } else if (abs > themeSpacing.length - 1) {\n console.error([`MUI: The value provided (${abs}) overflows.`, `The supported values are: ${JSON.stringify(themeSpacing)}.`, `${abs} > ${themeSpacing.length - 1}, you need to add the missing values.`].join('\\n'));\n }\n }\n return themeSpacing[abs];\n };\n }\n if (typeof themeSpacing === 'function') {\n return themeSpacing;\n }\n if (process.env.NODE_ENV !== 'production') {\n console.error([`MUI: The \\`theme.${themeKey}\\` value (${themeSpacing}) is invalid.`, 'It should be a number, an array or a function.'].join('\\n'));\n }\n return () => undefined;\n}\nexport function createUnarySpacing(theme) {\n return createUnaryUnit(theme, 'spacing', 8, 'spacing');\n}\nexport function getValue(transformer, propValue) {\n if (typeof propValue === 'string' || propValue == null) {\n return propValue;\n }\n const abs = Math.abs(propValue);\n const transformed = transformer(abs);\n if (propValue >= 0) {\n return transformed;\n }\n if (typeof transformed === 'number') {\n return -transformed;\n }\n return `-${transformed}`;\n}\nexport function getStyleFromPropValue(cssProperties, transformer) {\n return propValue => cssProperties.reduce((acc, cssProperty) => {\n acc[cssProperty] = getValue(transformer, propValue);\n return acc;\n }, {});\n}\nfunction resolveCssProperty(props, keys, prop, transformer) {\n // Using a hash computation over an array iteration could be faster, but with only 28 items,\n // it's doesn't worth the bundle size.\n if (keys.indexOf(prop) === -1) {\n return null;\n }\n const cssProperties = getCssProperties(prop);\n const styleFromPropValue = getStyleFromPropValue(cssProperties, transformer);\n const propValue = props[prop];\n return handleBreakpoints(props, propValue, styleFromPropValue);\n}\nfunction style(props, keys) {\n const transformer = createUnarySpacing(props.theme);\n return Object.keys(props).map(prop => resolveCssProperty(props, keys, prop, transformer)).reduce(merge, {});\n}\nexport function margin(props) {\n return style(props, marginKeys);\n}\nmargin.propTypes = process.env.NODE_ENV !== 'production' ? marginKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\nmargin.filterProps = marginKeys;\nexport function padding(props) {\n return style(props, paddingKeys);\n}\npadding.propTypes = process.env.NODE_ENV !== 'production' ? paddingKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\npadding.filterProps = paddingKeys;\nfunction spacing(props) {\n return style(props, spacingKeys);\n}\nspacing.propTypes = process.env.NODE_ENV !== 'production' ? spacingKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\nspacing.filterProps = spacingKeys;\nexport default spacing;","export default function memoize(fn) {\n const cache = {};\n return arg => {\n if (cache[arg] === undefined) {\n cache[arg] = fn(arg);\n }\n return cache[arg];\n };\n}","import merge from './merge';\nfunction compose(...styles) {\n const handlers = styles.reduce((acc, style) => {\n style.filterProps.forEach(prop => {\n acc[prop] = style;\n });\n return acc;\n }, {});\n\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const fn = props => {\n return Object.keys(props).reduce((acc, prop) => {\n if (handlers[prop]) {\n return merge(acc, handlers[prop](props));\n }\n return acc;\n }, {});\n };\n fn.propTypes = process.env.NODE_ENV !== 'production' ? styles.reduce((acc, style) => Object.assign(acc, style.propTypes), {}) : {};\n fn.filterProps = styles.reduce((acc, style) => acc.concat(style.filterProps), []);\n return fn;\n}\nexport default compose;","import responsivePropType from './responsivePropType';\nimport style from './style';\nimport compose from './compose';\nimport { createUnaryUnit, getValue } from './spacing';\nimport { handleBreakpoints } from './breakpoints';\nexport function borderTransform(value) {\n if (typeof value !== 'number') {\n return value;\n }\n return `${value}px solid`;\n}\nexport const border = style({\n prop: 'border',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderTop = style({\n prop: 'borderTop',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderRight = style({\n prop: 'borderRight',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderBottom = style({\n prop: 'borderBottom',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderLeft = style({\n prop: 'borderLeft',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderColor = style({\n prop: 'borderColor',\n themeKey: 'palette'\n});\nexport const borderTopColor = style({\n prop: 'borderTopColor',\n themeKey: 'palette'\n});\nexport const borderRightColor = style({\n prop: 'borderRightColor',\n themeKey: 'palette'\n});\nexport const borderBottomColor = style({\n prop: 'borderBottomColor',\n themeKey: 'palette'\n});\nexport const borderLeftColor = style({\n prop: 'borderLeftColor',\n themeKey: 'palette'\n});\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const borderRadius = props => {\n if (props.borderRadius !== undefined && props.borderRadius !== null) {\n const transformer = createUnaryUnit(props.theme, 'shape.borderRadius', 4, 'borderRadius');\n const styleFromPropValue = propValue => ({\n borderRadius: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.borderRadius, styleFromPropValue);\n }\n return null;\n};\nborderRadius.propTypes = process.env.NODE_ENV !== 'production' ? {\n borderRadius: responsivePropType\n} : {};\nborderRadius.filterProps = ['borderRadius'];\nconst borders = compose(border, borderTop, borderRight, borderBottom, borderLeft, borderColor, borderTopColor, borderRightColor, borderBottomColor, borderLeftColor, borderRadius);\nexport default borders;","import style from './style';\nimport compose from './compose';\nimport { createUnaryUnit, getValue } from './spacing';\nimport { handleBreakpoints } from './breakpoints';\nimport responsivePropType from './responsivePropType';\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const gap = props => {\n if (props.gap !== undefined && props.gap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'gap');\n const styleFromPropValue = propValue => ({\n gap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.gap, styleFromPropValue);\n }\n return null;\n};\ngap.propTypes = process.env.NODE_ENV !== 'production' ? {\n gap: responsivePropType\n} : {};\ngap.filterProps = ['gap'];\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const columnGap = props => {\n if (props.columnGap !== undefined && props.columnGap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'columnGap');\n const styleFromPropValue = propValue => ({\n columnGap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.columnGap, styleFromPropValue);\n }\n return null;\n};\ncolumnGap.propTypes = process.env.NODE_ENV !== 'production' ? {\n columnGap: responsivePropType\n} : {};\ncolumnGap.filterProps = ['columnGap'];\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const rowGap = props => {\n if (props.rowGap !== undefined && props.rowGap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'rowGap');\n const styleFromPropValue = propValue => ({\n rowGap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.rowGap, styleFromPropValue);\n }\n return null;\n};\nrowGap.propTypes = process.env.NODE_ENV !== 'production' ? {\n rowGap: responsivePropType\n} : {};\nrowGap.filterProps = ['rowGap'];\nexport const gridColumn = style({\n prop: 'gridColumn'\n});\nexport const gridRow = style({\n prop: 'gridRow'\n});\nexport const gridAutoFlow = style({\n prop: 'gridAutoFlow'\n});\nexport const gridAutoColumns = style({\n prop: 'gridAutoColumns'\n});\nexport const gridAutoRows = style({\n prop: 'gridAutoRows'\n});\nexport const gridTemplateColumns = style({\n prop: 'gridTemplateColumns'\n});\nexport const gridTemplateRows = style({\n prop: 'gridTemplateRows'\n});\nexport const gridTemplateAreas = style({\n prop: 'gridTemplateAreas'\n});\nexport const gridArea = style({\n prop: 'gridArea'\n});\nconst grid = compose(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea);\nexport default grid;","import style from './style';\nimport compose from './compose';\nexport function paletteTransform(value, userValue) {\n if (userValue === 'grey') {\n return userValue;\n }\n return value;\n}\nexport const color = style({\n prop: 'color',\n themeKey: 'palette',\n transform: paletteTransform\n});\nexport const bgcolor = style({\n prop: 'bgcolor',\n cssProperty: 'backgroundColor',\n themeKey: 'palette',\n transform: paletteTransform\n});\nexport const backgroundColor = style({\n prop: 'backgroundColor',\n themeKey: 'palette',\n transform: paletteTransform\n});\nconst palette = compose(color, bgcolor, backgroundColor);\nexport default palette;","import style from './style';\nimport compose from './compose';\nimport { handleBreakpoints, values as breakpointsValues } from './breakpoints';\nexport function sizingTransform(value) {\n return value <= 1 && value !== 0 ? `${value * 100}%` : value;\n}\nexport const width = style({\n prop: 'width',\n transform: sizingTransform\n});\nexport const maxWidth = props => {\n if (props.maxWidth !== undefined && props.maxWidth !== null) {\n const styleFromPropValue = propValue => {\n var _props$theme, _props$theme$breakpoi, _props$theme$breakpoi2;\n const breakpoint = ((_props$theme = props.theme) == null ? void 0 : (_props$theme$breakpoi = _props$theme.breakpoints) == null ? void 0 : (_props$theme$breakpoi2 = _props$theme$breakpoi.values) == null ? void 0 : _props$theme$breakpoi2[propValue]) || breakpointsValues[propValue];\n return {\n maxWidth: breakpoint || sizingTransform(propValue)\n };\n };\n return handleBreakpoints(props, props.maxWidth, styleFromPropValue);\n }\n return null;\n};\nmaxWidth.filterProps = ['maxWidth'];\nexport const minWidth = style({\n prop: 'minWidth',\n transform: sizingTransform\n});\nexport const height = style({\n prop: 'height',\n transform: sizingTransform\n});\nexport const maxHeight = style({\n prop: 'maxHeight',\n transform: sizingTransform\n});\nexport const minHeight = style({\n prop: 'minHeight',\n transform: sizingTransform\n});\nexport const sizeWidth = style({\n prop: 'size',\n cssProperty: 'width',\n transform: sizingTransform\n});\nexport const sizeHeight = style({\n prop: 'size',\n cssProperty: 'height',\n transform: sizingTransform\n});\nexport const boxSizing = style({\n prop: 'boxSizing'\n});\nconst sizing = compose(width, maxWidth, minWidth, height, maxHeight, minHeight, boxSizing);\nexport default sizing;","import { padding, margin } from '../spacing';\nimport { borderRadius, borderTransform } from '../borders';\nimport { gap, rowGap, columnGap } from '../cssGrid';\nimport { paletteTransform } from '../palette';\nimport { maxWidth, sizingTransform } from '../sizing';\nconst defaultSxConfig = {\n // borders\n border: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderTop: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderRight: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderBottom: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderLeft: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderColor: {\n themeKey: 'palette'\n },\n borderTopColor: {\n themeKey: 'palette'\n },\n borderRightColor: {\n themeKey: 'palette'\n },\n borderBottomColor: {\n themeKey: 'palette'\n },\n borderLeftColor: {\n themeKey: 'palette'\n },\n borderRadius: {\n themeKey: 'shape.borderRadius',\n style: borderRadius\n },\n // palette\n color: {\n themeKey: 'palette',\n transform: paletteTransform\n },\n bgcolor: {\n themeKey: 'palette',\n cssProperty: 'backgroundColor',\n transform: paletteTransform\n },\n backgroundColor: {\n themeKey: 'palette',\n transform: paletteTransform\n },\n // spacing\n p: {\n style: padding\n },\n pt: {\n style: padding\n },\n pr: {\n style: padding\n },\n pb: {\n style: padding\n },\n pl: {\n style: padding\n },\n px: {\n style: padding\n },\n py: {\n style: padding\n },\n padding: {\n style: padding\n },\n paddingTop: {\n style: padding\n },\n paddingRight: {\n style: padding\n },\n paddingBottom: {\n style: padding\n },\n paddingLeft: {\n style: padding\n },\n paddingX: {\n style: padding\n },\n paddingY: {\n style: padding\n },\n paddingInline: {\n style: padding\n },\n paddingInlineStart: {\n style: padding\n },\n paddingInlineEnd: {\n style: padding\n },\n paddingBlock: {\n style: padding\n },\n paddingBlockStart: {\n style: padding\n },\n paddingBlockEnd: {\n style: padding\n },\n m: {\n style: margin\n },\n mt: {\n style: margin\n },\n mr: {\n style: margin\n },\n mb: {\n style: margin\n },\n ml: {\n style: margin\n },\n mx: {\n style: margin\n },\n my: {\n style: margin\n },\n margin: {\n style: margin\n },\n marginTop: {\n style: margin\n },\n marginRight: {\n style: margin\n },\n marginBottom: {\n style: margin\n },\n marginLeft: {\n style: margin\n },\n marginX: {\n style: margin\n },\n marginY: {\n style: margin\n },\n marginInline: {\n style: margin\n },\n marginInlineStart: {\n style: margin\n },\n marginInlineEnd: {\n style: margin\n },\n marginBlock: {\n style: margin\n },\n marginBlockStart: {\n style: margin\n },\n marginBlockEnd: {\n style: margin\n },\n // display\n displayPrint: {\n cssProperty: false,\n transform: value => ({\n '@media print': {\n display: value\n }\n })\n },\n display: {},\n overflow: {},\n textOverflow: {},\n visibility: {},\n whiteSpace: {},\n // flexbox\n flexBasis: {},\n flexDirection: {},\n flexWrap: {},\n justifyContent: {},\n alignItems: {},\n alignContent: {},\n order: {},\n flex: {},\n flexGrow: {},\n flexShrink: {},\n alignSelf: {},\n justifyItems: {},\n justifySelf: {},\n // grid\n gap: {\n style: gap\n },\n rowGap: {\n style: rowGap\n },\n columnGap: {\n style: columnGap\n },\n gridColumn: {},\n gridRow: {},\n gridAutoFlow: {},\n gridAutoColumns: {},\n gridAutoRows: {},\n gridTemplateColumns: {},\n gridTemplateRows: {},\n gridTemplateAreas: {},\n gridArea: {},\n // positions\n position: {},\n zIndex: {\n themeKey: 'zIndex'\n },\n top: {},\n right: {},\n bottom: {},\n left: {},\n // shadows\n boxShadow: {\n themeKey: 'shadows'\n },\n // sizing\n width: {\n transform: sizingTransform\n },\n maxWidth: {\n style: maxWidth\n },\n minWidth: {\n transform: sizingTransform\n },\n height: {\n transform: sizingTransform\n },\n maxHeight: {\n transform: sizingTransform\n },\n minHeight: {\n transform: sizingTransform\n },\n boxSizing: {},\n // typography\n fontFamily: {\n themeKey: 'typography'\n },\n fontSize: {\n themeKey: 'typography'\n },\n fontStyle: {\n themeKey: 'typography'\n },\n fontWeight: {\n themeKey: 'typography'\n },\n letterSpacing: {},\n textTransform: {},\n lineHeight: {},\n textAlign: {},\n typography: {\n cssProperty: false,\n themeKey: 'typography'\n }\n};\nexport default defaultSxConfig;","import { unstable_capitalize as capitalize } from '@mui/utils';\nimport merge from '../merge';\nimport { getPath, getStyleValue as getValue } from '../style';\nimport { handleBreakpoints, createEmptyBreakpointObject, removeUnusedBreakpoints } from '../breakpoints';\nimport defaultSxConfig from './defaultSxConfig';\nfunction objectsHaveSameKeys(...objects) {\n const allKeys = objects.reduce((keys, object) => keys.concat(Object.keys(object)), []);\n const union = new Set(allKeys);\n return objects.every(object => union.size === Object.keys(object).length);\n}\nfunction callIfFn(maybeFn, arg) {\n return typeof maybeFn === 'function' ? maybeFn(arg) : maybeFn;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function unstable_createStyleFunctionSx() {\n function getThemeValue(prop, val, theme, config) {\n const props = {\n [prop]: val,\n theme\n };\n const options = config[prop];\n if (!options) {\n return {\n [prop]: val\n };\n }\n const {\n cssProperty = prop,\n themeKey,\n transform,\n style\n } = options;\n if (val == null) {\n return null;\n }\n if (themeKey === 'typography' && val === 'inherit') {\n return {\n [prop]: val\n };\n }\n const themeMapping = getPath(theme, themeKey) || {};\n if (style) {\n return style(props);\n }\n const styleFromPropValue = propValueFinal => {\n let value = getValue(themeMapping, transform, propValueFinal);\n if (propValueFinal === value && typeof propValueFinal === 'string') {\n // Haven't found value\n value = getValue(themeMapping, transform, `${prop}${propValueFinal === 'default' ? '' : capitalize(propValueFinal)}`, propValueFinal);\n }\n if (cssProperty === false) {\n return value;\n }\n return {\n [cssProperty]: value\n };\n };\n return handleBreakpoints(props, val, styleFromPropValue);\n }\n function styleFunctionSx(props) {\n var _theme$unstable_sxCon;\n const {\n sx,\n theme = {}\n } = props || {};\n if (!sx) {\n return null; // Emotion & styled-components will neglect null\n }\n\n const config = (_theme$unstable_sxCon = theme.unstable_sxConfig) != null ? _theme$unstable_sxCon : defaultSxConfig;\n\n /*\n * Receive `sxInput` as object or callback\n * and then recursively check keys & values to create media query object styles.\n * (the result will be used in `styled`)\n */\n function traverse(sxInput) {\n let sxObject = sxInput;\n if (typeof sxInput === 'function') {\n sxObject = sxInput(theme);\n } else if (typeof sxInput !== 'object') {\n // value\n return sxInput;\n }\n if (!sxObject) {\n return null;\n }\n const emptyBreakpoints = createEmptyBreakpointObject(theme.breakpoints);\n const breakpointsKeys = Object.keys(emptyBreakpoints);\n let css = emptyBreakpoints;\n Object.keys(sxObject).forEach(styleKey => {\n const value = callIfFn(sxObject[styleKey], theme);\n if (value !== null && value !== undefined) {\n if (typeof value === 'object') {\n if (config[styleKey]) {\n css = merge(css, getThemeValue(styleKey, value, theme, config));\n } else {\n const breakpointsValues = handleBreakpoints({\n theme\n }, value, x => ({\n [styleKey]: x\n }));\n if (objectsHaveSameKeys(breakpointsValues, value)) {\n css[styleKey] = styleFunctionSx({\n sx: value,\n theme\n });\n } else {\n css = merge(css, breakpointsValues);\n }\n }\n } else {\n css = merge(css, getThemeValue(styleKey, value, theme, config));\n }\n }\n });\n return removeUnusedBreakpoints(breakpointsKeys, css);\n }\n return Array.isArray(sx) ? sx.map(traverse) : traverse(sx);\n }\n return styleFunctionSx;\n}\nconst styleFunctionSx = unstable_createStyleFunctionSx();\nstyleFunctionSx.filterProps = ['sx'];\nexport default styleFunctionSx;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"breakpoints\", \"palette\", \"spacing\", \"shape\"];\nimport { deepmerge } from '@mui/utils';\nimport createBreakpoints from './createBreakpoints';\nimport shape from './shape';\nimport createSpacing from './createSpacing';\nimport styleFunctionSx from '../styleFunctionSx/styleFunctionSx';\nimport defaultSxConfig from '../styleFunctionSx/defaultSxConfig';\nfunction createTheme(options = {}, ...args) {\n const {\n breakpoints: breakpointsInput = {},\n palette: paletteInput = {},\n spacing: spacingInput,\n shape: shapeInput = {}\n } = options,\n other = _objectWithoutPropertiesLoose(options, _excluded);\n const breakpoints = createBreakpoints(breakpointsInput);\n const spacing = createSpacing(spacingInput);\n let muiTheme = deepmerge({\n breakpoints,\n direction: 'ltr',\n components: {},\n // Inject component definitions.\n palette: _extends({\n mode: 'light'\n }, paletteInput),\n spacing,\n shape: _extends({}, shape, shapeInput)\n }, other);\n muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);\n muiTheme.unstable_sxConfig = _extends({}, defaultSxConfig, other == null ? void 0 : other.unstable_sxConfig);\n muiTheme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n return muiTheme;\n}\nexport default createTheme;","import { createUnarySpacing } from '../spacing';\n\n// The different signatures imply different meaning for their arguments that can't be expressed structurally.\n// We express the difference with variable names.\n/* tslint:disable:unified-signatures */\n/* tslint:enable:unified-signatures */\n\nexport default function createSpacing(spacingInput = 8) {\n // Already transformed.\n if (spacingInput.mui) {\n return spacingInput;\n }\n\n // Material Design layouts are visually balanced. Most measurements align to an 8dp grid, which aligns both spacing and the overall layout.\n // Smaller components, such as icons, can align to a 4dp grid.\n // https://m2.material.io/design/layout/understanding-layout.html\n const transform = createUnarySpacing({\n spacing: spacingInput\n });\n const spacing = (...argsInput) => {\n if (process.env.NODE_ENV !== 'production') {\n if (!(argsInput.length <= 4)) {\n console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${argsInput.length}`);\n }\n }\n const args = argsInput.length === 0 ? [1] : argsInput;\n return args.map(argument => {\n const output = transform(argument);\n return typeof output === 'number' ? `${output}px` : output;\n }).join(' ');\n };\n spacing.mui = true;\n return spacing;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"variant\"];\nimport { unstable_capitalize as capitalize } from '@mui/utils';\nfunction isEmpty(string) {\n return string.length === 0;\n}\n\n/**\n * Generates string classKey based on the properties provided. It starts with the\n * variant if defined, and then it appends all other properties in alphabetical order.\n * @param {object} props - the properties for which the classKey should be created.\n */\nexport default function propsToClassKey(props) {\n const {\n variant\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n let classKey = variant || '';\n Object.keys(other).sort().forEach(key => {\n if (key === 'color') {\n classKey += isEmpty(classKey) ? props[key] : capitalize(props[key]);\n } else {\n classKey += `${isEmpty(classKey) ? key : capitalize(key)}${capitalize(props[key].toString())}`;\n }\n });\n return classKey;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"name\", \"slot\", \"skipVariantsResolver\", \"skipSx\", \"overridesResolver\"];\n/* eslint-disable no-underscore-dangle */\nimport styledEngineStyled, { internal_processStyles as processStyles } from '@mui/styled-engine';\nimport { getDisplayName } from '@mui/utils';\nimport createTheme from './createTheme';\nimport propsToClassKey from './propsToClassKey';\nimport styleFunctionSx from './styleFunctionSx';\nfunction isEmpty(obj) {\n return Object.keys(obj).length === 0;\n}\n\n// https://github.com/emotion-js/emotion/blob/26ded6109fcd8ca9875cc2ce4564fee678a3f3c5/packages/styled/src/utils.js#L40\nfunction isStringTag(tag) {\n return typeof tag === 'string' &&\n // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96;\n}\nconst getStyleOverrides = (name, theme) => {\n if (theme.components && theme.components[name] && theme.components[name].styleOverrides) {\n return theme.components[name].styleOverrides;\n }\n return null;\n};\nconst getVariantStyles = (name, theme) => {\n let variants = [];\n if (theme && theme.components && theme.components[name] && theme.components[name].variants) {\n variants = theme.components[name].variants;\n }\n const variantsStyles = {};\n variants.forEach(definition => {\n const key = propsToClassKey(definition.props);\n variantsStyles[key] = definition.style;\n });\n return variantsStyles;\n};\nconst variantsResolver = (props, styles, theme, name) => {\n var _theme$components, _theme$components$nam;\n const {\n ownerState = {}\n } = props;\n const variantsStyles = [];\n const themeVariants = theme == null ? void 0 : (_theme$components = theme.components) == null ? void 0 : (_theme$components$nam = _theme$components[name]) == null ? void 0 : _theme$components$nam.variants;\n if (themeVariants) {\n themeVariants.forEach(themeVariant => {\n let isMatch = true;\n Object.keys(themeVariant.props).forEach(key => {\n if (ownerState[key] !== themeVariant.props[key] && props[key] !== themeVariant.props[key]) {\n isMatch = false;\n }\n });\n if (isMatch) {\n variantsStyles.push(styles[propsToClassKey(themeVariant.props)]);\n }\n });\n }\n return variantsStyles;\n};\n\n// Update /system/styled/#api in case if this changes\nexport function shouldForwardProp(prop) {\n return prop !== 'ownerState' && prop !== 'theme' && prop !== 'sx' && prop !== 'as';\n}\nexport const systemDefaultTheme = createTheme();\nconst lowercaseFirstLetter = string => {\n return string.charAt(0).toLowerCase() + string.slice(1);\n};\nfunction resolveTheme({\n defaultTheme,\n theme,\n themeId\n}) {\n return isEmpty(theme) ? defaultTheme : theme[themeId] || theme;\n}\nexport default function createStyled(input = {}) {\n const {\n themeId,\n defaultTheme = systemDefaultTheme,\n rootShouldForwardProp = shouldForwardProp,\n slotShouldForwardProp = shouldForwardProp\n } = input;\n const systemSx = props => {\n return styleFunctionSx(_extends({}, props, {\n theme: resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }))\n }));\n };\n systemSx.__mui_systemSx = true;\n return (tag, inputOptions = {}) => {\n // Filter out the `sx` style function from the previous styled component to prevent unnecessary styles generated by the composite components.\n processStyles(tag, styles => styles.filter(style => !(style != null && style.__mui_systemSx)));\n const {\n name: componentName,\n slot: componentSlot,\n skipVariantsResolver: inputSkipVariantsResolver,\n skipSx: inputSkipSx,\n overridesResolver\n } = inputOptions,\n options = _objectWithoutPropertiesLoose(inputOptions, _excluded);\n\n // if skipVariantsResolver option is defined, take the value, otherwise, true for root and false for other slots.\n const skipVariantsResolver = inputSkipVariantsResolver !== undefined ? inputSkipVariantsResolver : componentSlot && componentSlot !== 'Root' || false;\n const skipSx = inputSkipSx || false;\n let label;\n if (process.env.NODE_ENV !== 'production') {\n if (componentName) {\n label = `${componentName}-${lowercaseFirstLetter(componentSlot || 'Root')}`;\n }\n }\n let shouldForwardPropOption = shouldForwardProp;\n if (componentSlot === 'Root') {\n shouldForwardPropOption = rootShouldForwardProp;\n } else if (componentSlot) {\n // any other slot specified\n shouldForwardPropOption = slotShouldForwardProp;\n } else if (isStringTag(tag)) {\n // for string (html) tag, preserve the behavior in emotion & styled-components.\n shouldForwardPropOption = undefined;\n }\n const defaultStyledResolver = styledEngineStyled(tag, _extends({\n shouldForwardProp: shouldForwardPropOption,\n label\n }, options));\n const muiStyledResolver = (styleArg, ...expressions) => {\n const expressionsWithDefaultTheme = expressions ? expressions.map(stylesArg => {\n // On the server Emotion doesn't use React.forwardRef for creating components, so the created\n // component stays as a function. This condition makes sure that we do not interpolate functions\n // which are basically components used as a selectors.\n return typeof stylesArg === 'function' && stylesArg.__emotion_real !== stylesArg ? props => {\n return stylesArg(_extends({}, props, {\n theme: resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }))\n }));\n } : stylesArg;\n }) : [];\n let transformedStyleArg = styleArg;\n if (componentName && overridesResolver) {\n expressionsWithDefaultTheme.push(props => {\n const theme = resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }));\n const styleOverrides = getStyleOverrides(componentName, theme);\n if (styleOverrides) {\n const resolvedStyleOverrides = {};\n Object.entries(styleOverrides).forEach(([slotKey, slotStyle]) => {\n resolvedStyleOverrides[slotKey] = typeof slotStyle === 'function' ? slotStyle(_extends({}, props, {\n theme\n })) : slotStyle;\n });\n return overridesResolver(props, resolvedStyleOverrides);\n }\n return null;\n });\n }\n if (componentName && !skipVariantsResolver) {\n expressionsWithDefaultTheme.push(props => {\n const theme = resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }));\n return variantsResolver(props, getVariantStyles(componentName, theme), theme, componentName);\n });\n }\n if (!skipSx) {\n expressionsWithDefaultTheme.push(systemSx);\n }\n const numOfCustomFnsApplied = expressionsWithDefaultTheme.length - expressions.length;\n if (Array.isArray(styleArg) && numOfCustomFnsApplied > 0) {\n const placeholders = new Array(numOfCustomFnsApplied).fill('');\n // If the type is array, than we need to add placeholders in the template for the overrides, variants and the sx styles.\n transformedStyleArg = [...styleArg, ...placeholders];\n transformedStyleArg.raw = [...styleArg.raw, ...placeholders];\n } else if (typeof styleArg === 'function' &&\n // On the server Emotion doesn't use React.forwardRef for creating components, so the created\n // component stays as a function. This condition makes sure that we do not interpolate functions\n // which are basically components used as a selectors.\n styleArg.__emotion_real !== styleArg) {\n // If the type is function, we need to define the default theme.\n transformedStyleArg = props => styleArg(_extends({}, props, {\n theme: resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }))\n }));\n }\n const Component = defaultStyledResolver(transformedStyleArg, ...expressionsWithDefaultTheme);\n if (process.env.NODE_ENV !== 'production') {\n let displayName;\n if (componentName) {\n displayName = `${componentName}${componentSlot || ''}`;\n }\n if (displayName === undefined) {\n displayName = `Styled(${getDisplayName(tag)})`;\n }\n Component.displayName = displayName;\n }\n if (tag.muiName) {\n Component.muiName = tag.muiName;\n }\n return Component;\n };\n if (defaultStyledResolver.withConfig) {\n muiStyledResolver.withConfig = defaultStyledResolver.withConfig;\n }\n return muiStyledResolver;\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function createMixins(breakpoints, mixins) {\n return _extends({\n toolbar: {\n minHeight: 56,\n [breakpoints.up('xs')]: {\n '@media (orientation: landscape)': {\n minHeight: 48\n }\n },\n [breakpoints.up('sm')]: {\n minHeight: 64\n }\n }\n }, mixins);\n}","const common = {\n black: '#000',\n white: '#fff'\n};\nexport default common;","const grey = {\n 50: '#fafafa',\n 100: '#f5f5f5',\n 200: '#eeeeee',\n 300: '#e0e0e0',\n 400: '#bdbdbd',\n 500: '#9e9e9e',\n 600: '#757575',\n 700: '#616161',\n 800: '#424242',\n 900: '#212121',\n A100: '#f5f5f5',\n A200: '#eeeeee',\n A400: '#bdbdbd',\n A700: '#616161'\n};\nexport default grey;","const purple = {\n 50: '#f3e5f5',\n 100: '#e1bee7',\n 200: '#ce93d8',\n 300: '#ba68c8',\n 400: '#ab47bc',\n 500: '#9c27b0',\n 600: '#8e24aa',\n 700: '#7b1fa2',\n 800: '#6a1b9a',\n 900: '#4a148c',\n A100: '#ea80fc',\n A200: '#e040fb',\n A400: '#d500f9',\n A700: '#aa00ff'\n};\nexport default purple;","const red = {\n 50: '#ffebee',\n 100: '#ffcdd2',\n 200: '#ef9a9a',\n 300: '#e57373',\n 400: '#ef5350',\n 500: '#f44336',\n 600: '#e53935',\n 700: '#d32f2f',\n 800: '#c62828',\n 900: '#b71c1c',\n A100: '#ff8a80',\n A200: '#ff5252',\n A400: '#ff1744',\n A700: '#d50000'\n};\nexport default red;","const orange = {\n 50: '#fff3e0',\n 100: '#ffe0b2',\n 200: '#ffcc80',\n 300: '#ffb74d',\n 400: '#ffa726',\n 500: '#ff9800',\n 600: '#fb8c00',\n 700: '#f57c00',\n 800: '#ef6c00',\n 900: '#e65100',\n A100: '#ffd180',\n A200: '#ffab40',\n A400: '#ff9100',\n A700: '#ff6d00'\n};\nexport default orange;","const blue = {\n 50: '#e3f2fd',\n 100: '#bbdefb',\n 200: '#90caf9',\n 300: '#64b5f6',\n 400: '#42a5f5',\n 500: '#2196f3',\n 600: '#1e88e5',\n 700: '#1976d2',\n 800: '#1565c0',\n 900: '#0d47a1',\n A100: '#82b1ff',\n A200: '#448aff',\n A400: '#2979ff',\n A700: '#2962ff'\n};\nexport default blue;","const lightBlue = {\n 50: '#e1f5fe',\n 100: '#b3e5fc',\n 200: '#81d4fa',\n 300: '#4fc3f7',\n 400: '#29b6f6',\n 500: '#03a9f4',\n 600: '#039be5',\n 700: '#0288d1',\n 800: '#0277bd',\n 900: '#01579b',\n A100: '#80d8ff',\n A200: '#40c4ff',\n A400: '#00b0ff',\n A700: '#0091ea'\n};\nexport default lightBlue;","const green = {\n 50: '#e8f5e9',\n 100: '#c8e6c9',\n 200: '#a5d6a7',\n 300: '#81c784',\n 400: '#66bb6a',\n 500: '#4caf50',\n 600: '#43a047',\n 700: '#388e3c',\n 800: '#2e7d32',\n 900: '#1b5e20',\n A100: '#b9f6ca',\n A200: '#69f0ae',\n A400: '#00e676',\n A700: '#00c853'\n};\nexport default green;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\nconst _excluded = [\"mode\", \"contrastThreshold\", \"tonalOffset\"];\nimport { deepmerge } from '@mui/utils';\nimport { darken, getContrastRatio, lighten } from '@mui/system';\nimport common from '../colors/common';\nimport grey from '../colors/grey';\nimport purple from '../colors/purple';\nimport red from '../colors/red';\nimport orange from '../colors/orange';\nimport blue from '../colors/blue';\nimport lightBlue from '../colors/lightBlue';\nimport green from '../colors/green';\nexport const light = {\n // The colors used to style the text.\n text: {\n // The most important text.\n primary: 'rgba(0, 0, 0, 0.87)',\n // Secondary text.\n secondary: 'rgba(0, 0, 0, 0.6)',\n // Disabled text have even lower visual prominence.\n disabled: 'rgba(0, 0, 0, 0.38)'\n },\n // The color used to divide different elements.\n divider: 'rgba(0, 0, 0, 0.12)',\n // The background colors used to style the surfaces.\n // Consistency between these values is important.\n background: {\n paper: common.white,\n default: common.white\n },\n // The colors used to style the action elements.\n action: {\n // The color of an active action like an icon button.\n active: 'rgba(0, 0, 0, 0.54)',\n // The color of an hovered action.\n hover: 'rgba(0, 0, 0, 0.04)',\n hoverOpacity: 0.04,\n // The color of a selected action.\n selected: 'rgba(0, 0, 0, 0.08)',\n selectedOpacity: 0.08,\n // The color of a disabled action.\n disabled: 'rgba(0, 0, 0, 0.26)',\n // The background color of a disabled action.\n disabledBackground: 'rgba(0, 0, 0, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(0, 0, 0, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.12\n }\n};\nexport const dark = {\n text: {\n primary: common.white,\n secondary: 'rgba(255, 255, 255, 0.7)',\n disabled: 'rgba(255, 255, 255, 0.5)',\n icon: 'rgba(255, 255, 255, 0.5)'\n },\n divider: 'rgba(255, 255, 255, 0.12)',\n background: {\n paper: '#121212',\n default: '#121212'\n },\n action: {\n active: common.white,\n hover: 'rgba(255, 255, 255, 0.08)',\n hoverOpacity: 0.08,\n selected: 'rgba(255, 255, 255, 0.16)',\n selectedOpacity: 0.16,\n disabled: 'rgba(255, 255, 255, 0.3)',\n disabledBackground: 'rgba(255, 255, 255, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(255, 255, 255, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.24\n }\n};\nfunction addLightOrDark(intent, direction, shade, tonalOffset) {\n const tonalOffsetLight = tonalOffset.light || tonalOffset;\n const tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5;\n if (!intent[direction]) {\n if (intent.hasOwnProperty(shade)) {\n intent[direction] = intent[shade];\n } else if (direction === 'light') {\n intent.light = lighten(intent.main, tonalOffsetLight);\n } else if (direction === 'dark') {\n intent.dark = darken(intent.main, tonalOffsetDark);\n }\n }\n}\nfunction getDefaultPrimary(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: blue[200],\n light: blue[50],\n dark: blue[400]\n };\n }\n return {\n main: blue[700],\n light: blue[400],\n dark: blue[800]\n };\n}\nfunction getDefaultSecondary(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: purple[200],\n light: purple[50],\n dark: purple[400]\n };\n }\n return {\n main: purple[500],\n light: purple[300],\n dark: purple[700]\n };\n}\nfunction getDefaultError(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: red[500],\n light: red[300],\n dark: red[700]\n };\n }\n return {\n main: red[700],\n light: red[400],\n dark: red[800]\n };\n}\nfunction getDefaultInfo(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: lightBlue[400],\n light: lightBlue[300],\n dark: lightBlue[700]\n };\n }\n return {\n main: lightBlue[700],\n light: lightBlue[500],\n dark: lightBlue[900]\n };\n}\nfunction getDefaultSuccess(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: green[400],\n light: green[300],\n dark: green[700]\n };\n }\n return {\n main: green[800],\n light: green[500],\n dark: green[900]\n };\n}\nfunction getDefaultWarning(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: orange[400],\n light: orange[300],\n dark: orange[700]\n };\n }\n return {\n main: '#ed6c02',\n // closest to orange[800] that pass 3:1.\n light: orange[500],\n dark: orange[900]\n };\n}\nexport default function createPalette(palette) {\n const {\n mode = 'light',\n contrastThreshold = 3,\n tonalOffset = 0.2\n } = palette,\n other = _objectWithoutPropertiesLoose(palette, _excluded);\n const primary = palette.primary || getDefaultPrimary(mode);\n const secondary = palette.secondary || getDefaultSecondary(mode);\n const error = palette.error || getDefaultError(mode);\n const info = palette.info || getDefaultInfo(mode);\n const success = palette.success || getDefaultSuccess(mode);\n const warning = palette.warning || getDefaultWarning(mode);\n\n // Use the same logic as\n // Bootstrap: https://github.com/twbs/bootstrap/blob/1d6e3710dd447de1a200f29e8fa521f8a0908f70/scss/_functions.scss#L59\n // and material-components-web https://github.com/material-components/material-components-web/blob/ac46b8863c4dab9fc22c4c662dc6bd1b65dd652f/packages/mdc-theme/_functions.scss#L54\n function getContrastText(background) {\n const contrastText = getContrastRatio(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary;\n if (process.env.NODE_ENV !== 'production') {\n const contrast = getContrastRatio(background, contrastText);\n if (contrast < 3) {\n console.error([`MUI: The contrast ratio of ${contrast}:1 for ${contrastText} on ${background}`, 'falls below the WCAG recommended absolute minimum contrast ratio of 3:1.', 'https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast'].join('\\n'));\n }\n }\n return contrastText;\n }\n const augmentColor = ({\n color,\n name,\n mainShade = 500,\n lightShade = 300,\n darkShade = 700\n }) => {\n color = _extends({}, color);\n if (!color.main && color[mainShade]) {\n color.main = color[mainShade];\n }\n if (!color.hasOwnProperty('main')) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The color${name ? ` (${name})` : ''} provided to augmentColor(color) is invalid.\nThe color object needs to have a \\`main\\` property or a \\`${mainShade}\\` property.` : _formatMuiErrorMessage(11, name ? ` (${name})` : '', mainShade));\n }\n if (typeof color.main !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The color${name ? ` (${name})` : ''} provided to augmentColor(color) is invalid.\n\\`color.main\\` should be a string, but \\`${JSON.stringify(color.main)}\\` was provided instead.\n\nDid you intend to use one of the following approaches?\n\nimport { green } from \"@mui/material/colors\";\n\nconst theme1 = createTheme({ palette: {\n primary: green,\n} });\n\nconst theme2 = createTheme({ palette: {\n primary: { main: green[500] },\n} });` : _formatMuiErrorMessage(12, name ? ` (${name})` : '', JSON.stringify(color.main)));\n }\n addLightOrDark(color, 'light', lightShade, tonalOffset);\n addLightOrDark(color, 'dark', darkShade, tonalOffset);\n if (!color.contrastText) {\n color.contrastText = getContrastText(color.main);\n }\n return color;\n };\n const modes = {\n dark,\n light\n };\n if (process.env.NODE_ENV !== 'production') {\n if (!modes[mode]) {\n console.error(`MUI: The palette mode \\`${mode}\\` is not supported.`);\n }\n }\n const paletteOutput = deepmerge(_extends({\n // A collection of common colors.\n common: _extends({}, common),\n // prevent mutable object.\n // The palette mode, can be light or dark.\n mode,\n // The colors used to represent primary interface elements for a user.\n primary: augmentColor({\n color: primary,\n name: 'primary'\n }),\n // The colors used to represent secondary interface elements for a user.\n secondary: augmentColor({\n color: secondary,\n name: 'secondary',\n mainShade: 'A400',\n lightShade: 'A200',\n darkShade: 'A700'\n }),\n // The colors used to represent interface elements that the user should be made aware of.\n error: augmentColor({\n color: error,\n name: 'error'\n }),\n // The colors used to represent potentially dangerous actions or important messages.\n warning: augmentColor({\n color: warning,\n name: 'warning'\n }),\n // The colors used to present information to the user that is neutral and not necessarily important.\n info: augmentColor({\n color: info,\n name: 'info'\n }),\n // The colors used to indicate the successful completion of an action that user triggered.\n success: augmentColor({\n color: success,\n name: 'success'\n }),\n // The grey colors.\n grey,\n // Used by `getContrastText()` to maximize the contrast between\n // the background and the text.\n contrastThreshold,\n // Takes a background color and returns the text color that maximizes the contrast.\n getContrastText,\n // Generate a rich color object.\n augmentColor,\n // Used by the functions below to shift a color's luminance by approximately\n // two indexes within its tonal palette.\n // E.g., shift from Red 500 to Red 300 or Red 700.\n tonalOffset\n }, modes[mode]), other);\n return paletteOutput;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"fontFamily\", \"fontSize\", \"fontWeightLight\", \"fontWeightRegular\", \"fontWeightMedium\", \"fontWeightBold\", \"htmlFontSize\", \"allVariants\", \"pxToRem\"];\nimport { deepmerge } from '@mui/utils';\nfunction round(value) {\n return Math.round(value * 1e5) / 1e5;\n}\nconst caseAllCaps = {\n textTransform: 'uppercase'\n};\nconst defaultFontFamily = '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif';\n\n/**\n * @see @link{https://m2.material.io/design/typography/the-type-system.html}\n * @see @link{https://m2.material.io/design/typography/understanding-typography.html}\n */\nexport default function createTypography(palette, typography) {\n const _ref = typeof typography === 'function' ? typography(palette) : typography,\n {\n fontFamily = defaultFontFamily,\n // The default font size of the Material Specification.\n fontSize = 14,\n // px\n fontWeightLight = 300,\n fontWeightRegular = 400,\n fontWeightMedium = 500,\n fontWeightBold = 700,\n // Tell MUI what's the font-size on the html element.\n // 16px is the default font-size used by browsers.\n htmlFontSize = 16,\n // Apply the CSS properties to all the variants.\n allVariants,\n pxToRem: pxToRem2\n } = _ref,\n other = _objectWithoutPropertiesLoose(_ref, _excluded);\n if (process.env.NODE_ENV !== 'production') {\n if (typeof fontSize !== 'number') {\n console.error('MUI: `fontSize` is required to be a number.');\n }\n if (typeof htmlFontSize !== 'number') {\n console.error('MUI: `htmlFontSize` is required to be a number.');\n }\n }\n const coef = fontSize / 14;\n const pxToRem = pxToRem2 || (size => `${size / htmlFontSize * coef}rem`);\n const buildVariant = (fontWeight, size, lineHeight, letterSpacing, casing) => _extends({\n fontFamily,\n fontWeight,\n fontSize: pxToRem(size),\n // Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/\n lineHeight\n }, fontFamily === defaultFontFamily ? {\n letterSpacing: `${round(letterSpacing / size)}em`\n } : {}, casing, allVariants);\n const variants = {\n h1: buildVariant(fontWeightLight, 96, 1.167, -1.5),\n h2: buildVariant(fontWeightLight, 60, 1.2, -0.5),\n h3: buildVariant(fontWeightRegular, 48, 1.167, 0),\n h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25),\n h5: buildVariant(fontWeightRegular, 24, 1.334, 0),\n h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15),\n subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15),\n subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1),\n body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15),\n body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15),\n button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps),\n caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),\n overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps),\n inherit: {\n fontFamily: 'inherit',\n fontWeight: 'inherit',\n fontSize: 'inherit',\n lineHeight: 'inherit',\n letterSpacing: 'inherit'\n }\n };\n return deepmerge(_extends({\n htmlFontSize,\n pxToRem,\n fontFamily,\n fontSize,\n fontWeightLight,\n fontWeightRegular,\n fontWeightMedium,\n fontWeightBold\n }, variants), other, {\n clone: false // No need to clone deep\n });\n}","const shadowKeyUmbraOpacity = 0.2;\nconst shadowKeyPenumbraOpacity = 0.14;\nconst shadowAmbientShadowOpacity = 0.12;\nfunction createShadow(...px) {\n return [`${px[0]}px ${px[1]}px ${px[2]}px ${px[3]}px rgba(0,0,0,${shadowKeyUmbraOpacity})`, `${px[4]}px ${px[5]}px ${px[6]}px ${px[7]}px rgba(0,0,0,${shadowKeyPenumbraOpacity})`, `${px[8]}px ${px[9]}px ${px[10]}px ${px[11]}px rgba(0,0,0,${shadowAmbientShadowOpacity})`].join(',');\n}\n\n// Values from https://github.com/material-components/material-components-web/blob/be8747f94574669cb5e7add1a7c54fa41a89cec7/packages/mdc-elevation/_variables.scss\nconst shadows = ['none', createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)];\nexport default shadows;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"duration\", \"easing\", \"delay\"];\n// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves\n// to learn the context in which each easing should be used.\nexport const easing = {\n // This is the most common easing curve.\n easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',\n // Objects enter the screen at full velocity from off-screen and\n // slowly decelerate to a resting point.\n easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',\n // Objects leave the screen at full velocity. They do not decelerate when off-screen.\n easeIn: 'cubic-bezier(0.4, 0, 1, 1)',\n // The sharp curve is used by objects that may return to the screen at any time.\n sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'\n};\n\n// Follow https://m2.material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations\n// to learn when use what timing\nexport const duration = {\n shortest: 150,\n shorter: 200,\n short: 250,\n // most basic recommended timing\n standard: 300,\n // this is to be used in complex animations\n complex: 375,\n // recommended when something is entering screen\n enteringScreen: 225,\n // recommended when something is leaving screen\n leavingScreen: 195\n};\nfunction formatMs(milliseconds) {\n return `${Math.round(milliseconds)}ms`;\n}\nfunction getAutoHeightDuration(height) {\n if (!height) {\n return 0;\n }\n const constant = height / 36;\n\n // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10\n return Math.round((4 + 15 * constant ** 0.25 + constant / 5) * 10);\n}\nexport default function createTransitions(inputTransitions) {\n const mergedEasing = _extends({}, easing, inputTransitions.easing);\n const mergedDuration = _extends({}, duration, inputTransitions.duration);\n const create = (props = ['all'], options = {}) => {\n const {\n duration: durationOption = mergedDuration.standard,\n easing: easingOption = mergedEasing.easeInOut,\n delay = 0\n } = options,\n other = _objectWithoutPropertiesLoose(options, _excluded);\n if (process.env.NODE_ENV !== 'production') {\n const isString = value => typeof value === 'string';\n // IE11 support, replace with Number.isNaN\n // eslint-disable-next-line no-restricted-globals\n const isNumber = value => !isNaN(parseFloat(value));\n if (!isString(props) && !Array.isArray(props)) {\n console.error('MUI: Argument \"props\" must be a string or Array.');\n }\n if (!isNumber(durationOption) && !isString(durationOption)) {\n console.error(`MUI: Argument \"duration\" must be a number or a string but found ${durationOption}.`);\n }\n if (!isString(easingOption)) {\n console.error('MUI: Argument \"easing\" must be a string.');\n }\n if (!isNumber(delay) && !isString(delay)) {\n console.error('MUI: Argument \"delay\" must be a number or a string.');\n }\n if (Object.keys(other).length !== 0) {\n console.error(`MUI: Unrecognized argument(s) [${Object.keys(other).join(',')}].`);\n }\n }\n return (Array.isArray(props) ? props : [props]).map(animatedProp => `${animatedProp} ${typeof durationOption === 'string' ? durationOption : formatMs(durationOption)} ${easingOption} ${typeof delay === 'string' ? delay : formatMs(delay)}`).join(',');\n };\n return _extends({\n getAutoHeightDuration,\n create\n }, inputTransitions, {\n easing: mergedEasing,\n duration: mergedDuration\n });\n}","// We need to centralize the zIndex definitions as they work\n// like global values in the browser.\nconst zIndex = {\n mobileStepper: 1000,\n fab: 1050,\n speedDial: 1050,\n appBar: 1100,\n drawer: 1200,\n modal: 1300,\n snackbar: 1400,\n tooltip: 1500\n};\nexport default zIndex;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\nconst _excluded = [\"breakpoints\", \"mixins\", \"spacing\", \"palette\", \"transitions\", \"typography\", \"shape\"];\nimport { deepmerge } from '@mui/utils';\nimport { createTheme as systemCreateTheme, unstable_defaultSxConfig as defaultSxConfig, unstable_styleFunctionSx as styleFunctionSx } from '@mui/system';\nimport generateUtilityClass from '../generateUtilityClass';\nimport createMixins from './createMixins';\nimport createPalette from './createPalette';\nimport createTypography from './createTypography';\nimport shadows from './shadows';\nimport createTransitions from './createTransitions';\nimport zIndex from './zIndex';\nfunction createTheme(options = {}, ...args) {\n const {\n mixins: mixinsInput = {},\n palette: paletteInput = {},\n transitions: transitionsInput = {},\n typography: typographyInput = {}\n } = options,\n other = _objectWithoutPropertiesLoose(options, _excluded);\n if (options.vars) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: \\`vars\\` is a private field used for CSS variables support.\nPlease use another name.` : _formatMuiErrorMessage(18));\n }\n const palette = createPalette(paletteInput);\n const systemTheme = systemCreateTheme(options);\n let muiTheme = deepmerge(systemTheme, {\n mixins: createMixins(systemTheme.breakpoints, mixinsInput),\n palette,\n // Don't use [...shadows] until you've verified its transpiled code is not invoking the iterator protocol.\n shadows: shadows.slice(),\n typography: createTypography(palette, typographyInput),\n transitions: createTransitions(transitionsInput),\n zIndex: _extends({}, zIndex)\n });\n muiTheme = deepmerge(muiTheme, other);\n muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);\n if (process.env.NODE_ENV !== 'production') {\n // TODO v6: Refactor to use globalStateClassesMapping from @mui/utils once `readOnly` state class is used in Rating component.\n const stateClasses = ['active', 'checked', 'completed', 'disabled', 'error', 'expanded', 'focused', 'focusVisible', 'required', 'selected'];\n const traverse = (node, component) => {\n let key;\n\n // eslint-disable-next-line guard-for-in, no-restricted-syntax\n for (key in node) {\n const child = node[key];\n if (stateClasses.indexOf(key) !== -1 && Object.keys(child).length > 0) {\n if (process.env.NODE_ENV !== 'production') {\n const stateClass = generateUtilityClass('', key);\n console.error([`MUI: The \\`${component}\\` component increases ` + `the CSS specificity of the \\`${key}\\` internal state.`, 'You can not override it like this: ', JSON.stringify(node, null, 2), '', `Instead, you need to use the '&.${stateClass}' syntax:`, JSON.stringify({\n root: {\n [`&.${stateClass}`]: child\n }\n }, null, 2), '', 'https://mui.com/r/state-classes-guide'].join('\\n'));\n }\n // Remove the style to prevent global conflicts.\n node[key] = {};\n }\n }\n };\n Object.keys(muiTheme.components).forEach(component => {\n const styleOverrides = muiTheme.components[component].styleOverrides;\n if (styleOverrides && component.indexOf('Mui') === 0) {\n traverse(styleOverrides, component);\n }\n });\n }\n muiTheme.unstable_sxConfig = _extends({}, defaultSxConfig, other == null ? void 0 : other.unstable_sxConfig);\n muiTheme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n return muiTheme;\n}\nlet warnedOnce = false;\nexport function createMuiTheme(...args) {\n if (process.env.NODE_ENV !== 'production') {\n if (!warnedOnce) {\n warnedOnce = true;\n console.error(['MUI: the createMuiTheme function was renamed to createTheme.', '', \"You should use `import { createTheme } from '@mui/material/styles'`\"].join('\\n'));\n }\n }\n return createTheme(...args);\n}\nexport default createTheme;","import createTheme from './createTheme';\nconst defaultTheme = createTheme();\nexport default defaultTheme;","export default '$$material';","import { createStyled, shouldForwardProp } from '@mui/system';\nimport defaultTheme from './defaultTheme';\nimport THEME_ID from './identifier';\nexport const rootShouldForwardProp = prop => shouldForwardProp(prop) && prop !== 'classes';\nexport const slotShouldForwardProp = shouldForwardProp;\nconst styled = createStyled({\n themeId: THEME_ID,\n defaultTheme,\n rootShouldForwardProp\n});\nexport default styled;","/**\n * @mui/styled-engine v5.13.2\n *\n * @license MIT\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/* eslint-disable no-underscore-dangle */\nimport emStyled from '@emotion/styled';\nexport default function styled(tag, options) {\n const stylesFactory = emStyled(tag, options);\n if (process.env.NODE_ENV !== 'production') {\n return (...styles) => {\n const component = typeof tag === 'string' ? `\"${tag}\"` : 'component';\n if (styles.length === 0) {\n console.error([`MUI: Seems like you called \\`styled(${component})()\\` without a \\`style\\` argument.`, 'You must provide a `styles` argument: `styled(\"div\")(styleYouForgotToPass)`.'].join('\\n'));\n } else if (styles.some(style => style === undefined)) {\n console.error(`MUI: the styled(${component})(...args) API requires all its args to be defined.`);\n }\n return stylesFactory(...styles);\n };\n }\n return stylesFactory;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const internal_processStyles = (tag, processor) => {\n // Emotion attaches all the styles as `__emotion_styles`.\n // Ref: https://github.com/emotion-js/emotion/blob/16d971d0da229596d6bcc39d282ba9753c9ee7cf/packages/styled/src/base.js#L186\n if (Array.isArray(tag.__emotion_styles)) {\n tag.__emotion_styles = processor(tag.__emotion_styles);\n }\n};\nexport { ThemeContext, keyframes, css } from '@emotion/react';\nexport { default as StyledEngineProvider } from './StyledEngineProvider';\nexport { default as GlobalStyles } from './GlobalStyles';","import { internal_resolveProps as resolveProps } from '@mui/utils';\nexport default function getThemeProps(params) {\n const {\n theme,\n name,\n props\n } = params;\n if (!theme || !theme.components || !theme.components[name] || !theme.components[name].defaultProps) {\n return props;\n }\n return resolveProps(theme.components[name].defaultProps, props);\n}","import * as React from 'react';\nimport { ThemeContext } from '@mui/styled-engine';\nfunction isObjectEmpty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction useTheme(defaultTheme = null) {\n const contextTheme = React.useContext(ThemeContext);\n return !contextTheme || isObjectEmpty(contextTheme) ? defaultTheme : contextTheme;\n}\nexport default useTheme;","import createTheme from './createTheme';\nimport useThemeWithoutDefault from './useThemeWithoutDefault';\nexport const systemDefaultTheme = createTheme();\nfunction useTheme(defaultTheme = systemDefaultTheme) {\n return useThemeWithoutDefault(defaultTheme);\n}\nexport default useTheme;","import { useThemeProps as systemUseThemeProps } from '@mui/system';\nimport defaultTheme from './defaultTheme';\nimport THEME_ID from './identifier';\nexport default function useThemeProps({\n props,\n name\n}) {\n return systemUseThemeProps({\n props,\n name,\n defaultTheme,\n themeId: THEME_ID\n });\n}","import getThemeProps from './getThemeProps';\nimport useTheme from '../useTheme';\nexport default function useThemeProps({\n props,\n name,\n defaultTheme,\n themeId\n}) {\n let theme = useTheme(defaultTheme);\n if (themeId) {\n theme = theme[themeId] || theme;\n }\n const mergedProps = getThemeProps({\n theme,\n name,\n props\n });\n return mergedProps;\n}","/**\n * TODO v5: consider making it private\n *\n * passes {value} to {ref}\n *\n * WARNING: Be sure to only call this inside a callback that is passed as a ref.\n * Otherwise, make sure to cleanup the previous {ref} if it changes. See\n * https://github.com/mui/material-ui/issues/13539\n *\n * Useful if you want to expose the ref of an inner component to the public API\n * while still using it inside the component.\n * @param ref A ref callback or ref object. If anything falsy, this is a no-op.\n */\nexport default function setRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref) {\n ref.current = value;\n }\n}","import * as React from 'react';\nimport setRef from './setRef';\nexport default function useForkRef(...refs) {\n /**\n * This will create a new function if the refs passed to this hook change and are all defined.\n * This means react will call the old forkRef with `null` and the new forkRef\n * with the ref. Cleanup naturally emerges from this behavior.\n */\n return React.useMemo(() => {\n if (refs.every(ref => ref == null)) {\n return null;\n }\n return instance => {\n refs.forEach(ref => {\n setRef(ref, instance);\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}","import { unstable_useForkRef as useForkRef } from '@mui/utils';\nexport default useForkRef;","import * as React from 'react';\nconst useEnhancedEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nexport default useEnhancedEffect;","import * as React from 'react';\nimport useEnhancedEffect from './useEnhancedEffect';\n\n/**\n * https://github.com/facebook/react/issues/14099#issuecomment-440013892\n */\nexport default function useEventCallback(fn) {\n const ref = React.useRef(fn);\n useEnhancedEffect(() => {\n ref.current = fn;\n });\n return React.useCallback((...args) =>\n // @ts-expect-error hide `this`\n // tslint:disable-next-line:ban-comma-operator\n (0, ref.current)(...args), []);\n}","import { unstable_useEventCallback as useEventCallback } from '@mui/utils';\nexport default useEventCallback;","// based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js\nimport * as React from 'react';\nlet hadKeyboardEvent = true;\nlet hadFocusVisibleRecently = false;\nlet hadFocusVisibleRecentlyTimeout;\nconst inputTypesWhitelist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n};\n\n/**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} node\n * @returns {boolean}\n */\nfunction focusTriggersKeyboardModality(node) {\n const {\n type,\n tagName\n } = node;\n if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {\n return true;\n }\n if (tagName === 'TEXTAREA' && !node.readOnly) {\n return true;\n }\n if (node.isContentEditable) {\n return true;\n }\n return false;\n}\n\n/**\n * Keep track of our keyboard modality state with `hadKeyboardEvent`.\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * @param {KeyboardEvent} event\n */\nfunction handleKeyDown(event) {\n if (event.metaKey || event.altKey || event.ctrlKey) {\n return;\n }\n hadKeyboardEvent = true;\n}\n\n/**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n */\nfunction handlePointerDown() {\n hadKeyboardEvent = false;\n}\nfunction handleVisibilityChange() {\n if (this.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n }\n}\nfunction prepare(doc) {\n doc.addEventListener('keydown', handleKeyDown, true);\n doc.addEventListener('mousedown', handlePointerDown, true);\n doc.addEventListener('pointerdown', handlePointerDown, true);\n doc.addEventListener('touchstart', handlePointerDown, true);\n doc.addEventListener('visibilitychange', handleVisibilityChange, true);\n}\nexport function teardown(doc) {\n doc.removeEventListener('keydown', handleKeyDown, true);\n doc.removeEventListener('mousedown', handlePointerDown, true);\n doc.removeEventListener('pointerdown', handlePointerDown, true);\n doc.removeEventListener('touchstart', handlePointerDown, true);\n doc.removeEventListener('visibilitychange', handleVisibilityChange, true);\n}\nfunction isFocusVisible(event) {\n const {\n target\n } = event;\n try {\n return target.matches(':focus-visible');\n } catch (error) {\n // Browsers not implementing :focus-visible will throw a SyntaxError.\n // We use our own heuristic for those browsers.\n // Rethrow might be better if it's not the expected error but do we really\n // want to crash if focus-visible malfunctioned?\n }\n\n // No need for validFocusTarget check. The user does that by attaching it to\n // focusable events only.\n return hadKeyboardEvent || focusTriggersKeyboardModality(target);\n}\nexport default function useIsFocusVisible() {\n const ref = React.useCallback(node => {\n if (node != null) {\n prepare(node.ownerDocument);\n }\n }, []);\n const isFocusVisibleRef = React.useRef(false);\n\n /**\n * Should be called if a blur event is fired\n */\n function handleBlurVisible() {\n // checking against potential state variable does not suffice if we focus and blur synchronously.\n // React wouldn't have time to trigger a re-render so `focusVisible` would be stale.\n // Ideally we would adjust `isFocusVisible(event)` to look at `relatedTarget` for blur events.\n // This doesn't work in IE11 due to https://github.com/facebook/react/issues/3751\n // TODO: check again if React releases their internal changes to focus event handling (https://github.com/facebook/react/pull/19186).\n if (isFocusVisibleRef.current) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(() => {\n hadFocusVisibleRecently = false;\n }, 100);\n isFocusVisibleRef.current = false;\n return true;\n }\n return false;\n }\n\n /**\n * Should be called if a blur event is fired\n */\n function handleFocusVisible(event) {\n if (isFocusVisible(event)) {\n isFocusVisibleRef.current = true;\n return true;\n }\n return false;\n }\n return {\n isFocusVisibleRef,\n onFocus: handleFocusVisible,\n onBlur: handleBlurVisible,\n ref\n };\n}","import { unstable_useIsFocusVisible as useIsFocusVisible } from '@mui/utils';\nexport default useIsFocusVisible;","export default function _taggedTemplateLiteral(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n return Object.freeze(Object.defineProperties(strings, {\n raw: {\n value: Object.freeze(raw)\n }\n }));\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 _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","import React from 'react';\nexport default React.createContext(null);","import { Children, cloneElement, isValidElement } from 'react';\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\n\nexport function getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && isValidElement(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\nexport function mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nexport function getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\nexport function getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!isValidElement(child)) return;\n var hasPrev = (key in prevChildMapping);\n var hasNext = (key in nextChildMapping);\n var prevChild = prevChildMapping[key];\n var isLeaving = isValidElement(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = cloneElement(child, {\n in: false\n });\n } else if (hasNext && hasPrev && isValidElement(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { getChildMapping, getInitialChildMapping, getNextChildMapping } from './utils/ChildMapping';\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n/**\n * The `` component manages a set of transition components\n * (`` and ``) in a list. Like with the transition\n * components, `` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the ``.\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\nvar TransitionGroup = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_this)); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n contextValue: {\n isMounting: true\n },\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.mounted = true;\n this.setState({\n contextValue: {\n isMounting: false\n }\n });\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? getInitialChildMapping(nextProps, handleExited) : getNextChildMapping(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n } // node is `undefined` when user provided `nodeRef` prop\n ;\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = getChildMapping(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var contextValue = this.state.contextValue;\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Component, props, children));\n };\n\n return TransitionGroup;\n}(React.Component);\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `
` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: PropTypes.any,\n\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: PropTypes.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: PropTypes.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\nexport default TransitionGroup;","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 { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction Ripple(props) {\n const {\n className,\n classes,\n pulsate = false,\n rippleX,\n rippleY,\n rippleSize,\n in: inProp,\n onExited,\n timeout\n } = props;\n const [leaving, setLeaving] = React.useState(false);\n const rippleClassName = clsx(className, classes.ripple, classes.rippleVisible, pulsate && classes.ripplePulsate);\n const rippleStyles = {\n width: rippleSize,\n height: rippleSize,\n top: -(rippleSize / 2) + rippleY,\n left: -(rippleSize / 2) + rippleX\n };\n const childClassName = clsx(classes.child, leaving && classes.childLeaving, pulsate && classes.childPulsate);\n if (!inProp && !leaving) {\n setLeaving(true);\n }\n React.useEffect(() => {\n if (!inProp && onExited != null) {\n // react-transition-group#onExited\n const timeoutId = setTimeout(onExited, timeout);\n return () => {\n clearTimeout(timeoutId);\n };\n }\n return undefined;\n }, [onExited, inProp, timeout]);\n return /*#__PURE__*/_jsx(\"span\", {\n className: rippleClassName,\n style: rippleStyles,\n children: /*#__PURE__*/_jsx(\"span\", {\n className: childClassName\n })\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? Ripple.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n /**\n * @ignore - injected from TransitionGroup\n */\n in: PropTypes.bool,\n /**\n * @ignore - injected from TransitionGroup\n */\n onExited: PropTypes.func,\n /**\n * If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.\n */\n pulsate: PropTypes.bool,\n /**\n * Diameter of the ripple.\n */\n rippleSize: PropTypes.number,\n /**\n * Horizontal position of the ripple center.\n */\n rippleX: PropTypes.number,\n /**\n * Vertical position of the ripple center.\n */\n rippleY: PropTypes.number,\n /**\n * exit delay\n */\n timeout: PropTypes.number.isRequired\n} : void 0;\nexport default Ripple;","const defaultGenerator = componentName => componentName;\nconst createClassNameGenerator = () => {\n let generate = defaultGenerator;\n return {\n configure(generator) {\n generate = generator;\n },\n generate(componentName) {\n return generate(componentName);\n },\n reset() {\n generate = defaultGenerator;\n }\n };\n};\nconst ClassNameGenerator = createClassNameGenerator();\nexport default ClassNameGenerator;","import ClassNameGenerator from '../ClassNameGenerator';\nconst globalStateClassesMapping = {\n active: 'active',\n checked: 'checked',\n completed: 'completed',\n disabled: 'disabled',\n readOnly: 'readOnly',\n error: 'error',\n expanded: 'expanded',\n focused: 'focused',\n focusVisible: 'focusVisible',\n required: 'required',\n selected: 'selected'\n};\nexport default function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {\n const globalStateClass = globalStateClassesMapping[slot];\n return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator.generate(componentName)}-${slot}`;\n}","import generateUtilityClass from '../generateUtilityClass';\nexport default function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {\n const result = {};\n slots.forEach(slot => {\n result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);\n });\n return result;\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTouchRippleUtilityClass(slot) {\n return generateUtilityClass('MuiTouchRipple', slot);\n}\nconst touchRippleClasses = generateUtilityClasses('MuiTouchRipple', ['root', 'ripple', 'rippleVisible', 'ripplePulsate', 'child', 'childLeaving', 'childPulsate']);\nexport default touchRippleClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"center\", \"classes\", \"className\"];\nlet _ = t => t,\n _t,\n _t2,\n _t3,\n _t4;\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { TransitionGroup } from 'react-transition-group';\nimport clsx from 'clsx';\nimport { keyframes } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport Ripple from './Ripple';\nimport touchRippleClasses from './touchRippleClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DURATION = 550;\nexport const DELAY_RIPPLE = 80;\nconst enterKeyframe = keyframes(_t || (_t = _`\n 0% {\n transform: scale(0);\n opacity: 0.1;\n }\n\n 100% {\n transform: scale(1);\n opacity: 0.3;\n }\n`));\nconst exitKeyframe = keyframes(_t2 || (_t2 = _`\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n`));\nconst pulsateKeyframe = keyframes(_t3 || (_t3 = _`\n 0% {\n transform: scale(1);\n }\n\n 50% {\n transform: scale(0.92);\n }\n\n 100% {\n transform: scale(1);\n }\n`));\nexport const TouchRippleRoot = styled('span', {\n name: 'MuiTouchRipple',\n slot: 'Root'\n})({\n overflow: 'hidden',\n pointerEvents: 'none',\n position: 'absolute',\n zIndex: 0,\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n borderRadius: 'inherit'\n});\n\n// This `styled()` function invokes keyframes. `styled-components` only supports keyframes\n// in string templates. Do not convert these styles in JS object as it will break.\nexport const TouchRippleRipple = styled(Ripple, {\n name: 'MuiTouchRipple',\n slot: 'Ripple'\n})(_t4 || (_t4 = _`\n opacity: 0;\n position: absolute;\n\n &.${0} {\n opacity: 0.3;\n transform: scale(1);\n animation-name: ${0};\n animation-duration: ${0}ms;\n animation-timing-function: ${0};\n }\n\n &.${0} {\n animation-duration: ${0}ms;\n }\n\n & .${0} {\n opacity: 1;\n display: block;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: currentColor;\n }\n\n & .${0} {\n opacity: 0;\n animation-name: ${0};\n animation-duration: ${0}ms;\n animation-timing-function: ${0};\n }\n\n & .${0} {\n position: absolute;\n /* @noflip */\n left: 0px;\n top: 0;\n animation-name: ${0};\n animation-duration: 2500ms;\n animation-timing-function: ${0};\n animation-iteration-count: infinite;\n animation-delay: 200ms;\n }\n`), touchRippleClasses.rippleVisible, enterKeyframe, DURATION, ({\n theme\n}) => theme.transitions.easing.easeInOut, touchRippleClasses.ripplePulsate, ({\n theme\n}) => theme.transitions.duration.shorter, touchRippleClasses.child, touchRippleClasses.childLeaving, exitKeyframe, DURATION, ({\n theme\n}) => theme.transitions.easing.easeInOut, touchRippleClasses.childPulsate, pulsateKeyframe, ({\n theme\n}) => theme.transitions.easing.easeInOut);\n\n/**\n * @ignore - internal component.\n *\n * TODO v5: Make private\n */\nconst TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTouchRipple'\n });\n const {\n center: centerProp = false,\n classes = {},\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [ripples, setRipples] = React.useState([]);\n const nextKey = React.useRef(0);\n const rippleCallback = React.useRef(null);\n React.useEffect(() => {\n if (rippleCallback.current) {\n rippleCallback.current();\n rippleCallback.current = null;\n }\n }, [ripples]);\n\n // Used to filter out mouse emulated events on mobile.\n const ignoringMouseDown = React.useRef(false);\n // We use a timer in order to only show the ripples for touch \"click\" like events.\n // We don't want to display the ripple for touch scroll events.\n const startTimer = React.useRef(null);\n\n // This is the hook called once the previous timeout is ready.\n const startTimerCommit = React.useRef(null);\n const container = React.useRef(null);\n React.useEffect(() => {\n return () => {\n clearTimeout(startTimer.current);\n };\n }, []);\n const startCommit = React.useCallback(params => {\n const {\n pulsate,\n rippleX,\n rippleY,\n rippleSize,\n cb\n } = params;\n setRipples(oldRipples => [...oldRipples, /*#__PURE__*/_jsx(TouchRippleRipple, {\n classes: {\n ripple: clsx(classes.ripple, touchRippleClasses.ripple),\n rippleVisible: clsx(classes.rippleVisible, touchRippleClasses.rippleVisible),\n ripplePulsate: clsx(classes.ripplePulsate, touchRippleClasses.ripplePulsate),\n child: clsx(classes.child, touchRippleClasses.child),\n childLeaving: clsx(classes.childLeaving, touchRippleClasses.childLeaving),\n childPulsate: clsx(classes.childPulsate, touchRippleClasses.childPulsate)\n },\n timeout: DURATION,\n pulsate: pulsate,\n rippleX: rippleX,\n rippleY: rippleY,\n rippleSize: rippleSize\n }, nextKey.current)]);\n nextKey.current += 1;\n rippleCallback.current = cb;\n }, [classes]);\n const start = React.useCallback((event = {}, options = {}, cb = () => {}) => {\n const {\n pulsate = false,\n center = centerProp || options.pulsate,\n fakeElement = false // For test purposes\n } = options;\n if ((event == null ? void 0 : event.type) === 'mousedown' && ignoringMouseDown.current) {\n ignoringMouseDown.current = false;\n return;\n }\n if ((event == null ? void 0 : event.type) === 'touchstart') {\n ignoringMouseDown.current = true;\n }\n const element = fakeElement ? null : container.current;\n const rect = element ? element.getBoundingClientRect() : {\n width: 0,\n height: 0,\n left: 0,\n top: 0\n };\n\n // Get the size of the ripple\n let rippleX;\n let rippleY;\n let rippleSize;\n if (center || event === undefined || event.clientX === 0 && event.clientY === 0 || !event.clientX && !event.touches) {\n rippleX = Math.round(rect.width / 2);\n rippleY = Math.round(rect.height / 2);\n } else {\n const {\n clientX,\n clientY\n } = event.touches && event.touches.length > 0 ? event.touches[0] : event;\n rippleX = Math.round(clientX - rect.left);\n rippleY = Math.round(clientY - rect.top);\n }\n if (center) {\n rippleSize = Math.sqrt((2 * rect.width ** 2 + rect.height ** 2) / 3);\n\n // For some reason the animation is broken on Mobile Chrome if the size is even.\n if (rippleSize % 2 === 0) {\n rippleSize += 1;\n }\n } else {\n const sizeX = Math.max(Math.abs((element ? element.clientWidth : 0) - rippleX), rippleX) * 2 + 2;\n const sizeY = Math.max(Math.abs((element ? element.clientHeight : 0) - rippleY), rippleY) * 2 + 2;\n rippleSize = Math.sqrt(sizeX ** 2 + sizeY ** 2);\n }\n\n // Touche devices\n if (event != null && event.touches) {\n // check that this isn't another touchstart due to multitouch\n // otherwise we will only clear a single timer when unmounting while two\n // are running\n if (startTimerCommit.current === null) {\n // Prepare the ripple effect.\n startTimerCommit.current = () => {\n startCommit({\n pulsate,\n rippleX,\n rippleY,\n rippleSize,\n cb\n });\n };\n // Delay the execution of the ripple effect.\n startTimer.current = setTimeout(() => {\n if (startTimerCommit.current) {\n startTimerCommit.current();\n startTimerCommit.current = null;\n }\n }, DELAY_RIPPLE); // We have to make a tradeoff with this value.\n }\n } else {\n startCommit({\n pulsate,\n rippleX,\n rippleY,\n rippleSize,\n cb\n });\n }\n }, [centerProp, startCommit]);\n const pulsate = React.useCallback(() => {\n start({}, {\n pulsate: true\n });\n }, [start]);\n const stop = React.useCallback((event, cb) => {\n clearTimeout(startTimer.current);\n\n // The touch interaction occurs too quickly.\n // We still want to show ripple effect.\n if ((event == null ? void 0 : event.type) === 'touchend' && startTimerCommit.current) {\n startTimerCommit.current();\n startTimerCommit.current = null;\n startTimer.current = setTimeout(() => {\n stop(event, cb);\n });\n return;\n }\n startTimerCommit.current = null;\n setRipples(oldRipples => {\n if (oldRipples.length > 0) {\n return oldRipples.slice(1);\n }\n return oldRipples;\n });\n rippleCallback.current = cb;\n }, []);\n React.useImperativeHandle(ref, () => ({\n pulsate,\n start,\n stop\n }), [pulsate, start, stop]);\n return /*#__PURE__*/_jsx(TouchRippleRoot, _extends({\n className: clsx(touchRippleClasses.root, classes.root, className),\n ref: container\n }, other, {\n children: /*#__PURE__*/_jsx(TransitionGroup, {\n component: null,\n exit: true,\n children: ripples\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TouchRipple.propTypes = {\n /**\n * If `true`, the ripple starts at the center of the component\n * rather than at the point of interaction.\n */\n center: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string\n} : void 0;\nexport default TouchRipple;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getButtonBaseUtilityClass(slot) {\n return generateUtilityClass('MuiButtonBase', slot);\n}\nconst buttonBaseClasses = generateUtilityClasses('MuiButtonBase', ['root', 'disabled', 'focusVisible']);\nexport default buttonBaseClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"action\", \"centerRipple\", \"children\", \"className\", \"component\", \"disabled\", \"disableRipple\", \"disableTouchRipple\", \"focusRipple\", \"focusVisibleClassName\", \"LinkComponent\", \"onBlur\", \"onClick\", \"onContextMenu\", \"onDragLeave\", \"onFocus\", \"onFocusVisible\", \"onKeyDown\", \"onKeyUp\", \"onMouseDown\", \"onMouseLeave\", \"onMouseUp\", \"onTouchEnd\", \"onTouchMove\", \"onTouchStart\", \"tabIndex\", \"TouchRippleProps\", \"touchRippleRef\", \"type\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { elementTypeAcceptingRef, refType } from '@mui/utils';\nimport composeClasses from '@mui/base/composeClasses';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport useForkRef from '../utils/useForkRef';\nimport useEventCallback from '../utils/useEventCallback';\nimport useIsFocusVisible from '../utils/useIsFocusVisible';\nimport TouchRipple from './TouchRipple';\nimport buttonBaseClasses, { getButtonBaseUtilityClass } from './buttonBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n focusVisible,\n focusVisibleClassName,\n classes\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', focusVisible && 'focusVisible']\n };\n const composedClasses = composeClasses(slots, getButtonBaseUtilityClass, classes);\n if (focusVisible && focusVisibleClassName) {\n composedClasses.root += ` ${focusVisibleClassName}`;\n }\n return composedClasses;\n};\nexport const ButtonBaseRoot = styled('button', {\n name: 'MuiButtonBase',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'relative',\n boxSizing: 'border-box',\n WebkitTapHighlightColor: 'transparent',\n backgroundColor: 'transparent',\n // Reset default value\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n border: 0,\n margin: 0,\n // Remove the margin in Safari\n borderRadius: 0,\n padding: 0,\n // Remove the padding in Firefox\n cursor: 'pointer',\n userSelect: 'none',\n verticalAlign: 'middle',\n MozAppearance: 'none',\n // Reset\n WebkitAppearance: 'none',\n // Reset\n textDecoration: 'none',\n // So we take precedent over the style of a native element.\n color: 'inherit',\n '&::-moz-focus-inner': {\n borderStyle: 'none' // Remove Firefox dotted outline.\n },\n\n [`&.${buttonBaseClasses.disabled}`]: {\n pointerEvents: 'none',\n // Disable link interactions\n cursor: 'default'\n },\n '@media print': {\n colorAdjust: 'exact'\n }\n});\n\n/**\n * `ButtonBase` contains as few styles as possible.\n * It aims to be a simple building block for creating a button.\n * It contains a load of style reset and some focus/ripple logic.\n */\nconst ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiButtonBase'\n });\n const {\n action,\n centerRipple = false,\n children,\n className,\n component = 'button',\n disabled = false,\n disableRipple = false,\n disableTouchRipple = false,\n focusRipple = false,\n LinkComponent = 'a',\n onBlur,\n onClick,\n onContextMenu,\n onDragLeave,\n onFocus,\n onFocusVisible,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseLeave,\n onMouseUp,\n onTouchEnd,\n onTouchMove,\n onTouchStart,\n tabIndex = 0,\n TouchRippleProps,\n touchRippleRef,\n type\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const buttonRef = React.useRef(null);\n const rippleRef = React.useRef(null);\n const handleRippleRef = useForkRef(rippleRef, touchRippleRef);\n const {\n isFocusVisibleRef,\n onFocus: handleFocusVisible,\n onBlur: handleBlurVisible,\n ref: focusVisibleRef\n } = useIsFocusVisible();\n const [focusVisible, setFocusVisible] = React.useState(false);\n if (disabled && focusVisible) {\n setFocusVisible(false);\n }\n React.useImperativeHandle(action, () => ({\n focusVisible: () => {\n setFocusVisible(true);\n buttonRef.current.focus();\n }\n }), []);\n const [mountedState, setMountedState] = React.useState(false);\n React.useEffect(() => {\n setMountedState(true);\n }, []);\n const enableTouchRipple = mountedState && !disableRipple && !disabled;\n React.useEffect(() => {\n if (focusVisible && focusRipple && !disableRipple && mountedState) {\n rippleRef.current.pulsate();\n }\n }, [disableRipple, focusRipple, focusVisible, mountedState]);\n function useRippleHandler(rippleAction, eventCallback, skipRippleAction = disableTouchRipple) {\n return useEventCallback(event => {\n if (eventCallback) {\n eventCallback(event);\n }\n const ignore = skipRippleAction;\n if (!ignore && rippleRef.current) {\n rippleRef.current[rippleAction](event);\n }\n return true;\n });\n }\n const handleMouseDown = useRippleHandler('start', onMouseDown);\n const handleContextMenu = useRippleHandler('stop', onContextMenu);\n const handleDragLeave = useRippleHandler('stop', onDragLeave);\n const handleMouseUp = useRippleHandler('stop', onMouseUp);\n const handleMouseLeave = useRippleHandler('stop', event => {\n if (focusVisible) {\n event.preventDefault();\n }\n if (onMouseLeave) {\n onMouseLeave(event);\n }\n });\n const handleTouchStart = useRippleHandler('start', onTouchStart);\n const handleTouchEnd = useRippleHandler('stop', onTouchEnd);\n const handleTouchMove = useRippleHandler('stop', onTouchMove);\n const handleBlur = useRippleHandler('stop', event => {\n handleBlurVisible(event);\n if (isFocusVisibleRef.current === false) {\n setFocusVisible(false);\n }\n if (onBlur) {\n onBlur(event);\n }\n }, false);\n const handleFocus = useEventCallback(event => {\n // Fix for https://github.com/facebook/react/issues/7769\n if (!buttonRef.current) {\n buttonRef.current = event.currentTarget;\n }\n handleFocusVisible(event);\n if (isFocusVisibleRef.current === true) {\n setFocusVisible(true);\n if (onFocusVisible) {\n onFocusVisible(event);\n }\n }\n if (onFocus) {\n onFocus(event);\n }\n });\n const isNonNativeButton = () => {\n const button = buttonRef.current;\n return component && component !== 'button' && !(button.tagName === 'A' && button.href);\n };\n\n /**\n * IE11 shim for https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat\n */\n const keydownRef = React.useRef(false);\n const handleKeyDown = useEventCallback(event => {\n // Check if key is already down to avoid repeats being counted as multiple activations\n if (focusRipple && !keydownRef.current && focusVisible && rippleRef.current && event.key === ' ') {\n keydownRef.current = true;\n rippleRef.current.stop(event, () => {\n rippleRef.current.start(event);\n });\n }\n if (event.target === event.currentTarget && isNonNativeButton() && event.key === ' ') {\n event.preventDefault();\n }\n if (onKeyDown) {\n onKeyDown(event);\n }\n\n // Keyboard accessibility for non interactive elements\n if (event.target === event.currentTarget && isNonNativeButton() && event.key === 'Enter' && !disabled) {\n event.preventDefault();\n if (onClick) {\n onClick(event);\n }\n }\n });\n const handleKeyUp = useEventCallback(event => {\n // calling preventDefault in keyUp on a \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 * as React from 'react';\nimport { useTheme as useThemeSystem } from '@mui/system';\nimport defaultTheme from './defaultTheme';\nimport THEME_ID from './identifier';\nexport default function useTheme() {\n const theme = useThemeSystem(defaultTheme);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue(theme);\n }\n return theme[THEME_ID] || theme;\n}","export const reflow = node => node.scrollTop;\nexport function getTransitionProps(props, options) {\n var _style$transitionDura, _style$transitionTimi;\n const {\n timeout,\n easing,\n style = {}\n } = props;\n return {\n duration: (_style$transitionDura = style.transitionDuration) != null ? _style$transitionDura : typeof timeout === 'number' ? timeout : timeout[options.mode] || 0,\n easing: (_style$transitionTimi = style.transitionTimingFunction) != null ? _style$transitionTimi : typeof easing === 'object' ? easing[options.mode] : easing,\n delay: style.transitionDelay\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"addEndListener\", \"appear\", \"children\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { elementAcceptingRef } from '@mui/utils';\nimport { Transition } from 'react-transition-group';\nimport useTheme from '../styles/useTheme';\nimport { getTransitionProps, reflow } from '../transitions/utils';\nimport useForkRef from '../utils/useForkRef';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction getScale(value) {\n return `scale(${value}, ${value ** 2})`;\n}\nconst styles = {\n entering: {\n opacity: 1,\n transform: getScale(1)\n },\n entered: {\n opacity: 1,\n transform: 'none'\n }\n};\n\n/*\n TODO v6: remove\n Conditionally apply a workaround for the CSS transition bug in Safari 15.4 / WebKit browsers.\n */\nconst isWebKit154 = typeof navigator !== 'undefined' && /^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent) && /(os |version\\/)15(.|_)4/i.test(navigator.userAgent);\n\n/**\n * The Grow transition is used by the [Tooltip](/material-ui/react-tooltip/) and\n * [Popover](/material-ui/react-popover/) components.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {\n const {\n addEndListener,\n appear = true,\n children,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n style,\n timeout = 'auto',\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const timer = React.useRef();\n const autoTimeout = React.useRef();\n const theme = useTheme();\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(nodeRef, children.ref, ref);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const handleEntering = normalizedTransitionCallback(onEntering);\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n reflow(node); // So the animation always start from the start.\n\n const {\n duration: transitionDuration,\n delay,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n let duration;\n if (timeout === 'auto') {\n duration = theme.transitions.getAutoHeightDuration(node.clientHeight);\n autoTimeout.current = duration;\n } else {\n duration = transitionDuration;\n }\n node.style.transition = [theme.transitions.create('opacity', {\n duration,\n delay\n }), theme.transitions.create('transform', {\n duration: isWebKit154 ? duration : duration * 0.666,\n delay,\n easing: transitionTimingFunction\n })].join(',');\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback(onEntered);\n const handleExiting = normalizedTransitionCallback(onExiting);\n const handleExit = normalizedTransitionCallback(node => {\n const {\n duration: transitionDuration,\n delay,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n let duration;\n if (timeout === 'auto') {\n duration = theme.transitions.getAutoHeightDuration(node.clientHeight);\n autoTimeout.current = duration;\n } else {\n duration = transitionDuration;\n }\n node.style.transition = [theme.transitions.create('opacity', {\n duration,\n delay\n }), theme.transitions.create('transform', {\n duration: isWebKit154 ? duration : duration * 0.666,\n delay: isWebKit154 ? delay : delay || duration * 0.333,\n easing: transitionTimingFunction\n })].join(',');\n node.style.opacity = 0;\n node.style.transform = getScale(0.75);\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleAddEndListener = next => {\n if (timeout === 'auto') {\n timer.current = setTimeout(next, autoTimeout.current || 0);\n }\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n React.useEffect(() => {\n return () => {\n clearTimeout(timer.current);\n };\n }, []);\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n appear: appear,\n in: inProp,\n nodeRef: nodeRef,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n timeout: timeout === 'auto' ? null : timeout\n }, other, {\n children: (state, childProps) => {\n return /*#__PURE__*/React.cloneElement(children, _extends({\n style: _extends({\n opacity: 0,\n transform: getScale(0.75),\n visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n }, styles[state], style, children.props.style),\n ref: handleRef\n }, childProps));\n }\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Grow.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * Perform the enter transition when it first mounts if `in` is also `true`.\n * Set this to `false` to disable this behavior.\n * @default true\n */\n appear: PropTypes.bool,\n /**\n * A single child content element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n *\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default 'auto'\n */\n timeout: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nGrow.muiSupportAuto = true;\nexport default Grow;","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { exactProp, HTMLElementType, unstable_useEnhancedEffect as useEnhancedEffect, unstable_useForkRef as useForkRef, unstable_setRef as setRef } from '@mui/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction getContainer(container) {\n return typeof container === 'function' ? container() : container;\n}\n\n/**\n * Portals provide a first-class way to render children into a DOM node\n * that exists outside the DOM hierarchy of the parent component.\n *\n * Demos:\n *\n * - [Portal](https://mui.com/base/react-portal/)\n *\n * API:\n *\n * - [Portal API](https://mui.com/base/react-portal/components-api/#portal)\n */\nconst Portal = /*#__PURE__*/React.forwardRef(function Portal(props, forwardedRef) {\n const {\n children,\n container,\n disablePortal = false\n } = props;\n const [mountNode, setMountNode] = React.useState(null);\n // @ts-expect-error TODO upstream fix\n const handleRef = useForkRef( /*#__PURE__*/React.isValidElement(children) ? children.ref : null, forwardedRef);\n useEnhancedEffect(() => {\n if (!disablePortal) {\n setMountNode(getContainer(container) || document.body);\n }\n }, [container, disablePortal]);\n useEnhancedEffect(() => {\n if (mountNode && !disablePortal) {\n setRef(forwardedRef, mountNode);\n return () => {\n setRef(forwardedRef, null);\n };\n }\n return undefined;\n }, [forwardedRef, mountNode, disablePortal]);\n if (disablePortal) {\n if ( /*#__PURE__*/React.isValidElement(children)) {\n const newProps = {\n ref: handleRef\n };\n return /*#__PURE__*/React.cloneElement(children, newProps);\n }\n return /*#__PURE__*/_jsx(React.Fragment, {\n children: children\n });\n }\n return /*#__PURE__*/_jsx(React.Fragment, {\n children: mountNode ? /*#__PURE__*/ReactDOM.createPortal(children, mountNode) : mountNode\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Portal.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The children to render into the `container`.\n */\n children: PropTypes.node,\n /**\n * An HTML element or function that returns one.\n * The `container` will have the portal children appended to it.\n *\n * By default, it uses the body of the top-level document object,\n * so it's simply `document.body` most of the time.\n */\n container: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * The `children` will be under the DOM hierarchy of the parent component.\n * @default false\n */\n disablePortal: PropTypes.bool\n} : void 0;\nif (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line\n Portal['propTypes' + ''] = exactProp(Portal.propTypes);\n}\nexport default Portal;","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\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}","import { unstable_ownerWindow as ownerWindow, unstable_ownerDocument as ownerDocument, unstable_getScrollbarSize as getScrollbarSize } from '@mui/utils';\n// Is a vertical scrollbar displayed?\nfunction isOverflowing(container) {\n const doc = ownerDocument(container);\n if (doc.body === container) {\n return ownerWindow(container).innerWidth > doc.documentElement.clientWidth;\n }\n return container.scrollHeight > container.clientHeight;\n}\nexport function ariaHidden(element, show) {\n if (show) {\n element.setAttribute('aria-hidden', 'true');\n } else {\n element.removeAttribute('aria-hidden');\n }\n}\nfunction getPaddingRight(element) {\n return parseInt(ownerWindow(element).getComputedStyle(element).paddingRight, 10) || 0;\n}\nfunction isAriaHiddenForbiddenOnElement(element) {\n // The forbidden HTML tags are the ones from ARIA specification that\n // can be children of body and can't have aria-hidden attribute.\n // cf. https://www.w3.org/TR/html-aria/#docconformance\n const forbiddenTagNames = ['TEMPLATE', 'SCRIPT', 'STYLE', 'LINK', 'MAP', 'META', 'NOSCRIPT', 'PICTURE', 'COL', 'COLGROUP', 'PARAM', 'SLOT', 'SOURCE', 'TRACK'];\n const isForbiddenTagName = forbiddenTagNames.indexOf(element.tagName) !== -1;\n const isInputHidden = element.tagName === 'INPUT' && element.getAttribute('type') === 'hidden';\n return isForbiddenTagName || isInputHidden;\n}\nfunction ariaHiddenSiblings(container, mountElement, currentElement, elementsToExclude, show) {\n const blacklist = [mountElement, currentElement, ...elementsToExclude];\n [].forEach.call(container.children, element => {\n const isNotExcludedElement = blacklist.indexOf(element) === -1;\n const isNotForbiddenElement = !isAriaHiddenForbiddenOnElement(element);\n if (isNotExcludedElement && isNotForbiddenElement) {\n ariaHidden(element, show);\n }\n });\n}\nfunction findIndexOf(items, callback) {\n let idx = -1;\n items.some((item, index) => {\n if (callback(item)) {\n idx = index;\n return true;\n }\n return false;\n });\n return idx;\n}\nfunction handleContainer(containerInfo, props) {\n const restoreStyle = [];\n const container = containerInfo.container;\n if (!props.disableScrollLock) {\n if (isOverflowing(container)) {\n // Compute the size before applying overflow hidden to avoid any scroll jumps.\n const scrollbarSize = getScrollbarSize(ownerDocument(container));\n restoreStyle.push({\n value: container.style.paddingRight,\n property: 'padding-right',\n el: container\n });\n // Use computed style, here to get the real padding to add our scrollbar width.\n container.style.paddingRight = `${getPaddingRight(container) + scrollbarSize}px`;\n\n // .mui-fixed is a global helper.\n const fixedElements = ownerDocument(container).querySelectorAll('.mui-fixed');\n [].forEach.call(fixedElements, element => {\n restoreStyle.push({\n value: element.style.paddingRight,\n property: 'padding-right',\n el: element\n });\n element.style.paddingRight = `${getPaddingRight(element) + scrollbarSize}px`;\n });\n }\n let scrollContainer;\n if (container.parentNode instanceof DocumentFragment) {\n scrollContainer = ownerDocument(container).body;\n } else {\n // Improve Gatsby support\n // https://css-tricks.com/snippets/css/force-vertical-scrollbar/\n const parent = container.parentElement;\n const containerWindow = ownerWindow(container);\n scrollContainer = (parent == null ? void 0 : parent.nodeName) === 'HTML' && containerWindow.getComputedStyle(parent).overflowY === 'scroll' ? parent : container;\n }\n\n // Block the scroll even if no scrollbar is visible to account for mobile keyboard\n // screensize shrink.\n restoreStyle.push({\n value: scrollContainer.style.overflow,\n property: 'overflow',\n el: scrollContainer\n }, {\n value: scrollContainer.style.overflowX,\n property: 'overflow-x',\n el: scrollContainer\n }, {\n value: scrollContainer.style.overflowY,\n property: 'overflow-y',\n el: scrollContainer\n });\n scrollContainer.style.overflow = 'hidden';\n }\n const restore = () => {\n restoreStyle.forEach(({\n value,\n el,\n property\n }) => {\n if (value) {\n el.style.setProperty(property, value);\n } else {\n el.style.removeProperty(property);\n }\n });\n };\n return restore;\n}\nfunction getHiddenSiblings(container) {\n const hiddenSiblings = [];\n [].forEach.call(container.children, element => {\n if (element.getAttribute('aria-hidden') === 'true') {\n hiddenSiblings.push(element);\n }\n });\n return hiddenSiblings;\n}\n/**\n * @ignore - do not document.\n *\n * Proper state management for containers and the modals in those containers.\n * Simplified, but inspired by react-overlay's ModalManager class.\n * Used by the Modal to ensure proper styling of containers.\n */\nexport default class ModalManager {\n constructor() {\n this.containers = void 0;\n this.modals = void 0;\n this.modals = [];\n this.containers = [];\n }\n add(modal, container) {\n let modalIndex = this.modals.indexOf(modal);\n if (modalIndex !== -1) {\n return modalIndex;\n }\n modalIndex = this.modals.length;\n this.modals.push(modal);\n\n // If the modal we are adding is already in the DOM.\n if (modal.modalRef) {\n ariaHidden(modal.modalRef, false);\n }\n const hiddenSiblings = getHiddenSiblings(container);\n ariaHiddenSiblings(container, modal.mount, modal.modalRef, hiddenSiblings, true);\n const containerIndex = findIndexOf(this.containers, item => item.container === container);\n if (containerIndex !== -1) {\n this.containers[containerIndex].modals.push(modal);\n return modalIndex;\n }\n this.containers.push({\n modals: [modal],\n container,\n restore: null,\n hiddenSiblings\n });\n return modalIndex;\n }\n mount(modal, props) {\n const containerIndex = findIndexOf(this.containers, item => item.modals.indexOf(modal) !== -1);\n const containerInfo = this.containers[containerIndex];\n if (!containerInfo.restore) {\n containerInfo.restore = handleContainer(containerInfo, props);\n }\n }\n remove(modal, ariaHiddenState = true) {\n const modalIndex = this.modals.indexOf(modal);\n if (modalIndex === -1) {\n return modalIndex;\n }\n const containerIndex = findIndexOf(this.containers, item => item.modals.indexOf(modal) !== -1);\n const containerInfo = this.containers[containerIndex];\n containerInfo.modals.splice(containerInfo.modals.indexOf(modal), 1);\n this.modals.splice(modalIndex, 1);\n\n // If that was the last modal in a container, clean up the container.\n if (containerInfo.modals.length === 0) {\n // The modal might be closed before it had the chance to be mounted in the DOM.\n if (containerInfo.restore) {\n containerInfo.restore();\n }\n if (modal.modalRef) {\n // In case the modal wasn't in the DOM yet.\n ariaHidden(modal.modalRef, ariaHiddenState);\n }\n ariaHiddenSiblings(containerInfo.container, modal.mount, modal.modalRef, containerInfo.hiddenSiblings, false);\n this.containers.splice(containerIndex, 1);\n } else {\n // Otherwise make sure the next top modal is visible to a screen reader.\n const nextTop = containerInfo.modals[containerInfo.modals.length - 1];\n // as soon as a modal is adding its modalRef is undefined. it can't set\n // aria-hidden because the dom element doesn't exist either\n // when modal was unmounted before modalRef gets null\n if (nextTop.modalRef) {\n ariaHidden(nextTop.modalRef, false);\n }\n }\n return modalIndex;\n }\n isTopModal(modal) {\n return this.modals.length > 0 && this.modals[this.modals.length - 1] === modal;\n }\n}","/* eslint-disable consistent-return, jsx-a11y/no-noninteractive-tabindex */\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { exactProp, elementAcceptingRef, unstable_useForkRef as useForkRef, unstable_ownerDocument as ownerDocument } from '@mui/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n// Inspired by https://github.com/focus-trap/tabbable\nconst candidatesSelector = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable=\"false\"])'].join(',');\nfunction getTabIndex(node) {\n const tabindexAttr = parseInt(node.getAttribute('tabindex') || '', 10);\n if (!Number.isNaN(tabindexAttr)) {\n return tabindexAttr;\n }\n\n // Browsers do not return `tabIndex` correctly for contentEditable nodes;\n // https://bugs.chromium.org/p/chromium/issues/detail?id=661108&q=contenteditable%20tabindex&can=2\n // so if they don't have a tabindex attribute specifically set, assume it's 0.\n // in Chrome,
,
\n * );\n * }\n * ```\n *\n * When the `in` prop is set to `true`, the child component will first receive\n * the class `example-enter`, then the `example-enter-active` will be added in\n * the next tick. `CSSTransition` [forces a\n * reflow](https://github.com/reactjs/react-transition-group/blob/5007303e729a74be66a21c3e2205e4916821524b/src/CSSTransition.js#L208-L215)\n * between before adding the `example-enter-active`. This is an important trick\n * because it allows us to transition between `example-enter` and\n * `example-enter-active` even though they were added immediately one after\n * another. Most notably, this is what makes it possible for us to animate\n * _appearance_.\n *\n * ```css\n * .my-node-enter {\n * opacity: 0;\n * }\n * .my-node-enter-active {\n * opacity: 1;\n * transition: opacity 200ms;\n * }\n * .my-node-exit {\n * opacity: 1;\n * }\n * .my-node-exit-active {\n * opacity: 0;\n * transition: opacity 200ms;\n * }\n * ```\n *\n * `*-active` classes represent which styles you want to animate **to**, so it's\n * important to add `transition` declaration only to them, otherwise transitions\n * might not behave as intended! This might not be obvious when the transitions\n * are symmetrical, i.e. when `*-enter-active` is the same as `*-exit`, like in\n * the example above (minus `transition`), but it becomes apparent in more\n * complex transitions.\n *\n * **Note**: If you're using the\n * [`appear`](http://reactcommunity.org/react-transition-group/transition#Transition-prop-appear)\n * prop, make sure to define styles for `.appear-*` classes as well.\n */\n\n\nvar CSSTransition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(CSSTransition, _React$Component);\n\n function CSSTransition() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.appliedClasses = {\n appear: {},\n enter: {},\n exit: {}\n };\n\n _this.onEnter = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument[0],\n appearing = _this$resolveArgument[1];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, appearing ? 'appear' : 'enter', 'base');\n\n if (_this.props.onEnter) {\n _this.props.onEnter(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntering = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument2 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument2[0],\n appearing = _this$resolveArgument2[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.addClass(node, type, 'active');\n\n if (_this.props.onEntering) {\n _this.props.onEntering(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntered = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument3 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument3[0],\n appearing = _this$resolveArgument3[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.removeClasses(node, type);\n\n _this.addClass(node, type, 'done');\n\n if (_this.props.onEntered) {\n _this.props.onEntered(maybeNode, maybeAppearing);\n }\n };\n\n _this.onExit = function (maybeNode) {\n var _this$resolveArgument4 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument4[0];\n\n _this.removeClasses(node, 'appear');\n\n _this.removeClasses(node, 'enter');\n\n _this.addClass(node, 'exit', 'base');\n\n if (_this.props.onExit) {\n _this.props.onExit(maybeNode);\n }\n };\n\n _this.onExiting = function (maybeNode) {\n var _this$resolveArgument5 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument5[0];\n\n _this.addClass(node, 'exit', 'active');\n\n if (_this.props.onExiting) {\n _this.props.onExiting(maybeNode);\n }\n };\n\n _this.onExited = function (maybeNode) {\n var _this$resolveArgument6 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument6[0];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, 'exit', 'done');\n\n if (_this.props.onExited) {\n _this.props.onExited(maybeNode);\n }\n };\n\n _this.resolveArguments = function (maybeNode, maybeAppearing) {\n return _this.props.nodeRef ? [_this.props.nodeRef.current, maybeNode] // here `maybeNode` is actually `appearing`\n : [maybeNode, maybeAppearing];\n };\n\n _this.getClassNames = function (type) {\n var classNames = _this.props.classNames;\n var isStringClassNames = typeof classNames === 'string';\n var prefix = isStringClassNames && classNames ? classNames + \"-\" : '';\n var baseClassName = isStringClassNames ? \"\" + prefix + type : classNames[type];\n var activeClassName = isStringClassNames ? baseClassName + \"-active\" : classNames[type + \"Active\"];\n var doneClassName = isStringClassNames ? baseClassName + \"-done\" : classNames[type + \"Done\"];\n return {\n baseClassName: baseClassName,\n activeClassName: activeClassName,\n doneClassName: doneClassName\n };\n };\n\n return _this;\n }\n\n var _proto = CSSTransition.prototype;\n\n _proto.addClass = function addClass(node, type, phase) {\n var className = this.getClassNames(type)[phase + \"ClassName\"];\n\n var _this$getClassNames = this.getClassNames('enter'),\n doneClassName = _this$getClassNames.doneClassName;\n\n if (type === 'appear' && phase === 'done' && doneClassName) {\n className += \" \" + doneClassName;\n } // This is to force a repaint,\n // which is necessary in order to transition styles when adding a class name.\n\n\n if (phase === 'active') {\n if (node) forceReflow(node);\n }\n\n if (className) {\n this.appliedClasses[type][phase] = className;\n\n _addClass(node, className);\n }\n };\n\n _proto.removeClasses = function removeClasses(node, type) {\n var _this$appliedClasses$ = this.appliedClasses[type],\n baseClassName = _this$appliedClasses$.base,\n activeClassName = _this$appliedClasses$.active,\n doneClassName = _this$appliedClasses$.done;\n this.appliedClasses[type] = {};\n\n if (baseClassName) {\n removeClass(node, baseClassName);\n }\n\n if (activeClassName) {\n removeClass(node, activeClassName);\n }\n\n if (doneClassName) {\n removeClass(node, doneClassName);\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n _ = _this$props.classNames,\n props = _objectWithoutPropertiesLoose(_this$props, [\"classNames\"]);\n\n return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {\n onEnter: this.onEnter,\n onEntered: this.onEntered,\n onEntering: this.onEntering,\n onExit: this.onExit,\n onExiting: this.onExiting,\n onExited: this.onExited\n }));\n };\n\n return CSSTransition;\n}(React.Component);\n\nCSSTransition.defaultProps = {\n classNames: ''\n};\nCSSTransition.propTypes = process.env.NODE_ENV !== \"production\" ? _extends({}, Transition.propTypes, {\n /**\n * The animation classNames applied to the component as it appears, enters,\n * exits or has finished the transition. A single name can be provided, which\n * will be suffixed for each stage, e.g. `classNames=\"fade\"` applies:\n *\n * - `fade-appear`, `fade-appear-active`, `fade-appear-done`\n * - `fade-enter`, `fade-enter-active`, `fade-enter-done`\n * - `fade-exit`, `fade-exit-active`, `fade-exit-done`\n *\n * A few details to note about how these classes are applied:\n *\n * 1. They are _joined_ with the ones that are already defined on the child\n * component, so if you want to add some base styles, you can use\n * `className` without worrying that it will be overridden.\n *\n * 2. If the transition component mounts with `in={false}`, no classes are\n * applied yet. You might be expecting `*-exit-done`, but if you think\n * about it, a component cannot finish exiting if it hasn't entered yet.\n *\n * 2. `fade-appear-done` and `fade-enter-done` will _both_ be applied. This\n * allows you to define different behavior for when appearing is done and\n * when regular entering is done, using selectors like\n * `.fade-enter-done:not(.fade-appear-done)`. For example, you could apply\n * an epic entrance animation when element first appears in the DOM using\n * [Animate.css](https://daneden.github.io/animate.css/). Otherwise you can\n * simply use `fade-enter-done` for defining both cases.\n *\n * Each individual classNames can also be specified independently like:\n *\n * ```js\n * classNames={{\n * appear: 'my-appear',\n * appearActive: 'my-active-appear',\n * appearDone: 'my-done-appear',\n * enter: 'my-enter',\n * enterActive: 'my-active-enter',\n * enterDone: 'my-done-enter',\n * exit: 'my-exit',\n * exitActive: 'my-active-exit',\n * exitDone: 'my-done-exit',\n * }}\n * ```\n *\n * If you want to set these classes using CSS Modules:\n *\n * ```js\n * import styles from './styles.css';\n * ```\n *\n * you might want to use camelCase in your CSS file, that way could simply\n * spread them instead of listing them one by one:\n *\n * ```js\n * classNames={{ ...styles }}\n * ```\n *\n * @type {string | {\n * appear?: string,\n * appearActive?: string,\n * appearDone?: string,\n * enter?: string,\n * enterActive?: string,\n * enterDone?: string,\n * exit?: string,\n * exitActive?: string,\n * exitDone?: string,\n * }}\n */\n classNames: classNamesShape,\n\n /**\n * A `` callback fired immediately after the 'enter' or 'appear' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEnter: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter-active' or\n * 'appear-active' class is applied.\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 * A `` callback fired immediately after the 'enter' or\n * 'appear' classes are **removed** and the `done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntered: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExit: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit-active' is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExiting: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' classes\n * are **removed** and the `exit-done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExited: PropTypes.func\n}) : {};\nexport default CSSTransition;","import hasClass from './hasClass';\n/**\n * Adds a CSS class to a given element.\n * \n * @param element the element\n * @param className the CSS class name\n */\n\nexport default function addClass(element, className) {\n if (element.classList) element.classList.add(className);else if (!hasClass(element, className)) if (typeof element.className === 'string') element.className = element.className + \" \" + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + \" \" + className);\n}","/**\n * Checks if a given element has a CSS class.\n * \n * @param element the element\n * @param className the CSS class name\n */\nexport default function hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);\n return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getPickersSlideTransitionUtilityClass = slot => generateUtilityClass('MuiPickersSlideTransition', slot);\nexport const pickersSlideTransitionClasses = generateUtilityClasses('MuiPickersSlideTransition', ['root', 'slideEnter-left', 'slideEnter-right', 'slideEnterActive', 'slideExit', 'slideExitActiveLeft-left', 'slideExitActiveLeft-right']);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\", \"className\", \"reduceAnimations\", \"slideDirection\", \"transKey\", \"classes\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport { getPickersSlideTransitionUtilityClass, pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n slideDirection\n } = ownerState;\n const slots = {\n root: ['root'],\n exit: ['slideExit'],\n enterActive: ['slideEnterActive'],\n enter: [`slideEnter-${slideDirection}`],\n exitActive: [`slideExitActiveLeft-${slideDirection}`]\n };\n return composeClasses(slots, getPickersSlideTransitionUtilityClass, classes);\n};\nexport const slideAnimationDuration = 350;\nconst PickersSlideTransitionRoot = styled(TransitionGroup, {\n name: 'MuiPickersSlideTransition',\n slot: 'Root',\n overridesResolver: (_, styles) => [styles.root, {\n [`.${pickersSlideTransitionClasses['slideEnter-left']}`]: styles['slideEnter-left']\n }, {\n [`.${pickersSlideTransitionClasses['slideEnter-right']}`]: styles['slideEnter-right']\n }, {\n [`.${pickersSlideTransitionClasses.slideEnterActive}`]: styles.slideEnterActive\n }, {\n [`.${pickersSlideTransitionClasses.slideExit}`]: styles.slideExit\n }, {\n [`.${pickersSlideTransitionClasses['slideExitActiveLeft-left']}`]: styles['slideExitActiveLeft-left']\n }, {\n [`.${pickersSlideTransitionClasses['slideExitActiveLeft-right']}`]: styles['slideExitActiveLeft-right']\n }]\n})(({\n theme\n}) => {\n const slideTransition = theme.transitions.create('transform', {\n duration: slideAnimationDuration,\n easing: 'cubic-bezier(0.35, 0.8, 0.4, 1)'\n });\n return {\n display: 'block',\n position: 'relative',\n overflowX: 'hidden',\n '& > *': {\n position: 'absolute',\n top: 0,\n right: 0,\n left: 0\n },\n [`& .${pickersSlideTransitionClasses['slideEnter-left']}`]: {\n willChange: 'transform',\n transform: 'translate(100%)',\n zIndex: 1\n },\n [`& .${pickersSlideTransitionClasses['slideEnter-right']}`]: {\n willChange: 'transform',\n transform: 'translate(-100%)',\n zIndex: 1\n },\n [`& .${pickersSlideTransitionClasses.slideEnterActive}`]: {\n transform: 'translate(0%)',\n transition: slideTransition\n },\n [`& .${pickersSlideTransitionClasses.slideExit}`]: {\n transform: 'translate(0%)'\n },\n [`& .${pickersSlideTransitionClasses['slideExitActiveLeft-left']}`]: {\n willChange: 'transform',\n transform: 'translate(-100%)',\n transition: slideTransition,\n zIndex: 0\n },\n [`& .${pickersSlideTransitionClasses['slideExitActiveLeft-right']}`]: {\n willChange: 'transform',\n transform: 'translate(100%)',\n transition: slideTransition,\n zIndex: 0\n }\n };\n});\n\n/**\n * @ignore - do not document.\n */\nexport function PickersSlideTransition(inProps) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersSlideTransition'\n });\n const {\n children,\n className,\n reduceAnimations,\n transKey\n // extracting `classes` from `other`\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const classes = useUtilityClasses(props);\n if (reduceAnimations) {\n return /*#__PURE__*/_jsx(\"div\", {\n className: clsx(classes.root, className),\n children: children\n });\n }\n const transitionClasses = {\n exit: classes.exit,\n enterActive: classes.enterActive,\n enter: classes.enter,\n exitActive: classes.exitActive\n };\n return /*#__PURE__*/_jsx(PickersSlideTransitionRoot, {\n className: clsx(classes.root, className),\n childFactory: element => /*#__PURE__*/React.cloneElement(element, {\n classNames: transitionClasses\n }),\n role: \"presentation\",\n children: /*#__PURE__*/_jsx(CSSTransition, _extends({\n mountOnEnter: true,\n unmountOnExit: true,\n timeout: slideAnimationDuration,\n classNames: transitionClasses\n }, other, {\n children: children\n }), transKey)\n });\n}","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getDayCalendarUtilityClass = slot => generateUtilityClass('MuiDayCalendar', slot);\nexport const dayPickerClasses = generateUtilityClasses('MuiDayCalendar', ['header', 'weekDayLabel', 'loadingContainer', 'slideTransition', 'monthContainer', 'weekContainer', 'weekNumberLabel', 'weekNumber']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"parentProps\", \"day\", \"focusableDay\", \"selectedDays\", \"isDateDisabled\", \"currentMonthNumber\", \"isViewFocused\"],\n _excluded2 = [\"ownerState\"];\nimport * as React from 'react';\nimport useEventCallback from '@mui/utils/useEventCallback';\nimport Typography from '@mui/material/Typography';\nimport { useSlotProps } from '@mui/base/utils';\nimport { styled, useTheme, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses, unstable_useControlled as useControlled } from '@mui/utils';\nimport clsx from 'clsx';\nimport { PickersDay } from '../PickersDay/PickersDay';\nimport { useUtils, useNow, useLocaleText } from '../internals/hooks/useUtils';\nimport { DAY_SIZE, DAY_MARGIN } from '../internals/constants/dimensions';\nimport { PickersSlideTransition } from './PickersSlideTransition';\nimport { useIsDateDisabled } from './useIsDateDisabled';\nimport { findClosestEnabledDate } from '../internals/utils/date-utils';\nimport { getDayCalendarUtilityClass } from './dayCalendarClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n header: ['header'],\n weekDayLabel: ['weekDayLabel'],\n loadingContainer: ['loadingContainer'],\n slideTransition: ['slideTransition'],\n monthContainer: ['monthContainer'],\n weekContainer: ['weekContainer'],\n weekNumberLabel: ['weekNumberLabel'],\n weekNumber: ['weekNumber']\n };\n return composeClasses(slots, getDayCalendarUtilityClass, classes);\n};\nconst defaultDayOfWeekFormatter = day => day.charAt(0).toUpperCase();\nconst weeksContainerHeight = (DAY_SIZE + DAY_MARGIN * 2) * 6;\nconst PickersCalendarDayHeader = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'Header',\n overridesResolver: (_, styles) => styles.header\n})({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n});\nconst PickersCalendarWeekDayLabel = styled(Typography, {\n name: 'MuiDayCalendar',\n slot: 'WeekDayLabel',\n overridesResolver: (_, styles) => styles.weekDayLabel\n})(({\n theme\n}) => ({\n width: 36,\n height: 40,\n margin: '0 2px',\n textAlign: 'center',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n color: (theme.vars || theme).palette.text.secondary\n}));\nconst PickersCalendarWeekNumberLabel = styled(Typography, {\n name: 'MuiDayPicker',\n slot: 'WeekNumberLabel',\n overridesResolver: (_, styles) => styles.weekNumberLabel\n})(({\n theme\n}) => ({\n width: 36,\n height: 40,\n margin: '0 2px',\n textAlign: 'center',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n color: theme.palette.text.disabled\n}));\nconst PickersCalendarWeekNumber = styled(Typography, {\n name: 'MuiDayPicker',\n slot: 'WeekNumber',\n overridesResolver: (_, styles) => styles.weekNumber\n})(({\n theme\n}) => _extends({}, theme.typography.caption, {\n width: DAY_SIZE,\n height: DAY_SIZE,\n padding: 0,\n margin: `0 ${DAY_MARGIN}px`,\n color: theme.palette.text.disabled,\n fontSize: '0.75rem',\n alignItems: 'center',\n justifyContent: 'center',\n display: 'inline-flex'\n}));\nconst PickersCalendarLoadingContainer = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'LoadingContainer',\n overridesResolver: (_, styles) => styles.loadingContainer\n})({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n minHeight: weeksContainerHeight\n});\nconst PickersCalendarSlideTransition = styled(PickersSlideTransition, {\n name: 'MuiDayCalendar',\n slot: 'SlideTransition',\n overridesResolver: (_, styles) => styles.slideTransition\n})({\n minHeight: weeksContainerHeight\n});\nconst PickersCalendarWeekContainer = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'MonthContainer',\n overridesResolver: (_, styles) => styles.monthContainer\n})({\n overflow: 'hidden'\n});\nconst PickersCalendarWeek = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'WeekContainer',\n overridesResolver: (_, styles) => styles.weekContainer\n})({\n margin: `${DAY_MARGIN}px 0`,\n display: 'flex',\n justifyContent: 'center'\n});\nfunction WrappedDay(_ref) {\n var _ref2, _slots$day, _slotProps$day;\n let {\n parentProps,\n day,\n focusableDay,\n selectedDays,\n isDateDisabled,\n currentMonthNumber,\n isViewFocused\n } = _ref,\n other = _objectWithoutPropertiesLoose(_ref, _excluded);\n const utils = useUtils();\n const now = useNow();\n const {\n disabled,\n disableHighlightToday,\n isMonthSwitchingAnimating,\n showDaysOutsideCurrentMonth,\n components,\n componentsProps,\n slots,\n slotProps\n } = parentProps;\n const isFocusableDay = focusableDay !== null && utils.isSameDay(day, focusableDay);\n const isSelected = selectedDays.some(selectedDay => utils.isSameDay(selectedDay, day));\n const isToday = utils.isSameDay(day, now);\n const Day = (_ref2 = (_slots$day = slots == null ? void 0 : slots.day) != null ? _slots$day : components == null ? void 0 : components.Day) != null ? _ref2 : PickersDay;\n // We don't want to pass to ownerState down, to avoid re-rendering all the day whenever a prop changes.\n const _useSlotProps = useSlotProps({\n elementType: Day,\n externalSlotProps: (_slotProps$day = slotProps == null ? void 0 : slotProps.day) != null ? _slotProps$day : componentsProps == null ? void 0 : componentsProps.day,\n additionalProps: _extends({\n disableHighlightToday,\n showDaysOutsideCurrentMonth,\n role: 'gridcell',\n isAnimating: isMonthSwitchingAnimating,\n // it is used in date range dragging logic by accessing `dataset.timestamp`\n 'data-timestamp': utils.toJsDate(day).valueOf()\n }, other),\n ownerState: _extends({}, parentProps, {\n day,\n selected: isSelected\n })\n }),\n dayProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);\n const isDisabled = React.useMemo(() => disabled || isDateDisabled(day), [disabled, isDateDisabled, day]);\n const outsideCurrentMonth = React.useMemo(() => utils.getMonth(day) !== currentMonthNumber, [utils, day, currentMonthNumber]);\n const isFirstVisibleCell = React.useMemo(() => {\n const startOfMonth = utils.startOfMonth(utils.setMonth(day, currentMonthNumber));\n if (!showDaysOutsideCurrentMonth) {\n return utils.isSameDay(day, startOfMonth);\n }\n return utils.isSameDay(day, utils.startOfWeek(startOfMonth));\n }, [currentMonthNumber, day, showDaysOutsideCurrentMonth, utils]);\n const isLastVisibleCell = React.useMemo(() => {\n const endOfMonth = utils.endOfMonth(utils.setMonth(day, currentMonthNumber));\n if (!showDaysOutsideCurrentMonth) {\n return utils.isSameDay(day, endOfMonth);\n }\n return utils.isSameDay(day, utils.endOfWeek(endOfMonth));\n }, [currentMonthNumber, day, showDaysOutsideCurrentMonth, utils]);\n return /*#__PURE__*/_jsx(Day, _extends({}, dayProps, {\n day: day,\n disabled: isDisabled,\n autoFocus: isViewFocused && isFocusableDay,\n today: isToday,\n outsideCurrentMonth: outsideCurrentMonth,\n isFirstVisibleCell: isFirstVisibleCell,\n isLastVisibleCell: isLastVisibleCell,\n selected: isSelected,\n tabIndex: isFocusableDay ? 0 : -1,\n \"aria-selected\": isSelected,\n \"aria-current\": isToday ? 'date' : undefined\n }));\n}\n\n/**\n * @ignore - do not document.\n */\nexport function DayCalendar(inProps) {\n const now = useNow();\n const utils = useUtils();\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDayCalendar'\n });\n const classes = useUtilityClasses(props);\n const theme = useTheme();\n const isRTL = theme.direction === 'rtl';\n const {\n onFocusedDayChange,\n className,\n currentMonth,\n selectedDays,\n focusedDay,\n loading,\n onSelectedDaysChange,\n onMonthSwitchingAnimationEnd,\n readOnly,\n reduceAnimations,\n renderLoading = () => /*#__PURE__*/_jsx(\"span\", {\n children: \"...\"\n }),\n slideDirection,\n TransitionProps,\n disablePast,\n disableFuture,\n minDate,\n maxDate,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n dayOfWeekFormatter = defaultDayOfWeekFormatter,\n hasFocus,\n onFocusedViewChange,\n gridLabelId,\n displayWeekNumber,\n fixedWeekNumber,\n autoFocus\n } = props;\n const isDateDisabled = useIsDateDisabled({\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n minDate,\n maxDate,\n disablePast,\n disableFuture\n });\n const localeText = useLocaleText();\n const [internalHasFocus, setInternalHasFocus] = useControlled({\n name: 'DayCalendar',\n state: 'hasFocus',\n controlled: hasFocus,\n default: autoFocus != null ? autoFocus : false\n });\n const [internalFocusedDay, setInternalFocusedDay] = React.useState(() => focusedDay || now);\n const handleDaySelect = useEventCallback(day => {\n if (readOnly) {\n return;\n }\n onSelectedDaysChange(day);\n });\n const focusDay = day => {\n if (!isDateDisabled(day)) {\n onFocusedDayChange(day);\n setInternalFocusedDay(day);\n onFocusedViewChange == null ? void 0 : onFocusedViewChange(true);\n setInternalHasFocus(true);\n }\n };\n const handleKeyDown = useEventCallback((event, day) => {\n switch (event.key) {\n case 'ArrowUp':\n focusDay(utils.addDays(day, -7));\n event.preventDefault();\n break;\n case 'ArrowDown':\n focusDay(utils.addDays(day, 7));\n event.preventDefault();\n break;\n case 'ArrowLeft':\n {\n const newFocusedDayDefault = utils.addDays(day, isRTL ? 1 : -1);\n const nextAvailableMonth = utils.addMonths(day, isRTL ? 1 : -1);\n const closestDayToFocus = findClosestEnabledDate({\n utils,\n date: newFocusedDayDefault,\n minDate: isRTL ? newFocusedDayDefault : utils.startOfMonth(nextAvailableMonth),\n maxDate: isRTL ? utils.endOfMonth(nextAvailableMonth) : newFocusedDayDefault,\n isDateDisabled\n });\n focusDay(closestDayToFocus || newFocusedDayDefault);\n event.preventDefault();\n break;\n }\n case 'ArrowRight':\n {\n const newFocusedDayDefault = utils.addDays(day, isRTL ? -1 : 1);\n const nextAvailableMonth = utils.addMonths(day, isRTL ? -1 : 1);\n const closestDayToFocus = findClosestEnabledDate({\n utils,\n date: newFocusedDayDefault,\n minDate: isRTL ? utils.startOfMonth(nextAvailableMonth) : newFocusedDayDefault,\n maxDate: isRTL ? newFocusedDayDefault : utils.endOfMonth(nextAvailableMonth),\n isDateDisabled\n });\n focusDay(closestDayToFocus || newFocusedDayDefault);\n event.preventDefault();\n break;\n }\n case 'Home':\n focusDay(utils.startOfWeek(day));\n event.preventDefault();\n break;\n case 'End':\n focusDay(utils.endOfWeek(day));\n event.preventDefault();\n break;\n case 'PageUp':\n focusDay(utils.addMonths(day, 1));\n event.preventDefault();\n break;\n case 'PageDown':\n focusDay(utils.addMonths(day, -1));\n event.preventDefault();\n break;\n default:\n break;\n }\n });\n const handleFocus = useEventCallback((event, day) => focusDay(day));\n const handleBlur = useEventCallback((event, day) => {\n if (internalHasFocus && utils.isSameDay(internalFocusedDay, day)) {\n onFocusedViewChange == null ? void 0 : onFocusedViewChange(false);\n }\n });\n const currentMonthNumber = utils.getMonth(currentMonth);\n const validSelectedDays = React.useMemo(() => selectedDays.filter(day => !!day).map(day => utils.startOfDay(day)), [utils, selectedDays]);\n\n // need a new ref whenever the `key` of the transition changes: http://reactcommunity.org/react-transition-group/transition/#Transition-prop-nodeRef.\n const transitionKey = currentMonthNumber;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const slideNodeRef = React.useMemo(() => /*#__PURE__*/React.createRef(), [transitionKey]);\n const startOfCurrentWeek = utils.startOfWeek(now);\n const focusableDay = React.useMemo(() => {\n const startOfMonth = utils.startOfMonth(currentMonth);\n const endOfMonth = utils.endOfMonth(currentMonth);\n if (isDateDisabled(internalFocusedDay) || utils.isAfterDay(internalFocusedDay, endOfMonth) || utils.isBeforeDay(internalFocusedDay, startOfMonth)) {\n return findClosestEnabledDate({\n utils,\n date: internalFocusedDay,\n minDate: startOfMonth,\n maxDate: endOfMonth,\n disablePast,\n disableFuture,\n isDateDisabled\n });\n }\n return internalFocusedDay;\n }, [currentMonth, disableFuture, disablePast, internalFocusedDay, isDateDisabled, utils]);\n const weeksToDisplay = React.useMemo(() => {\n const toDisplay = utils.getWeekArray(currentMonth);\n let nextMonth = utils.addMonths(currentMonth, 1);\n while (fixedWeekNumber && toDisplay.length < fixedWeekNumber) {\n const additionalWeeks = utils.getWeekArray(nextMonth);\n const hasCommonWeek = utils.isSameDay(toDisplay[toDisplay.length - 1][0], additionalWeeks[0][0]);\n additionalWeeks.slice(hasCommonWeek ? 1 : 0).forEach(week => {\n if (toDisplay.length < fixedWeekNumber) {\n toDisplay.push(week);\n }\n });\n nextMonth = utils.addMonths(nextMonth, 1);\n }\n return toDisplay;\n }, [currentMonth, fixedWeekNumber, utils]);\n return /*#__PURE__*/_jsxs(\"div\", {\n role: \"grid\",\n \"aria-labelledby\": gridLabelId,\n children: [/*#__PURE__*/_jsxs(PickersCalendarDayHeader, {\n role: \"row\",\n className: classes.header,\n children: [displayWeekNumber && /*#__PURE__*/_jsx(PickersCalendarWeekNumberLabel, {\n variant: \"caption\",\n role: \"columnheader\",\n \"aria-label\": localeText.calendarWeekNumberHeaderLabel,\n className: classes.weekNumberLabel,\n children: localeText.calendarWeekNumberHeaderText\n }), utils.getWeekdays().map((day, i) => {\n var _dayOfWeekFormatter;\n return /*#__PURE__*/_jsx(PickersCalendarWeekDayLabel, {\n variant: \"caption\",\n role: \"columnheader\",\n \"aria-label\": utils.format(utils.addDays(startOfCurrentWeek, i), 'weekday'),\n className: classes.weekDayLabel,\n children: (_dayOfWeekFormatter = dayOfWeekFormatter == null ? void 0 : dayOfWeekFormatter(day)) != null ? _dayOfWeekFormatter : day\n }, day + i.toString());\n })]\n }), loading ? /*#__PURE__*/_jsx(PickersCalendarLoadingContainer, {\n className: classes.loadingContainer,\n children: renderLoading()\n }) : /*#__PURE__*/_jsx(PickersCalendarSlideTransition, _extends({\n transKey: transitionKey,\n onExited: onMonthSwitchingAnimationEnd,\n reduceAnimations: reduceAnimations,\n slideDirection: slideDirection,\n className: clsx(className, classes.slideTransition)\n }, TransitionProps, {\n nodeRef: slideNodeRef,\n children: /*#__PURE__*/_jsx(PickersCalendarWeekContainer, {\n ref: slideNodeRef,\n role: \"rowgroup\",\n className: classes.monthContainer,\n children: weeksToDisplay.map((week, index) => /*#__PURE__*/_jsxs(PickersCalendarWeek, {\n role: \"row\",\n className: classes.weekContainer\n // fix issue of announcing row 1 as row 2\n // caused by week day labels row\n ,\n \"aria-rowindex\": index + 1,\n children: [displayWeekNumber && /*#__PURE__*/_jsx(PickersCalendarWeekNumber, {\n className: classes.weekNumber,\n role: \"rowheader\",\n \"aria-label\": localeText.calendarWeekNumberAriaLabelText(utils.getWeekNumber(week[0])),\n children: localeText.calendarWeekNumberText(utils.getWeekNumber(week[0]))\n }), week.map((day, dayIndex) => /*#__PURE__*/_jsx(WrappedDay, {\n parentProps: props,\n day: day,\n selectedDays: validSelectedDays,\n focusableDay: focusableDay,\n onKeyDown: handleKeyDown,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onDaySelect: handleDaySelect,\n isDateDisabled: isDateDisabled,\n currentMonthNumber: currentMonthNumber,\n isViewFocused: internalHasFocus\n // fix issue of announcing column 1 as column 2 when `displayWeekNumber` is enabled\n ,\n \"aria-colindex\": dayIndex + 1\n }, day.toString()))]\n }, `week-${week[0]}`))\n })\n }))]\n });\n}","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getPickersMonthUtilityClass(slot) {\n return generateUtilityClass('MuiPickersMonth', slot);\n}\nexport const pickersMonthClasses = generateUtilityClasses('MuiPickersMonth', ['root', 'monthButton', 'disabled', 'selected']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"children\", \"disabled\", \"selected\", \"value\", \"tabIndex\", \"onClick\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"aria-current\", \"monthsPerRow\"];\nimport * as React from 'react';\nimport { styled, alpha, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses, unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils';\nimport { getPickersMonthUtilityClass, pickersMonthClasses } from './pickersMonthClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n selected,\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n monthButton: ['monthButton', disabled && 'disabled', selected && 'selected']\n };\n return composeClasses(slots, getPickersMonthUtilityClass, classes);\n};\nconst PickersMonthRoot = styled('div', {\n name: 'MuiPickersMonth',\n slot: 'Root',\n overridesResolver: (_, styles) => [styles.root]\n})(({\n ownerState\n}) => ({\n flexBasis: ownerState.monthsPerRow === 3 ? '33.3%' : '25%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n}));\nconst PickersMonthButton = styled('button', {\n name: 'MuiPickersMonth',\n slot: 'MonthButton',\n overridesResolver: (_, styles) => [styles.monthButton, {\n [`&.${pickersMonthClasses.disabled}`]: styles.disabled\n }, {\n [`&.${pickersMonthClasses.selected}`]: styles.selected\n }]\n})(({\n theme\n}) => _extends({\n color: 'unset',\n backgroundColor: 'transparent',\n border: 0,\n outline: 0\n}, theme.typography.subtitle1, {\n margin: '8px 0',\n height: 36,\n width: 72,\n borderRadius: 18,\n cursor: 'pointer',\n '&:focus': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)\n },\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)\n },\n '&:disabled': {\n cursor: 'auto',\n pointerEvents: 'none'\n },\n [`&.${pickersMonthClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.secondary\n },\n [`&.${pickersMonthClasses.selected}`]: {\n color: (theme.vars || theme).palette.primary.contrastText,\n backgroundColor: (theme.vars || theme).palette.primary.main,\n '&:focus, &:hover': {\n backgroundColor: (theme.vars || theme).palette.primary.dark\n }\n }\n}));\n\n/**\n * @ignore - do not document.\n */\nexport const PickersMonth = /*#__PURE__*/React.memo(function PickersMonth(inProps) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersMonth'\n });\n const {\n autoFocus,\n children,\n disabled,\n value,\n tabIndex,\n onClick,\n onKeyDown,\n onFocus,\n onBlur,\n 'aria-current': ariaCurrent\n // We don't want to forward this prop to the root element\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ref = React.useRef(null);\n const classes = useUtilityClasses(props);\n useEnhancedEffect(() => {\n if (autoFocus) {\n var _ref$current;\n (_ref$current = ref.current) == null ? void 0 : _ref$current.focus();\n }\n }, [autoFocus]);\n return /*#__PURE__*/_jsx(PickersMonthRoot, _extends({\n className: classes.root,\n ownerState: props\n }, other, {\n children: /*#__PURE__*/_jsx(PickersMonthButton, {\n ref: ref,\n disabled: disabled,\n type: \"button\",\n tabIndex: disabled ? -1 : tabIndex,\n \"aria-current\": ariaCurrent,\n onClick: event => onClick(event, value),\n onKeyDown: event => onKeyDown(event, value),\n onFocus: event => onFocus(event, value),\n onBlur: event => onBlur(event, value),\n className: classes.monthButton,\n ownerState: props,\n children: children\n })\n }));\n});","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getMonthCalendarUtilityClass(slot) {\n return generateUtilityClass('MuiMonthCalendar', slot);\n}\nexport const monthCalendarClasses = generateUtilityClasses('MuiMonthCalendar', ['root']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"value\", \"defaultValue\", \"disabled\", \"disableFuture\", \"disablePast\", \"maxDate\", \"minDate\", \"onChange\", \"shouldDisableMonth\", \"readOnly\", \"disableHighlightToday\", \"autoFocus\", \"onMonthFocus\", \"hasFocus\", \"onFocusedViewChange\", \"monthsPerRow\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { useTheme } from '@mui/system';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_useControlled as useControlled, unstable_composeClasses as composeClasses, unstable_useEventCallback as useEventCallback } from '@mui/utils';\nimport { PickersMonth } from './PickersMonth';\nimport { useUtils, useNow, useDefaultDates } from '../internals/hooks/useUtils';\nimport { getMonthCalendarUtilityClass } from './monthCalendarClasses';\nimport { applyDefaultDate, getMonthsInYear } from '../internals/utils/date-utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getMonthCalendarUtilityClass, classes);\n};\nexport function useMonthCalendarDefaultizedProps(props, name) {\n const utils = useUtils();\n const defaultDates = useDefaultDates();\n const themeProps = useThemeProps({\n props,\n name\n });\n return _extends({\n disableFuture: false,\n disablePast: false\n }, themeProps, {\n minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),\n maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate)\n });\n}\nconst MonthCalendarRoot = styled('div', {\n name: 'MuiMonthCalendar',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex',\n flexWrap: 'wrap',\n alignContent: 'stretch',\n padding: '0 4px',\n width: 320\n});\nexport const MonthCalendar = /*#__PURE__*/React.forwardRef(function MonthCalendar(inProps, ref) {\n const now = useNow();\n const theme = useTheme();\n const utils = useUtils();\n const props = useMonthCalendarDefaultizedProps(inProps, 'MuiMonthCalendar');\n const {\n className,\n value: valueProp,\n defaultValue,\n disabled,\n disableFuture,\n disablePast,\n maxDate,\n minDate,\n onChange,\n shouldDisableMonth,\n readOnly,\n disableHighlightToday,\n autoFocus = false,\n onMonthFocus,\n hasFocus,\n onFocusedViewChange,\n monthsPerRow = 3\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const [value, setValue] = useControlled({\n name: 'MonthCalendar',\n state: 'value',\n controlled: valueProp,\n default: defaultValue != null ? defaultValue : null\n });\n const todayMonth = React.useMemo(() => utils.getMonth(now), [utils, now]);\n const selectedDateOrStartOfMonth = React.useMemo(() => value != null ? value : utils.startOfMonth(now), [now, utils, value]);\n const selectedMonth = React.useMemo(() => {\n if (value != null) {\n return utils.getMonth(value);\n }\n if (disableHighlightToday) {\n return null;\n }\n return utils.getMonth(now);\n }, [now, value, utils, disableHighlightToday]);\n const [focusedMonth, setFocusedMonth] = React.useState(() => selectedMonth || todayMonth);\n const [internalHasFocus, setInternalHasFocus] = useControlled({\n name: 'MonthCalendar',\n state: 'hasFocus',\n controlled: hasFocus,\n default: autoFocus != null ? autoFocus : false\n });\n const changeHasFocus = useEventCallback(newHasFocus => {\n setInternalHasFocus(newHasFocus);\n if (onFocusedViewChange) {\n onFocusedViewChange(newHasFocus);\n }\n });\n const isMonthDisabled = React.useCallback(month => {\n const firstEnabledMonth = utils.startOfMonth(disablePast && utils.isAfter(now, minDate) ? now : minDate);\n const lastEnabledMonth = utils.startOfMonth(disableFuture && utils.isBefore(now, maxDate) ? now : maxDate);\n if (utils.isBefore(month, firstEnabledMonth)) {\n return true;\n }\n if (utils.isAfter(month, lastEnabledMonth)) {\n return true;\n }\n if (!shouldDisableMonth) {\n return false;\n }\n return shouldDisableMonth(month);\n }, [disableFuture, disablePast, maxDate, minDate, now, shouldDisableMonth, utils]);\n const handleMonthSelection = useEventCallback((event, month) => {\n if (readOnly) {\n return;\n }\n const newDate = utils.setMonth(selectedDateOrStartOfMonth, month);\n setValue(newDate);\n onChange == null ? void 0 : onChange(newDate);\n });\n const focusMonth = useEventCallback(month => {\n if (!isMonthDisabled(utils.setMonth(selectedDateOrStartOfMonth, month))) {\n setFocusedMonth(month);\n changeHasFocus(true);\n if (onMonthFocus) {\n onMonthFocus(month);\n }\n }\n });\n React.useEffect(() => {\n setFocusedMonth(prevFocusedMonth => selectedMonth !== null && prevFocusedMonth !== selectedMonth ? selectedMonth : prevFocusedMonth);\n }, [selectedMonth]);\n const handleKeyDown = useEventCallback((event, month) => {\n const monthsInYear = 12;\n const monthsInRow = 3;\n switch (event.key) {\n case 'ArrowUp':\n focusMonth((monthsInYear + month - monthsInRow) % monthsInYear);\n event.preventDefault();\n break;\n case 'ArrowDown':\n focusMonth((monthsInYear + month + monthsInRow) % monthsInYear);\n event.preventDefault();\n break;\n case 'ArrowLeft':\n focusMonth((monthsInYear + month + (theme.direction === 'ltr' ? -1 : 1)) % monthsInYear);\n event.preventDefault();\n break;\n case 'ArrowRight':\n focusMonth((monthsInYear + month + (theme.direction === 'ltr' ? 1 : -1)) % monthsInYear);\n event.preventDefault();\n break;\n default:\n break;\n }\n });\n const handleMonthFocus = useEventCallback((event, month) => {\n focusMonth(month);\n });\n const handleMonthBlur = useEventCallback((event, month) => {\n if (focusedMonth === month) {\n changeHasFocus(false);\n }\n });\n return /*#__PURE__*/_jsx(MonthCalendarRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: getMonthsInYear(utils, selectedDateOrStartOfMonth).map(month => {\n const monthNumber = utils.getMonth(month);\n const monthText = utils.format(month, 'monthShort');\n const isSelected = monthNumber === selectedMonth;\n const isDisabled = disabled || isMonthDisabled(month);\n return /*#__PURE__*/_jsx(PickersMonth, {\n selected: isSelected,\n value: monthNumber,\n onClick: handleMonthSelection,\n onKeyDown: handleKeyDown,\n autoFocus: internalHasFocus && monthNumber === focusedMonth,\n disabled: isDisabled,\n tabIndex: monthNumber === focusedMonth ? 0 : -1,\n onFocus: handleMonthFocus,\n onBlur: handleMonthBlur,\n \"aria-current\": todayMonth === monthNumber ? 'date' : undefined,\n monthsPerRow: monthsPerRow,\n children: monthText\n }, monthText);\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? MonthCalendar.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * className applied to the root element.\n */\n className: PropTypes.string,\n /**\n * The default selected value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true` picker is disabled\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n hasFocus: PropTypes.bool,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value changes.\n * @template TDate\n * @param {TDate | null} value The new value.\n */\n onChange: PropTypes.func,\n onFocusedViewChange: PropTypes.func,\n onMonthFocus: PropTypes.func,\n /**\n * If `true` picker is readonly\n */\n readOnly: PropTypes.bool,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any\n} : void 0;","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getPickersYearUtilityClass(slot) {\n return generateUtilityClass('MuiPickersYear', slot);\n}\nexport const pickersYearClasses = generateUtilityClasses('MuiPickersYear', ['root', 'yearButton', 'selected', 'disabled']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"className\", \"children\", \"disabled\", \"selected\", \"value\", \"tabIndex\", \"onClick\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"aria-current\", \"yearsPerRow\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport { alpha, styled, useThemeProps } from '@mui/material/styles';\nimport { getPickersYearUtilityClass, pickersYearClasses } from './pickersYearClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n selected,\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n yearButton: ['yearButton', disabled && 'disabled', selected && 'selected']\n };\n return composeClasses(slots, getPickersYearUtilityClass, classes);\n};\nconst PickersYearRoot = styled('div', {\n name: 'MuiPickersYear',\n slot: 'Root',\n overridesResolver: (_, styles) => [styles.root]\n})(({\n ownerState\n}) => ({\n flexBasis: ownerState.yearsPerRow === 3 ? '33.3%' : '25%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n}));\nconst PickersYearButton = styled('button', {\n name: 'MuiPickersYear',\n slot: 'YearButton',\n overridesResolver: (_, styles) => [styles.yearButton, {\n [`&.${pickersYearClasses.disabled}`]: styles.disabled\n }, {\n [`&.${pickersYearClasses.selected}`]: styles.selected\n }]\n})(({\n theme\n}) => _extends({\n color: 'unset',\n backgroundColor: 'transparent',\n border: 0,\n outline: 0\n}, theme.typography.subtitle1, {\n margin: '8px 0',\n height: 36,\n width: 72,\n borderRadius: 18,\n cursor: 'pointer',\n '&:focus': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.focusOpacity})` : alpha(theme.palette.action.active, theme.palette.action.focusOpacity)\n },\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)\n },\n '&:disabled': {\n cursor: 'auto',\n pointerEvents: 'none'\n },\n [`&.${pickersYearClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.secondary\n },\n [`&.${pickersYearClasses.selected}`]: {\n color: (theme.vars || theme).palette.primary.contrastText,\n backgroundColor: (theme.vars || theme).palette.primary.main,\n '&:focus, &:hover': {\n backgroundColor: (theme.vars || theme).palette.primary.dark\n }\n }\n}));\n\n/**\n * @ignore - internal component.\n */\nexport const PickersYear = /*#__PURE__*/React.memo(function PickersYear(inProps) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersYear'\n });\n const {\n autoFocus,\n className,\n children,\n disabled,\n value,\n tabIndex,\n onClick,\n onKeyDown,\n onFocus,\n onBlur,\n 'aria-current': ariaCurrent\n // We don't want to forward this prop to the root element\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ref = React.useRef(null);\n const classes = useUtilityClasses(props);\n\n // We can't forward the `autoFocus` to the button because it is a native button, not a MUI Button\n React.useEffect(() => {\n if (autoFocus) {\n // `ref.current` being `null` would be a bug in MUI.\n ref.current.focus();\n }\n }, [autoFocus]);\n return /*#__PURE__*/_jsx(PickersYearRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: props\n }, other, {\n children: /*#__PURE__*/_jsx(PickersYearButton, {\n ref: ref,\n disabled: disabled,\n type: \"button\",\n tabIndex: disabled ? -1 : tabIndex,\n \"aria-current\": ariaCurrent,\n onClick: event => onClick(event, value),\n onKeyDown: event => onKeyDown(event, value),\n onFocus: event => onFocus(event, value),\n onBlur: event => onBlur(event, value),\n className: classes.yearButton,\n ownerState: props,\n children: children\n })\n }));\n});","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getYearCalendarUtilityClass(slot) {\n return generateUtilityClass('MuiYearCalendar', slot);\n}\nexport const yearCalendarClasses = generateUtilityClasses('MuiYearCalendar', ['root']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"className\", \"value\", \"defaultValue\", \"disabled\", \"disableFuture\", \"disablePast\", \"maxDate\", \"minDate\", \"onChange\", \"readOnly\", \"shouldDisableYear\", \"disableHighlightToday\", \"onYearFocus\", \"hasFocus\", \"onFocusedViewChange\", \"yearsPerRow\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { useTheme } from '@mui/system';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_useForkRef as useForkRef, unstable_composeClasses as composeClasses, unstable_useControlled as useControlled, unstable_useEventCallback as useEventCallback } from '@mui/utils';\nimport { PickersYear } from './PickersYear';\nimport { useUtils, useNow, useDefaultDates } from '../internals/hooks/useUtils';\nimport { getYearCalendarUtilityClass } from './yearCalendarClasses';\nimport { applyDefaultDate } from '../internals/utils/date-utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getYearCalendarUtilityClass, classes);\n};\nfunction useYearCalendarDefaultizedProps(props, name) {\n const utils = useUtils();\n const defaultDates = useDefaultDates();\n const themeProps = useThemeProps({\n props,\n name\n });\n return _extends({\n disablePast: false,\n disableFuture: false\n }, themeProps, {\n minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),\n maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate)\n });\n}\nconst YearCalendarRoot = styled('div', {\n name: 'MuiYearCalendar',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n overflowY: 'auto',\n height: '100%',\n padding: '0 4px',\n width: 320,\n maxHeight: 304\n});\nexport const YearCalendar = /*#__PURE__*/React.forwardRef(function YearCalendar(inProps, ref) {\n const now = useNow();\n const theme = useTheme();\n const utils = useUtils();\n const props = useYearCalendarDefaultizedProps(inProps, 'MuiYearCalendar');\n const {\n autoFocus,\n className,\n value: valueProp,\n defaultValue,\n disabled,\n disableFuture,\n disablePast,\n maxDate,\n minDate,\n onChange,\n readOnly,\n shouldDisableYear,\n disableHighlightToday,\n onYearFocus,\n hasFocus,\n onFocusedViewChange,\n yearsPerRow = 3\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const [value, setValue] = useControlled({\n name: 'YearCalendar',\n state: 'value',\n controlled: valueProp,\n default: defaultValue != null ? defaultValue : null\n });\n const selectedDateOrStartOfYear = React.useMemo(() => value != null ? value : utils.startOfYear(now), [now, utils, value]);\n const todayYear = React.useMemo(() => utils.getYear(now), [utils, now]);\n const selectedYear = React.useMemo(() => {\n if (value != null) {\n return utils.getYear(value);\n }\n if (disableHighlightToday) {\n return null;\n }\n return utils.getYear(now);\n }, [now, value, utils, disableHighlightToday]);\n const [focusedYear, setFocusedYear] = React.useState(() => selectedYear || todayYear);\n const [internalHasFocus, setInternalHasFocus] = useControlled({\n name: 'YearCalendar',\n state: 'hasFocus',\n controlled: hasFocus,\n default: autoFocus != null ? autoFocus : false\n });\n const changeHasFocus = useEventCallback(newHasFocus => {\n setInternalHasFocus(newHasFocus);\n if (onFocusedViewChange) {\n onFocusedViewChange(newHasFocus);\n }\n });\n const isYearDisabled = React.useCallback(dateToValidate => {\n if (disablePast && utils.isBeforeYear(dateToValidate, now)) {\n return true;\n }\n if (disableFuture && utils.isAfterYear(dateToValidate, now)) {\n return true;\n }\n if (minDate && utils.isBeforeYear(dateToValidate, minDate)) {\n return true;\n }\n if (maxDate && utils.isAfterYear(dateToValidate, maxDate)) {\n return true;\n }\n if (shouldDisableYear && shouldDisableYear(dateToValidate)) {\n return true;\n }\n return false;\n }, [disableFuture, disablePast, maxDate, minDate, now, shouldDisableYear, utils]);\n const handleYearSelection = useEventCallback((event, year) => {\n if (readOnly) {\n return;\n }\n const newDate = utils.setYear(selectedDateOrStartOfYear, year);\n setValue(newDate);\n onChange == null ? void 0 : onChange(newDate);\n });\n const focusYear = useEventCallback(year => {\n if (!isYearDisabled(utils.setYear(selectedDateOrStartOfYear, year))) {\n setFocusedYear(year);\n changeHasFocus(true);\n onYearFocus == null ? void 0 : onYearFocus(year);\n }\n });\n React.useEffect(() => {\n setFocusedYear(prevFocusedYear => selectedYear !== null && prevFocusedYear !== selectedYear ? selectedYear : prevFocusedYear);\n }, [selectedYear]);\n const handleKeyDown = useEventCallback((event, year) => {\n switch (event.key) {\n case 'ArrowUp':\n focusYear(year - yearsPerRow);\n event.preventDefault();\n break;\n case 'ArrowDown':\n focusYear(year + yearsPerRow);\n event.preventDefault();\n break;\n case 'ArrowLeft':\n focusYear(year + (theme.direction === 'ltr' ? -1 : 1));\n event.preventDefault();\n break;\n case 'ArrowRight':\n focusYear(year + (theme.direction === 'ltr' ? 1 : -1));\n event.preventDefault();\n break;\n default:\n break;\n }\n });\n const handleYearFocus = useEventCallback((event, year) => {\n focusYear(year);\n });\n const handleYearBlur = useEventCallback((event, year) => {\n if (focusedYear === year) {\n changeHasFocus(false);\n }\n });\n const scrollerRef = React.useRef(null);\n const handleRef = useForkRef(ref, scrollerRef);\n React.useEffect(() => {\n if (autoFocus || scrollerRef.current === null) {\n return;\n }\n const tabbableButton = scrollerRef.current.querySelector('[tabindex=\"0\"]');\n if (!tabbableButton) {\n return;\n }\n\n // Taken from useScroll in x-data-grid, but vertically centered\n const offsetHeight = tabbableButton.offsetHeight;\n const offsetTop = tabbableButton.offsetTop;\n const clientHeight = scrollerRef.current.clientHeight;\n const scrollTop = scrollerRef.current.scrollTop;\n const elementBottom = offsetTop + offsetHeight;\n if (offsetHeight > clientHeight || offsetTop < scrollTop) {\n // Button already visible\n return;\n }\n scrollerRef.current.scrollTop = elementBottom - clientHeight / 2 - offsetHeight / 2;\n }, [autoFocus]);\n return /*#__PURE__*/_jsx(YearCalendarRoot, _extends({\n ref: handleRef,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: utils.getYearRange(minDate, maxDate).map(year => {\n const yearNumber = utils.getYear(year);\n const isSelected = yearNumber === selectedYear;\n const isDisabled = disabled || isYearDisabled(year);\n return /*#__PURE__*/_jsx(PickersYear, {\n selected: isSelected,\n value: yearNumber,\n onClick: handleYearSelection,\n onKeyDown: handleKeyDown,\n autoFocus: internalHasFocus && yearNumber === focusedYear,\n disabled: isDisabled,\n tabIndex: yearNumber === focusedYear ? 0 : -1,\n onFocus: handleYearFocus,\n onBlur: handleYearBlur,\n \"aria-current\": todayYear === yearNumber ? 'date' : undefined,\n yearsPerRow: yearsPerRow,\n children: utils.format(year, 'year')\n }, utils.format(year, 'year'));\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? YearCalendar.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * className applied to the root element.\n */\n className: PropTypes.string,\n /**\n * The default selected value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true` picker is disabled\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n hasFocus: PropTypes.bool,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Callback fired when the value changes.\n * @template TDate\n * @param {TDate | null} value The new value.\n */\n onChange: PropTypes.func,\n onFocusedViewChange: PropTypes.func,\n onYearFocus: PropTypes.func,\n /**\n * If `true` picker is readonly\n */\n readOnly: PropTypes.bool,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * Years rendered per row.\n * @default 3\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n} : void 0;","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getPickersArrowSwitcherUtilityClass(slot) {\n return generateUtilityClass('MuiPickersArrowSwitcher', slot);\n}\nexport const pickersArrowSwitcherClasses = generateUtilityClasses('MuiPickersArrowSwitcher', ['root', 'spacer', 'button']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"slots\", \"slotProps\", \"isNextDisabled\", \"isNextHidden\", \"onGoToNext\", \"nextLabel\", \"isPreviousDisabled\", \"isPreviousHidden\", \"onGoToPrevious\", \"previousLabel\"],\n _excluded2 = [\"ownerState\"],\n _excluded3 = [\"ownerState\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport Typography from '@mui/material/Typography';\nimport { useTheme, styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport { useSlotProps } from '@mui/base/utils';\nimport IconButton from '@mui/material/IconButton';\nimport { ArrowLeftIcon, ArrowRightIcon } from '../../../icons';\nimport { getPickersArrowSwitcherUtilityClass } from './pickersArrowSwitcherClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst PickersArrowSwitcherRoot = styled('div', {\n name: 'MuiPickersArrowSwitcher',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex'\n});\nconst PickersArrowSwitcherSpacer = styled('div', {\n name: 'MuiPickersArrowSwitcher',\n slot: 'Spacer',\n overridesResolver: (props, styles) => styles.spacer\n})(({\n theme\n}) => ({\n width: theme.spacing(3)\n}));\nconst PickersArrowSwitcherButton = styled(IconButton, {\n name: 'MuiPickersArrowSwitcher',\n slot: 'Button',\n overridesResolver: (props, styles) => styles.button\n})(({\n ownerState\n}) => _extends({}, ownerState.hidden && {\n visibility: 'hidden'\n}));\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n spacer: ['spacer'],\n button: ['button']\n };\n return composeClasses(slots, getPickersArrowSwitcherUtilityClass, classes);\n};\nexport const PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function PickersArrowSwitcher(inProps, ref) {\n var _slots$previousIconBu, _slots$nextIconButton, _slots$leftArrowIcon, _slots$rightArrowIcon;\n const theme = useTheme();\n const isRTL = theme.direction === 'rtl';\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersArrowSwitcher'\n });\n const {\n children,\n className,\n slots,\n slotProps,\n isNextDisabled,\n isNextHidden,\n onGoToNext,\n nextLabel,\n isPreviousDisabled,\n isPreviousHidden,\n onGoToPrevious,\n previousLabel\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const nextProps = {\n isDisabled: isNextDisabled,\n isHidden: isNextHidden,\n goTo: onGoToNext,\n label: nextLabel\n };\n const previousProps = {\n isDisabled: isPreviousDisabled,\n isHidden: isPreviousHidden,\n goTo: onGoToPrevious,\n label: previousLabel\n };\n const [leftProps, rightProps] = isRTL ? [nextProps, previousProps] : [previousProps, nextProps];\n const PreviousIconButton = (_slots$previousIconBu = slots == null ? void 0 : slots.previousIconButton) != null ? _slots$previousIconBu : PickersArrowSwitcherButton;\n const previousIconButtonProps = useSlotProps({\n elementType: PreviousIconButton,\n externalSlotProps: slotProps == null ? void 0 : slotProps.previousIconButton,\n additionalProps: {\n size: 'medium',\n title: leftProps.label,\n 'aria-label': leftProps.label,\n disabled: leftProps.isDisabled,\n edge: 'end',\n onClick: leftProps.goTo\n },\n ownerState: _extends({}, ownerState, {\n hidden: leftProps.isHidden\n }),\n className: classes.button\n });\n const NextIconButton = (_slots$nextIconButton = slots == null ? void 0 : slots.nextIconButton) != null ? _slots$nextIconButton : PickersArrowSwitcherButton;\n const nextIconButtonProps = useSlotProps({\n elementType: NextIconButton,\n externalSlotProps: slotProps == null ? void 0 : slotProps.nextIconButton,\n additionalProps: {\n size: 'medium',\n title: rightProps.label,\n 'aria-label': rightProps.label,\n disabled: rightProps.isDisabled,\n edge: 'start',\n onClick: rightProps.goTo\n },\n ownerState: _extends({}, ownerState, {\n hidden: rightProps.isHidden\n }),\n className: classes.button\n });\n const LeftArrowIcon = (_slots$leftArrowIcon = slots == null ? void 0 : slots.leftArrowIcon) != null ? _slots$leftArrowIcon : ArrowLeftIcon;\n // The spread is here to avoid this bug mui/material-ui#34056\n const _useSlotProps = useSlotProps({\n elementType: LeftArrowIcon,\n externalSlotProps: slotProps == null ? void 0 : slotProps.leftArrowIcon,\n additionalProps: {\n fontSize: 'inherit'\n },\n ownerState: undefined\n }),\n leftArrowIconProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);\n const RightArrowIcon = (_slots$rightArrowIcon = slots == null ? void 0 : slots.rightArrowIcon) != null ? _slots$rightArrowIcon : ArrowRightIcon;\n // The spread is here to avoid this bug mui/material-ui#34056\n const _useSlotProps2 = useSlotProps({\n elementType: RightArrowIcon,\n externalSlotProps: slotProps == null ? void 0 : slotProps.rightArrowIcon,\n additionalProps: {\n fontSize: 'inherit'\n },\n ownerState: undefined\n }),\n rightArrowIconProps = _objectWithoutPropertiesLoose(_useSlotProps2, _excluded3);\n return /*#__PURE__*/_jsxs(PickersArrowSwitcherRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: [/*#__PURE__*/_jsx(PreviousIconButton, _extends({}, previousIconButtonProps, {\n children: isRTL ? /*#__PURE__*/_jsx(RightArrowIcon, _extends({}, rightArrowIconProps)) : /*#__PURE__*/_jsx(LeftArrowIcon, _extends({}, leftArrowIconProps))\n })), children ? /*#__PURE__*/_jsx(Typography, {\n variant: \"subtitle1\",\n component: \"span\",\n children: children\n }) : /*#__PURE__*/_jsx(PickersArrowSwitcherSpacer, {\n className: classes.spacer,\n ownerState: ownerState\n }), /*#__PURE__*/_jsx(NextIconButton, _extends({}, nextIconButtonProps, {\n children: isRTL ? /*#__PURE__*/_jsx(LeftArrowIcon, _extends({}, leftArrowIconProps)) : /*#__PURE__*/_jsx(RightArrowIcon, _extends({}, rightArrowIconProps))\n }))]\n }));\n});","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getPickersCalendarHeaderUtilityClass = slot => generateUtilityClass('MuiPickersCalendarHeader', slot);\nexport const pickersCalendarHeaderClasses = generateUtilityClasses('MuiPickersCalendarHeader', ['root', 'labelContainer', 'label', 'switchViewButton', 'switchViewIcon']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"ownerState\"];\nimport * as React from 'react';\nimport Fade from '@mui/material/Fade';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { useSlotProps } from '@mui/base/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport IconButton from '@mui/material/IconButton';\nimport { useLocaleText, useUtils } from '../internals/hooks/useUtils';\nimport { PickersFadeTransitionGroup } from './PickersFadeTransitionGroup';\nimport { ArrowDropDownIcon } from '../icons';\nimport { PickersArrowSwitcher } from '../internals/components/PickersArrowSwitcher';\nimport { usePreviousMonthDisabled, useNextMonthDisabled } from '../internals/hooks/date-helpers-hooks';\nimport { getPickersCalendarHeaderUtilityClass, pickersCalendarHeaderClasses } from './pickersCalendarHeaderClasses';\n\n// We keep the interface to allow module augmentation\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n labelContainer: ['labelContainer'],\n label: ['label'],\n switchViewButton: ['switchViewButton'],\n switchViewIcon: ['switchViewIcon']\n };\n return composeClasses(slots, getPickersCalendarHeaderUtilityClass, classes);\n};\nconst PickersCalendarHeaderRoot = styled('div', {\n name: 'MuiPickersCalendarHeader',\n slot: 'Root',\n overridesResolver: (_, styles) => styles.root\n})({\n display: 'flex',\n alignItems: 'center',\n marginTop: 16,\n marginBottom: 8,\n paddingLeft: 24,\n paddingRight: 12,\n // prevent jumping in safari\n maxHeight: 30,\n minHeight: 30\n});\nconst PickersCalendarHeaderLabelContainer = styled('div', {\n name: 'MuiPickersCalendarHeader',\n slot: 'LabelContainer',\n overridesResolver: (_, styles) => styles.labelContainer\n})(({\n theme\n}) => _extends({\n display: 'flex',\n overflow: 'hidden',\n alignItems: 'center',\n cursor: 'pointer',\n marginRight: 'auto'\n}, theme.typography.body1, {\n fontWeight: theme.typography.fontWeightMedium\n}));\nconst PickersCalendarHeaderLabel = styled('div', {\n name: 'MuiPickersCalendarHeader',\n slot: 'Label',\n overridesResolver: (_, styles) => styles.label\n})({\n marginRight: 6\n});\nconst PickersCalendarHeaderSwitchViewButton = styled(IconButton, {\n name: 'MuiPickersCalendarHeader',\n slot: 'SwitchViewButton',\n overridesResolver: (_, styles) => styles.switchViewButton\n})(({\n ownerState\n}) => _extends({\n marginRight: 'auto'\n}, ownerState.view === 'year' && {\n [`.${pickersCalendarHeaderClasses.switchViewIcon}`]: {\n transform: 'rotate(180deg)'\n }\n}));\nconst PickersCalendarHeaderSwitchViewIcon = styled(ArrowDropDownIcon, {\n name: 'MuiPickersCalendarHeader',\n slot: 'SwitchViewIcon',\n overridesResolver: (_, styles) => styles.switchViewIcon\n})(({\n theme\n}) => ({\n willChange: 'transform',\n transition: theme.transitions.create('transform'),\n transform: 'rotate(0deg)'\n}));\n\n/**\n * @ignore - do not document.\n */\nexport function PickersCalendarHeader(inProps) {\n var _slots$switchViewButt, _slots$switchViewIcon;\n const localeText = useLocaleText();\n const utils = useUtils();\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersCalendarHeader'\n });\n const {\n slots,\n slotProps,\n currentMonth: month,\n disabled,\n disableFuture,\n disablePast,\n maxDate,\n minDate,\n onMonthChange,\n onViewChange,\n view,\n reduceAnimations,\n views,\n labelId\n } = props;\n const ownerState = props;\n const classes = useUtilityClasses(props);\n const SwitchViewButton = (_slots$switchViewButt = slots == null ? void 0 : slots.switchViewButton) != null ? _slots$switchViewButt : PickersCalendarHeaderSwitchViewButton;\n const switchViewButtonProps = useSlotProps({\n elementType: SwitchViewButton,\n externalSlotProps: slotProps == null ? void 0 : slotProps.switchViewButton,\n additionalProps: {\n size: 'small',\n 'aria-label': localeText.calendarViewSwitchingButtonAriaLabel(view)\n },\n ownerState,\n className: classes.switchViewButton\n });\n const SwitchViewIcon = (_slots$switchViewIcon = slots == null ? void 0 : slots.switchViewIcon) != null ? _slots$switchViewIcon : PickersCalendarHeaderSwitchViewIcon;\n // The spread is here to avoid this bug mui/material-ui#34056\n const _useSlotProps = useSlotProps({\n elementType: SwitchViewIcon,\n externalSlotProps: slotProps == null ? void 0 : slotProps.switchViewIcon,\n ownerState: undefined,\n className: classes.switchViewIcon\n }),\n switchViewIconProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded);\n const selectNextMonth = () => onMonthChange(utils.addMonths(month, 1), 'left');\n const selectPreviousMonth = () => onMonthChange(utils.addMonths(month, -1), 'right');\n const isNextMonthDisabled = useNextMonthDisabled(month, {\n disableFuture,\n maxDate\n });\n const isPreviousMonthDisabled = usePreviousMonthDisabled(month, {\n disablePast,\n minDate\n });\n const handleToggleView = () => {\n if (views.length === 1 || !onViewChange || disabled) {\n return;\n }\n if (views.length === 2) {\n onViewChange(views.find(el => el !== view) || views[0]);\n } else {\n // switching only between first 2\n const nextIndexToOpen = views.indexOf(view) !== 0 ? 0 : 1;\n onViewChange(views[nextIndexToOpen]);\n }\n };\n\n // No need to display more information\n if (views.length === 1 && views[0] === 'year') {\n return null;\n }\n return /*#__PURE__*/_jsxs(PickersCalendarHeaderRoot, {\n ownerState: ownerState,\n className: classes.root,\n children: [/*#__PURE__*/_jsxs(PickersCalendarHeaderLabelContainer, {\n role: \"presentation\",\n onClick: handleToggleView,\n ownerState: ownerState\n // putting this on the label item element below breaks when using transition\n ,\n \"aria-live\": \"polite\",\n className: classes.labelContainer,\n children: [/*#__PURE__*/_jsx(PickersFadeTransitionGroup, {\n reduceAnimations: reduceAnimations,\n transKey: utils.format(month, 'monthAndYear'),\n children: /*#__PURE__*/_jsx(PickersCalendarHeaderLabel, {\n id: labelId,\n ownerState: ownerState,\n className: classes.label,\n children: utils.format(month, 'monthAndYear')\n })\n }), views.length > 1 && !disabled && /*#__PURE__*/_jsx(SwitchViewButton, _extends({}, switchViewButtonProps, {\n children: /*#__PURE__*/_jsx(SwitchViewIcon, _extends({}, switchViewIconProps))\n }))]\n }), /*#__PURE__*/_jsx(Fade, {\n in: view === 'day',\n children: /*#__PURE__*/_jsx(PickersArrowSwitcher, {\n slots: slots,\n slotProps: slotProps,\n onGoToPrevious: selectPreviousMonth,\n isPreviousDisabled: isPreviousMonthDisabled,\n previousLabel: localeText.previousMonth,\n onGoToNext: selectNextMonth,\n isNextDisabled: isNextMonthDisabled,\n nextLabel: localeText.nextMonth\n })\n })]\n });\n}","import * as React from 'react';\nimport { useUtils } from './useUtils';\nimport { getMeridiem, convertToMeridiem } from '../utils/time-utils';\nexport function useNextMonthDisabled(month, {\n disableFuture,\n maxDate\n}) {\n const utils = useUtils();\n return React.useMemo(() => {\n const now = utils.date();\n const lastEnabledMonth = utils.startOfMonth(disableFuture && utils.isBefore(now, maxDate) ? now : maxDate);\n return !utils.isAfter(lastEnabledMonth, month);\n }, [disableFuture, maxDate, month, utils]);\n}\nexport function usePreviousMonthDisabled(month, {\n disablePast,\n minDate\n}) {\n const utils = useUtils();\n return React.useMemo(() => {\n const now = utils.date();\n const firstEnabledMonth = utils.startOfMonth(disablePast && utils.isAfter(now, minDate) ? now : minDate);\n return !utils.isBefore(firstEnabledMonth, month);\n }, [disablePast, minDate, month, utils]);\n}\nexport function useMeridiemMode(date, ampm, onChange, selectionState) {\n const utils = useUtils();\n const meridiemMode = getMeridiem(date, utils);\n const handleMeridiemChange = React.useCallback(mode => {\n const timeWithMeridiem = date == null ? null : convertToMeridiem(date, mode, Boolean(ampm), utils);\n onChange(timeWithMeridiem, selectionState != null ? selectionState : 'partial');\n }, [ampm, date, onChange, selectionState, utils]);\n return {\n meridiemMode,\n handleMeridiemChange\n };\n}","import { styled } from '@mui/material/styles';\nimport { DIALOG_WIDTH, VIEW_HEIGHT } from '../../constants/dimensions';\nexport const PickerViewRoot = styled('div')({\n overflow: 'hidden',\n width: DIALOG_WIDTH,\n maxHeight: VIEW_HEIGHT,\n display: 'flex',\n flexDirection: 'column',\n margin: '0 auto'\n});","export const defaultReduceAnimations = typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent);","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getDateCalendarUtilityClass = slot => generateUtilityClass('MuiDateCalendar', slot);\nexport const dateCalendarClasses = generateUtilityClasses('MuiDateCalendar', ['root', 'viewTransitionContainer']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"onViewChange\", \"value\", \"defaultValue\", \"disableFuture\", \"disablePast\", \"defaultCalendarMonth\", \"onChange\", \"onYearChange\", \"onMonthChange\", \"reduceAnimations\", \"shouldDisableDate\", \"shouldDisableMonth\", \"shouldDisableYear\", \"view\", \"views\", \"openTo\", \"className\", \"disabled\", \"readOnly\", \"minDate\", \"maxDate\", \"disableHighlightToday\", \"focusedView\", \"onFocusedViewChange\", \"showDaysOutsideCurrentMonth\", \"fixedWeekNumber\", \"dayOfWeekFormatter\", \"components\", \"componentsProps\", \"slots\", \"slotProps\", \"loading\", \"renderLoading\", \"displayWeekNumber\", \"yearsPerRow\", \"monthsPerRow\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses, unstable_useId as useId, unstable_useEventCallback as useEventCallback, unstable_useControlled as useControlled } from '@mui/utils';\nimport { useCalendarState } from './useCalendarState';\nimport { useDefaultDates, useUtils } from '../internals/hooks/useUtils';\nimport { PickersFadeTransitionGroup } from './PickersFadeTransitionGroup';\nimport { DayCalendar } from './DayCalendar';\nimport { MonthCalendar } from '../MonthCalendar';\nimport { YearCalendar } from '../YearCalendar';\nimport { useViews } from '../internals/hooks/useViews';\nimport { PickersCalendarHeader } from './PickersCalendarHeader';\nimport { findClosestEnabledDate, applyDefaultDate, mergeDateAndTime } from '../internals/utils/date-utils';\nimport { PickerViewRoot } from '../internals/components/PickerViewRoot';\nimport { defaultReduceAnimations } from '../internals/utils/defaultReduceAnimations';\nimport { getDateCalendarUtilityClass } from './dateCalendarClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n viewTransitionContainer: ['viewTransitionContainer']\n };\n return composeClasses(slots, getDateCalendarUtilityClass, classes);\n};\nfunction useDateCalendarDefaultizedProps(props, name) {\n const utils = useUtils();\n const defaultDates = useDefaultDates();\n const themeProps = useThemeProps({\n props,\n name\n });\n return _extends({\n loading: false,\n disablePast: false,\n disableFuture: false,\n openTo: 'day',\n views: ['year', 'day'],\n reduceAnimations: defaultReduceAnimations,\n renderLoading: () => /*#__PURE__*/_jsx(\"span\", {\n children: \"...\"\n })\n }, themeProps, {\n minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),\n maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate)\n });\n}\nconst DateCalendarRoot = styled(PickerViewRoot, {\n name: 'MuiDateCalendar',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex',\n flexDirection: 'column'\n});\nconst DateCalendarViewTransitionContainer = styled(PickersFadeTransitionGroup, {\n name: 'MuiDateCalendar',\n slot: 'ViewTransitionContainer',\n overridesResolver: (props, styles) => styles.viewTransitionContainer\n})({});\n/**\n *\n * Demos:\n *\n * - [Date Picker](https://mui.com/x/react-date-pickers/date-picker/)\n *\n * API:\n *\n * - [DateCalendar API](https://mui.com/x/api/date-pickers/date-calendar/)\n */\nexport const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps, ref) {\n const utils = useUtils();\n const id = useId();\n const props = useDateCalendarDefaultizedProps(inProps, 'MuiDateCalendar');\n const {\n autoFocus,\n onViewChange,\n value: valueProp,\n defaultValue,\n disableFuture,\n disablePast,\n defaultCalendarMonth,\n onChange,\n onYearChange,\n onMonthChange,\n reduceAnimations,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n view: inView,\n views,\n openTo,\n className,\n disabled,\n readOnly,\n minDate,\n maxDate,\n disableHighlightToday,\n focusedView: inFocusedView,\n onFocusedViewChange,\n showDaysOutsideCurrentMonth,\n fixedWeekNumber,\n dayOfWeekFormatter,\n components,\n componentsProps,\n slots,\n slotProps,\n loading,\n renderLoading,\n displayWeekNumber,\n yearsPerRow,\n monthsPerRow\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [value, setValue] = useControlled({\n name: 'DateCalendar',\n state: 'value',\n controlled: valueProp,\n default: defaultValue != null ? defaultValue : null\n });\n const handleValueChange = useEventCallback((newValue, selectionState) => {\n setValue(newValue);\n onChange == null ? void 0 : onChange(newValue, selectionState);\n });\n const {\n view,\n setView,\n focusedView,\n setFocusedView,\n goToNextView,\n setValueAndGoToNextView\n } = useViews({\n view: inView,\n views,\n openTo,\n onChange: handleValueChange,\n onViewChange,\n autoFocus,\n focusedView: inFocusedView,\n onFocusedViewChange\n });\n const {\n calendarState,\n changeFocusedDay,\n changeMonth,\n handleChangeMonth,\n isDateDisabled,\n onMonthSwitchingAnimationEnd\n } = useCalendarState({\n value,\n defaultCalendarMonth,\n reduceAnimations,\n onMonthChange,\n minDate,\n maxDate,\n shouldDisableDate,\n disablePast,\n disableFuture\n });\n const handleDateMonthChange = useEventCallback(newDate => {\n const startOfMonth = utils.startOfMonth(newDate);\n const endOfMonth = utils.endOfMonth(newDate);\n const closestEnabledDate = isDateDisabled(newDate) ? findClosestEnabledDate({\n utils,\n date: newDate,\n minDate: utils.isBefore(minDate, startOfMonth) ? startOfMonth : minDate,\n maxDate: utils.isAfter(maxDate, endOfMonth) ? endOfMonth : maxDate,\n disablePast,\n disableFuture,\n isDateDisabled\n }) : newDate;\n if (closestEnabledDate) {\n setValueAndGoToNextView(closestEnabledDate, 'finish');\n onMonthChange == null ? void 0 : onMonthChange(startOfMonth);\n } else {\n goToNextView();\n changeMonth(startOfMonth);\n }\n changeFocusedDay(closestEnabledDate, true);\n });\n const handleDateYearChange = useEventCallback(newDate => {\n const startOfYear = utils.startOfYear(newDate);\n const endOfYear = utils.endOfYear(newDate);\n const closestEnabledDate = isDateDisabled(newDate) ? findClosestEnabledDate({\n utils,\n date: newDate,\n minDate: utils.isBefore(minDate, startOfYear) ? startOfYear : minDate,\n maxDate: utils.isAfter(maxDate, endOfYear) ? endOfYear : maxDate,\n disablePast,\n disableFuture,\n isDateDisabled\n }) : newDate;\n if (closestEnabledDate) {\n setValueAndGoToNextView(closestEnabledDate, 'finish');\n onYearChange == null ? void 0 : onYearChange(closestEnabledDate);\n } else {\n goToNextView();\n changeMonth(startOfYear);\n }\n changeFocusedDay(closestEnabledDate, true);\n });\n const handleSelectedDayChange = useEventCallback(day => {\n if (value && day) {\n // If there is a date already selected, then we want to keep its time\n return handleValueChange(mergeDateAndTime(utils, day, value), 'finish');\n }\n return handleValueChange(day, 'finish');\n });\n React.useEffect(() => {\n if (value != null && utils.isValid(value)) {\n changeMonth(value);\n }\n }, [value]); // eslint-disable-line\n\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const baseDateValidationProps = {\n disablePast,\n disableFuture,\n maxDate,\n minDate\n };\n\n // When disabled, limit the view to the selected date\n const minDateWithDisabled = disabled && value || minDate;\n const maxDateWithDisabled = disabled && value || maxDate;\n const commonViewProps = {\n disableHighlightToday,\n readOnly,\n disabled\n };\n const gridLabelId = `${id}-grid-label`;\n const hasFocus = focusedView !== null;\n const prevOpenViewRef = React.useRef(view);\n React.useEffect(() => {\n // If the view change and the focus was on the previous view\n // Then we update the focus.\n if (prevOpenViewRef.current === view) {\n return;\n }\n if (focusedView === prevOpenViewRef.current) {\n setFocusedView(view, true);\n }\n prevOpenViewRef.current = view;\n }, [focusedView, setFocusedView, view]);\n const selectedDays = React.useMemo(() => [value], [value]);\n return /*#__PURE__*/_jsxs(DateCalendarRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: [/*#__PURE__*/_jsx(PickersCalendarHeader, {\n views: views,\n view: view,\n currentMonth: calendarState.currentMonth,\n onViewChange: setView,\n onMonthChange: (newMonth, direction) => handleChangeMonth({\n newMonth,\n direction\n }),\n minDate: minDateWithDisabled,\n maxDate: maxDateWithDisabled,\n disabled: disabled,\n disablePast: disablePast,\n disableFuture: disableFuture,\n reduceAnimations: reduceAnimations,\n labelId: gridLabelId,\n slots: slots,\n slotProps: slotProps\n }), /*#__PURE__*/_jsx(DateCalendarViewTransitionContainer, {\n reduceAnimations: reduceAnimations,\n className: classes.viewTransitionContainer,\n transKey: view,\n ownerState: ownerState,\n children: /*#__PURE__*/_jsxs(\"div\", {\n children: [view === 'year' && /*#__PURE__*/_jsx(YearCalendar, _extends({}, baseDateValidationProps, commonViewProps, {\n value: value,\n onChange: handleDateYearChange,\n shouldDisableYear: shouldDisableYear,\n hasFocus: hasFocus,\n onFocusedViewChange: isViewFocused => setFocusedView('year', isViewFocused),\n yearsPerRow: yearsPerRow\n })), view === 'month' && /*#__PURE__*/_jsx(MonthCalendar, _extends({}, baseDateValidationProps, commonViewProps, {\n hasFocus: hasFocus,\n className: className,\n value: value,\n onChange: handleDateMonthChange,\n shouldDisableMonth: shouldDisableMonth,\n onFocusedViewChange: isViewFocused => setFocusedView('month', isViewFocused),\n monthsPerRow: monthsPerRow\n })), view === 'day' && /*#__PURE__*/_jsx(DayCalendar, _extends({}, calendarState, baseDateValidationProps, commonViewProps, {\n onMonthSwitchingAnimationEnd: onMonthSwitchingAnimationEnd,\n onFocusedDayChange: changeFocusedDay,\n reduceAnimations: reduceAnimations,\n selectedDays: selectedDays,\n onSelectedDaysChange: handleSelectedDayChange,\n shouldDisableDate: shouldDisableDate,\n shouldDisableMonth: shouldDisableMonth,\n shouldDisableYear: shouldDisableYear,\n hasFocus: hasFocus,\n onFocusedViewChange: isViewFocused => setFocusedView('day', isViewFocused),\n gridLabelId: gridLabelId,\n showDaysOutsideCurrentMonth: showDaysOutsideCurrentMonth,\n fixedWeekNumber: fixedWeekNumber,\n dayOfWeekFormatter: dayOfWeekFormatter,\n displayWeekNumber: displayWeekNumber,\n components: components,\n componentsProps: componentsProps,\n slots: slots,\n slotProps: slotProps,\n loading: loading,\n renderLoading: renderLoading\n }))]\n })\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? DateCalendar.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n classes: PropTypes.object,\n className: PropTypes.string,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default selected value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Controlled focused view.\n */\n focusedView: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value changes.\n * @template TDate\n * @param {TDate | null} value The new value.\n * @param {PickerSelectionState | undefined} selectionState Indicates if the date selection is complete.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired on focused view change.\n * @template TView\n * @param {TView} view The new view to focus or not.\n * @param {boolean} hasFocus `true` if the view should be focused.\n */\n onFocusedViewChange: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Make picker read only.\n * @default false\n */\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 3\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n} : void 0;","import * as React from 'react';\nimport { DateCalendar } from '../DateCalendar';\nimport { isDatePickerView } from '../internals/utils/date-utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const renderDateViewCalendar = ({\n view,\n onViewChange,\n views,\n focusedView,\n onFocusedViewChange,\n value,\n defaultValue,\n onChange,\n className,\n classes,\n disableFuture,\n disablePast,\n minDate,\n maxDate,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n reduceAnimations,\n onMonthChange,\n monthsPerRow,\n onYearChange,\n yearsPerRow,\n defaultCalendarMonth,\n components,\n componentsProps,\n slots,\n slotProps,\n loading,\n renderLoading,\n disableHighlightToday,\n readOnly,\n disabled,\n showDaysOutsideCurrentMonth,\n dayOfWeekFormatter,\n sx,\n autoFocus,\n fixedWeekNumber,\n displayWeekNumber\n}) => /*#__PURE__*/_jsx(DateCalendar, {\n view: view,\n onViewChange: onViewChange,\n views: views.filter(isDatePickerView),\n focusedView: focusedView && isDatePickerView(focusedView) ? focusedView : null,\n onFocusedViewChange: onFocusedViewChange,\n value: value,\n defaultValue: defaultValue,\n onChange: onChange,\n className: className,\n classes: classes,\n disableFuture: disableFuture,\n disablePast: disablePast,\n minDate: minDate,\n maxDate: maxDate,\n shouldDisableDate: shouldDisableDate,\n shouldDisableMonth: shouldDisableMonth,\n shouldDisableYear: shouldDisableYear,\n reduceAnimations: reduceAnimations,\n onMonthChange: onMonthChange,\n monthsPerRow: monthsPerRow,\n onYearChange: onYearChange,\n yearsPerRow: yearsPerRow,\n defaultCalendarMonth: defaultCalendarMonth,\n components: components,\n componentsProps: componentsProps,\n slots: slots,\n slotProps: slotProps,\n loading: loading,\n renderLoading: renderLoading,\n disableHighlightToday: disableHighlightToday,\n readOnly: readOnly,\n disabled: disabled,\n showDaysOutsideCurrentMonth: showDaysOutsideCurrentMonth,\n dayOfWeekFormatter: dayOfWeekFormatter,\n sx: sx,\n autoFocus: autoFocus,\n fixedWeekNumber: fixedWeekNumber,\n displayWeekNumber: displayWeekNumber\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { resolveComponentProps } from '@mui/base/utils';\nimport { singleItemValueManager } from '../internals/utils/valueManagers';\nimport { useDatePickerDefaultizedProps } from '../DatePicker/shared';\nimport { useLocaleText, useUtils, validateDate } from '../internals';\nimport { useDesktopPicker } from '../internals/hooks/useDesktopPicker';\nimport { CalendarIcon } from '../icons';\nimport { DateField } from '../DateField';\nimport { extractValidationProps } from '../internals/utils/validation/extractValidationProps';\nimport { renderDateViewCalendar } from '../dateViewRenderers';\nimport { resolveDateFormat } from '../internals/utils/date-utils';\nconst DesktopDatePicker = /*#__PURE__*/React.forwardRef(function DesktopDatePicker(inProps, ref) {\n var _defaultizedProps$yea, _defaultizedProps$slo2;\n const localeText = useLocaleText();\n const utils = useUtils();\n\n // Props with the default values common to all date pickers\n const defaultizedProps = useDatePickerDefaultizedProps(inProps, 'MuiDesktopDatePicker');\n const viewRenderers = _extends({\n day: renderDateViewCalendar,\n month: renderDateViewCalendar,\n year: renderDateViewCalendar\n }, defaultizedProps.viewRenderers);\n\n // Props with the default values specific to the desktop variant\n const props = _extends({}, defaultizedProps, {\n viewRenderers,\n format: resolveDateFormat(utils, defaultizedProps, false),\n yearsPerRow: (_defaultizedProps$yea = defaultizedProps.yearsPerRow) != null ? _defaultizedProps$yea : 4,\n slots: _extends({\n openPickerIcon: CalendarIcon,\n field: DateField\n }, defaultizedProps.slots),\n slotProps: _extends({}, defaultizedProps.slotProps, {\n field: ownerState => {\n var _defaultizedProps$slo;\n return _extends({}, resolveComponentProps((_defaultizedProps$slo = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo.field, ownerState), extractValidationProps(defaultizedProps), {\n ref\n });\n },\n toolbar: _extends({\n hidden: true\n }, (_defaultizedProps$slo2 = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo2.toolbar)\n })\n });\n const {\n renderPicker\n } = useDesktopPicker({\n props,\n valueManager: singleItemValueManager,\n valueType: 'date',\n getOpenDialogAriaText: localeText.openDatePickerDialogue,\n validator: validateDate\n });\n return renderPicker();\n});\nDesktopDatePicker.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n /**\n * Class name applied to the root element.\n */\n className: PropTypes.string,\n /**\n * If `true`, the popover or modal will close after submitting the full date.\n * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).\n */\n closeOnSelect: PropTypes.bool,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, the open picker button will not be rendered (renders only the field).\n * @default false\n */\n disableOpenPicker: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Format of the date when rendered in the input(s).\n * Defaults to localized format based on the used `views`.\n */\n format: PropTypes.string,\n /**\n * Density of the format when rendered in the input.\n * Setting `formatDensity` to `\"spacious\"` will add a space before and after each `/`, `-` and `.` character.\n * @default \"dense\"\n */\n formatDensity: PropTypes.oneOf(['dense', 'spacious']),\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n current: PropTypes.object\n })]),\n /**\n * The label content.\n */\n label: PropTypes.node,\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Locale for components texts.\n * Allows overriding texts coming from `LocalizationProvider` and `theme`.\n */\n localeText: PropTypes.object,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value is accepted.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The value that was just accepted.\n */\n onAccept: PropTypes.func,\n /**\n * Callback fired when the value changes.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The new value.\n * @param {FieldChangeHandlerContext} context The context containing the validation result of the current value.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see `open`).\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the error associated to the current value changes.\n * If the error has a non-null value, then the `TextField` will be rendered in `error` state.\n *\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TError} error The new error describing why the current value is not valid.\n * @param {TValue} value The value associated to the error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see `open`).\n */\n onOpen: PropTypes.func,\n /**\n * Callback fired when the selected sections change.\n * @param {FieldSelectedSections} newValue The new selected sections.\n */\n onSelectedSectionsChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * Control the popup or dialog open state.\n * @default false\n */\n open: PropTypes.bool,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Force rendering in particular orientation.\n */\n orientation: PropTypes.oneOf(['landscape', 'portrait']),\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * The currently selected sections.\n * This prop accept four formats:\n * 1. If a number is provided, the section at this index will be selected.\n * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.\n * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.\n * 4. If `null` is provided, no section will be selected\n * If not provided, the selected sections will be handled internally.\n */\n selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({\n endIndex: PropTypes.number.isRequired,\n startIndex: PropTypes.number.isRequired\n })]),\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Define custom view renderers for each section.\n * If `null`, the section will only have field editing.\n * If `undefined`, internally defined view will be the used.\n */\n viewRenderers: PropTypes.shape({\n day: PropTypes.func,\n month: PropTypes.func,\n year: PropTypes.func\n }),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 4\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n};\nexport { DesktopDatePicker };","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getDialogContentUtilityClass(slot) {\n return generateUtilityClass('MuiDialogContent', slot);\n}\nconst dialogContentClasses = generateUtilityClasses('MuiDialogContent', ['root', 'dividers']);\nexport default dialogContentClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getDialogTitleUtilityClass(slot) {\n return generateUtilityClass('MuiDialogTitle', slot);\n}\nconst dialogTitleClasses = generateUtilityClasses('MuiDialogTitle', ['root']);\nexport default dialogTitleClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"dividers\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getDialogContentUtilityClass } from './dialogContentClasses';\nimport dialogTitleClasses from '../DialogTitle/dialogTitleClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n dividers\n } = ownerState;\n const slots = {\n root: ['root', dividers && 'dividers']\n };\n return composeClasses(slots, getDialogContentUtilityClass, classes);\n};\nconst DialogContentRoot = styled('div', {\n name: 'MuiDialogContent',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.dividers && styles.dividers];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n flex: '1 1 auto',\n // Add iOS momentum scrolling for iOS < 13.0\n WebkitOverflowScrolling: 'touch',\n overflowY: 'auto',\n padding: '20px 24px'\n}, ownerState.dividers ? {\n padding: '16px 24px',\n borderTop: `1px solid ${(theme.vars || theme).palette.divider}`,\n borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`\n} : {\n [`.${dialogTitleClasses.root} + &`]: {\n paddingTop: 0\n }\n}));\nconst DialogContent = /*#__PURE__*/React.forwardRef(function DialogContent(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDialogContent'\n });\n const {\n className,\n dividers = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n dividers\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(DialogContentRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? DialogContent.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * Display the top and bottom dividers.\n * @default false\n */\n dividers: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default DialogContent;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getDialogUtilityClass(slot) {\n return generateUtilityClass('MuiDialog', slot);\n}\nconst dialogClasses = generateUtilityClasses('MuiDialog', ['root', 'scrollPaper', 'scrollBody', 'container', 'paper', 'paperScrollPaper', 'paperScrollBody', 'paperWidthFalse', 'paperWidthXs', 'paperWidthSm', 'paperWidthMd', 'paperWidthLg', 'paperWidthXl', 'paperFullWidth', 'paperFullScreen']);\nexport default dialogClasses;","import * as React from 'react';\nconst DialogContext = /*#__PURE__*/React.createContext({});\nif (process.env.NODE_ENV !== 'production') {\n DialogContext.displayName = 'DialogContext';\n}\nexport default DialogContext;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"aria-describedby\", \"aria-labelledby\", \"BackdropComponent\", \"BackdropProps\", \"children\", \"className\", \"disableEscapeKeyDown\", \"fullScreen\", \"fullWidth\", \"maxWidth\", \"onBackdropClick\", \"onClose\", \"open\", \"PaperComponent\", \"PaperProps\", \"scroll\", \"TransitionComponent\", \"transitionDuration\", \"TransitionProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { unstable_useId as useId } from '@mui/utils';\nimport capitalize from '../utils/capitalize';\nimport Modal from '../Modal';\nimport Fade from '../Fade';\nimport Paper from '../Paper';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport dialogClasses, { getDialogUtilityClass } from './dialogClasses';\nimport DialogContext from './DialogContext';\nimport Backdrop from '../Backdrop';\nimport useTheme from '../styles/useTheme';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DialogBackdrop = styled(Backdrop, {\n name: 'MuiDialog',\n slot: 'Backdrop',\n overrides: (props, styles) => styles.backdrop\n})({\n // Improve scrollable dialog support.\n zIndex: -1\n});\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n scroll,\n maxWidth,\n fullWidth,\n fullScreen\n } = ownerState;\n const slots = {\n root: ['root'],\n container: ['container', `scroll${capitalize(scroll)}`],\n paper: ['paper', `paperScroll${capitalize(scroll)}`, `paperWidth${capitalize(String(maxWidth))}`, fullWidth && 'paperFullWidth', fullScreen && 'paperFullScreen']\n };\n return composeClasses(slots, getDialogUtilityClass, classes);\n};\nconst DialogRoot = styled(Modal, {\n name: 'MuiDialog',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n '@media print': {\n // Use !important to override the Modal inline-style.\n position: 'absolute !important'\n }\n});\nconst DialogContainer = styled('div', {\n name: 'MuiDialog',\n slot: 'Container',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.container, styles[`scroll${capitalize(ownerState.scroll)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n height: '100%',\n '@media print': {\n height: 'auto'\n },\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0\n}, ownerState.scroll === 'paper' && {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n}, ownerState.scroll === 'body' && {\n overflowY: 'auto',\n overflowX: 'hidden',\n textAlign: 'center',\n '&:after': {\n content: '\"\"',\n display: 'inline-block',\n verticalAlign: 'middle',\n height: '100%',\n width: '0'\n }\n}));\nconst DialogPaper = styled(Paper, {\n name: 'MuiDialog',\n slot: 'Paper',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.paper, styles[`scrollPaper${capitalize(ownerState.scroll)}`], styles[`paperWidth${capitalize(String(ownerState.maxWidth))}`], ownerState.fullWidth && styles.paperFullWidth, ownerState.fullScreen && styles.paperFullScreen];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n margin: 32,\n position: 'relative',\n overflowY: 'auto',\n // Fix IE11 issue, to remove at some point.\n '@media print': {\n overflowY: 'visible',\n boxShadow: 'none'\n }\n}, ownerState.scroll === 'paper' && {\n display: 'flex',\n flexDirection: 'column',\n maxHeight: 'calc(100% - 64px)'\n}, ownerState.scroll === 'body' && {\n display: 'inline-block',\n verticalAlign: 'middle',\n textAlign: 'left' // 'initial' doesn't work on IE11\n}, !ownerState.maxWidth && {\n maxWidth: 'calc(100% - 64px)'\n}, ownerState.maxWidth === 'xs' && {\n maxWidth: theme.breakpoints.unit === 'px' ? Math.max(theme.breakpoints.values.xs, 444) : `max(${theme.breakpoints.values.xs}${theme.breakpoints.unit}, 444px)`,\n [`&.${dialogClasses.paperScrollBody}`]: {\n [theme.breakpoints.down(Math.max(theme.breakpoints.values.xs, 444) + 32 * 2)]: {\n maxWidth: 'calc(100% - 64px)'\n }\n }\n}, ownerState.maxWidth && ownerState.maxWidth !== 'xs' && {\n maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`,\n [`&.${dialogClasses.paperScrollBody}`]: {\n [theme.breakpoints.down(theme.breakpoints.values[ownerState.maxWidth] + 32 * 2)]: {\n maxWidth: 'calc(100% - 64px)'\n }\n }\n}, ownerState.fullWidth && {\n width: 'calc(100% - 64px)'\n}, ownerState.fullScreen && {\n margin: 0,\n width: '100%',\n maxWidth: '100%',\n height: '100%',\n maxHeight: 'none',\n borderRadius: 0,\n [`&.${dialogClasses.paperScrollBody}`]: {\n margin: 0,\n maxWidth: '100%'\n }\n}));\n\n/**\n * Dialogs are overlaid modal paper based components with a backdrop.\n */\nconst Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDialog'\n });\n const theme = useTheme();\n const defaultTransitionDuration = {\n enter: theme.transitions.duration.enteringScreen,\n exit: theme.transitions.duration.leavingScreen\n };\n const {\n 'aria-describedby': ariaDescribedby,\n 'aria-labelledby': ariaLabelledbyProp,\n BackdropComponent,\n BackdropProps,\n children,\n className,\n disableEscapeKeyDown = false,\n fullScreen = false,\n fullWidth = false,\n maxWidth = 'sm',\n onBackdropClick,\n onClose,\n open,\n PaperComponent = Paper,\n PaperProps = {},\n scroll = 'paper',\n TransitionComponent = Fade,\n transitionDuration = defaultTransitionDuration,\n TransitionProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n disableEscapeKeyDown,\n fullScreen,\n fullWidth,\n maxWidth,\n scroll\n });\n const classes = useUtilityClasses(ownerState);\n const backdropClick = React.useRef();\n const handleMouseDown = event => {\n // We don't want to close the dialog when clicking the dialog content.\n // Make sure the event starts and ends on the same DOM element.\n backdropClick.current = event.target === event.currentTarget;\n };\n const handleBackdropClick = event => {\n // Ignore the events not coming from the \"backdrop\".\n if (!backdropClick.current) {\n return;\n }\n backdropClick.current = null;\n if (onBackdropClick) {\n onBackdropClick(event);\n }\n if (onClose) {\n onClose(event, 'backdropClick');\n }\n };\n const ariaLabelledby = useId(ariaLabelledbyProp);\n const dialogContextValue = React.useMemo(() => {\n return {\n titleId: ariaLabelledby\n };\n }, [ariaLabelledby]);\n return /*#__PURE__*/_jsx(DialogRoot, _extends({\n className: clsx(classes.root, className),\n closeAfterTransition: true,\n components: {\n Backdrop: DialogBackdrop\n },\n componentsProps: {\n backdrop: _extends({\n transitionDuration,\n as: BackdropComponent\n }, BackdropProps)\n },\n disableEscapeKeyDown: disableEscapeKeyDown,\n onClose: onClose,\n open: open,\n ref: ref,\n onClick: handleBackdropClick,\n ownerState: ownerState\n }, other, {\n children: /*#__PURE__*/_jsx(TransitionComponent, _extends({\n appear: true,\n in: open,\n timeout: transitionDuration,\n role: \"presentation\"\n }, TransitionProps, {\n children: /*#__PURE__*/_jsx(DialogContainer, {\n className: clsx(classes.container),\n onMouseDown: handleMouseDown,\n ownerState: ownerState,\n children: /*#__PURE__*/_jsx(DialogPaper, _extends({\n as: PaperComponent,\n elevation: 24,\n role: \"dialog\",\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby\n }, PaperProps, {\n className: clsx(classes.paper, PaperProps.className),\n ownerState: ownerState,\n children: /*#__PURE__*/_jsx(DialogContext.Provider, {\n value: dialogContextValue,\n children: children\n })\n }))\n })\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Dialog.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The id(s) of the element(s) that describe the dialog.\n */\n 'aria-describedby': PropTypes.string,\n /**\n * The id(s) of the element(s) that label the dialog.\n */\n 'aria-labelledby': PropTypes.string,\n /**\n * A backdrop component. This prop enables custom backdrop rendering.\n * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.\n * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.\n * @default styled(Backdrop, {\n * name: 'MuiModal',\n * slot: 'Backdrop',\n * overridesResolver: (props, styles) => {\n * return styles.backdrop;\n * },\n * })({\n * zIndex: -1,\n * })\n */\n BackdropComponent: PropTypes.elementType,\n /**\n * @ignore\n */\n BackdropProps: PropTypes.object,\n /**\n * Dialog children, usually the included sub-components.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, hitting escape will not fire the `onClose` callback.\n * @default false\n */\n disableEscapeKeyDown: PropTypes.bool,\n /**\n * If `true`, the dialog is full-screen.\n * @default false\n */\n fullScreen: PropTypes.bool,\n /**\n * If `true`, the dialog stretches to `maxWidth`.\n *\n * Notice that the dialog width grow is limited by the default margin.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * Determine the max-width of the dialog.\n * The dialog width grows with the size of the screen.\n * Set to `false` to disable `maxWidth`.\n * @default 'sm'\n */\n maxWidth: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]), PropTypes.string]),\n /**\n * Callback fired when the backdrop is clicked.\n * @deprecated Use the `onClose` prop with the `reason` argument to handle the `backdropClick` events.\n */\n onBackdropClick: PropTypes.func,\n /**\n * Callback fired when the component requests to be closed.\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`.\n */\n onClose: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * The component used to render the body of the dialog.\n * @default Paper\n */\n PaperComponent: PropTypes.elementType,\n /**\n * Props applied to the [`Paper`](/material-ui/api/paper/) element.\n * @default {}\n */\n PaperProps: PropTypes.object,\n /**\n * Determine the container for scrolling the dialog.\n * @default 'paper'\n */\n scroll: PropTypes.oneOf(['body', 'paper']),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The component used for the transition.\n * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n * @default Fade\n */\n TransitionComponent: PropTypes.elementType,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n * @default {\n * enter: theme.transitions.duration.enteringScreen,\n * exit: theme.transitions.duration.leavingScreen,\n * }\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n */\n TransitionProps: PropTypes.object\n} : void 0;\nexport default Dialog;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport DialogContent from '@mui/material/DialogContent';\nimport Fade from '@mui/material/Fade';\nimport MuiDialog, { dialogClasses } from '@mui/material/Dialog';\nimport { styled } from '@mui/material/styles';\nimport { DIALOG_WIDTH } from '../constants/dimensions';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst PickersModalDialogRoot = styled(MuiDialog)({\n [`& .${dialogClasses.container}`]: {\n outline: 0\n },\n [`& .${dialogClasses.paper}`]: {\n outline: 0,\n minWidth: DIALOG_WIDTH\n }\n});\nconst PickersModalDialogContent = styled(DialogContent)({\n '&:first-of-type': {\n padding: 0\n }\n});\nexport function PickersModalDialog(props) {\n var _slots$dialog, _slots$mobileTransiti;\n const {\n children,\n onDismiss,\n open,\n slots,\n slotProps\n } = props;\n const Dialog = (_slots$dialog = slots == null ? void 0 : slots.dialog) != null ? _slots$dialog : PickersModalDialogRoot;\n const Transition = (_slots$mobileTransiti = slots == null ? void 0 : slots.mobileTransition) != null ? _slots$mobileTransiti : Fade;\n return /*#__PURE__*/_jsx(Dialog, _extends({\n open: open,\n onClose: onDismiss\n }, slotProps == null ? void 0 : slotProps.dialog, {\n TransitionComponent: Transition,\n TransitionProps: slotProps == null ? void 0 : slotProps.mobileTransition,\n PaperComponent: slots == null ? void 0 : slots.mobilePaper,\n PaperProps: slotProps == null ? void 0 : slotProps.mobilePaper,\n children: /*#__PURE__*/_jsx(PickersModalDialogContent, {\n children: children\n })\n }));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"props\", \"getOpenDialogAriaText\"];\nimport * as React from 'react';\nimport { useSlotProps } from '@mui/base/utils';\nimport useForkRef from '@mui/utils/useForkRef';\nimport useId from '@mui/utils/useId';\nimport { PickersModalDialog } from '../../components/PickersModalDialog';\nimport { usePicker } from '../usePicker';\nimport { onSpaceOrEnter } from '../../utils/utils';\nimport { useUtils } from '../useUtils';\nimport { LocalizationProvider } from '../../../LocalizationProvider';\nimport { PickersLayout } from '../../../PickersLayout';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n/**\n * Hook managing all the single-date mobile pickers:\n * - MobileDatePicker\n * - MobileDateTimePicker\n * - MobileTimePicker\n */\nexport const useMobilePicker = _ref => {\n var _innerSlotProps$toolb, _innerSlotProps$toolb2, _slots$layout;\n let {\n props,\n getOpenDialogAriaText\n } = _ref,\n pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);\n const {\n slots,\n slotProps: innerSlotProps,\n className,\n sx,\n format,\n formatDensity,\n label,\n inputRef,\n readOnly,\n disabled,\n localeText\n } = props;\n const utils = useUtils();\n const internalInputRef = React.useRef(null);\n const labelId = useId();\n const isToolbarHidden = (_innerSlotProps$toolb = innerSlotProps == null ? void 0 : (_innerSlotProps$toolb2 = innerSlotProps.toolbar) == null ? void 0 : _innerSlotProps$toolb2.hidden) != null ? _innerSlotProps$toolb : false;\n const {\n open,\n actions,\n layoutProps,\n renderCurrentView,\n fieldProps: pickerFieldProps\n } = usePicker(_extends({}, pickerParams, {\n props,\n inputRef: internalInputRef,\n autoFocusView: true,\n additionalViewProps: {},\n wrapperVariant: 'mobile'\n }));\n const Field = slots.field;\n const fieldProps = useSlotProps({\n elementType: Field,\n externalSlotProps: innerSlotProps == null ? void 0 : innerSlotProps.field,\n additionalProps: _extends({}, pickerFieldProps, isToolbarHidden && {\n id: labelId\n }, !(disabled || readOnly) && {\n onClick: actions.onOpen,\n onKeyDown: onSpaceOrEnter(actions.onOpen)\n }, {\n readOnly: readOnly != null ? readOnly : true,\n disabled,\n className,\n sx,\n format,\n formatDensity,\n label\n }),\n ownerState: props\n });\n\n // TODO: Move to `useSlotProps` when https://github.com/mui/material-ui/pull/35088 will be merged\n fieldProps.inputProps = _extends({}, fieldProps.inputProps, {\n 'aria-label': getOpenDialogAriaText(pickerFieldProps.value, utils)\n });\n const slotsForField = _extends({\n textField: slots.textField\n }, fieldProps.slots);\n const Layout = (_slots$layout = slots.layout) != null ? _slots$layout : PickersLayout;\n const handleInputRef = useForkRef(internalInputRef, fieldProps.inputRef, inputRef);\n let labelledById = labelId;\n if (isToolbarHidden) {\n if (label) {\n labelledById = `${labelId}-label`;\n } else {\n labelledById = undefined;\n }\n }\n const slotProps = _extends({}, innerSlotProps, {\n toolbar: _extends({}, innerSlotProps == null ? void 0 : innerSlotProps.toolbar, {\n titleId: labelId\n }),\n mobilePaper: _extends({\n 'aria-labelledby': labelledById\n }, innerSlotProps == null ? void 0 : innerSlotProps.mobilePaper)\n });\n const renderPicker = () => /*#__PURE__*/_jsxs(LocalizationProvider, {\n localeText: localeText,\n children: [/*#__PURE__*/_jsx(Field, _extends({}, fieldProps, {\n slots: slotsForField,\n slotProps: slotProps,\n inputRef: handleInputRef\n })), /*#__PURE__*/_jsx(PickersModalDialog, _extends({}, actions, {\n open: open,\n slots: slots,\n slotProps: slotProps,\n children: /*#__PURE__*/_jsx(Layout, _extends({}, layoutProps, slotProps == null ? void 0 : slotProps.layout, {\n slots: slots,\n slotProps: slotProps,\n children: renderCurrentView()\n }))\n }))]\n });\n return {\n renderPicker\n };\n};","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { resolveComponentProps } from '@mui/base/utils';\nimport { useMobilePicker } from '../internals/hooks/useMobilePicker';\nimport { useDatePickerDefaultizedProps } from '../DatePicker/shared';\nimport { useLocaleText, useUtils, validateDate } from '../internals';\nimport { DateField } from '../DateField';\nimport { extractValidationProps } from '../internals/utils/validation/extractValidationProps';\nimport { singleItemValueManager } from '../internals/utils/valueManagers';\nimport { renderDateViewCalendar } from '../dateViewRenderers';\nimport { resolveDateFormat } from '../internals/utils/date-utils';\nconst MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker(inProps, ref) {\n var _defaultizedProps$slo2;\n const localeText = useLocaleText();\n const utils = useUtils();\n\n // Props with the default values common to all date pickers\n const defaultizedProps = useDatePickerDefaultizedProps(inProps, 'MuiMobileDatePicker');\n const viewRenderers = _extends({\n day: renderDateViewCalendar,\n month: renderDateViewCalendar,\n year: renderDateViewCalendar\n }, defaultizedProps.viewRenderers);\n\n // Props with the default values specific to the mobile variant\n const props = _extends({}, defaultizedProps, {\n viewRenderers,\n format: resolveDateFormat(utils, defaultizedProps, false),\n slots: _extends({\n field: DateField\n }, defaultizedProps.slots),\n slotProps: _extends({}, defaultizedProps.slotProps, {\n field: ownerState => {\n var _defaultizedProps$slo;\n return _extends({}, resolveComponentProps((_defaultizedProps$slo = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo.field, ownerState), extractValidationProps(defaultizedProps), {\n ref\n });\n },\n toolbar: _extends({\n hidden: false\n }, (_defaultizedProps$slo2 = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo2.toolbar)\n })\n });\n const {\n renderPicker\n } = useMobilePicker({\n props,\n valueManager: singleItemValueManager,\n valueType: 'date',\n getOpenDialogAriaText: localeText.openDatePickerDialogue,\n validator: validateDate\n });\n return renderPicker();\n});\nMobileDatePicker.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n /**\n * Class name applied to the root element.\n */\n className: PropTypes.string,\n /**\n * If `true`, the popover or modal will close after submitting the full date.\n * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).\n */\n closeOnSelect: PropTypes.bool,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, the open picker button will not be rendered (renders only the field).\n * @default false\n */\n disableOpenPicker: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Format of the date when rendered in the input(s).\n * Defaults to localized format based on the used `views`.\n */\n format: PropTypes.string,\n /**\n * Density of the format when rendered in the input.\n * Setting `formatDensity` to `\"spacious\"` will add a space before and after each `/`, `-` and `.` character.\n * @default \"dense\"\n */\n formatDensity: PropTypes.oneOf(['dense', 'spacious']),\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n current: PropTypes.object\n })]),\n /**\n * The label content.\n */\n label: PropTypes.node,\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Locale for components texts.\n * Allows overriding texts coming from `LocalizationProvider` and `theme`.\n */\n localeText: PropTypes.object,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value is accepted.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The value that was just accepted.\n */\n onAccept: PropTypes.func,\n /**\n * Callback fired when the value changes.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The new value.\n * @param {FieldChangeHandlerContext} context The context containing the validation result of the current value.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see `open`).\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the error associated to the current value changes.\n * If the error has a non-null value, then the `TextField` will be rendered in `error` state.\n *\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TError} error The new error describing why the current value is not valid.\n * @param {TValue} value The value associated to the error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see `open`).\n */\n onOpen: PropTypes.func,\n /**\n * Callback fired when the selected sections change.\n * @param {FieldSelectedSections} newValue The new selected sections.\n */\n onSelectedSectionsChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * Control the popup or dialog open state.\n * @default false\n */\n open: PropTypes.bool,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Force rendering in particular orientation.\n */\n orientation: PropTypes.oneOf(['landscape', 'portrait']),\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * The currently selected sections.\n * This prop accept four formats:\n * 1. If a number is provided, the section at this index will be selected.\n * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.\n * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.\n * 4. If `null` is provided, no section will be selected\n * If not provided, the selected sections will be handled internally.\n */\n selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({\n endIndex: PropTypes.number.isRequired,\n startIndex: PropTypes.number.isRequired\n })]),\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Define custom view renderers for each section.\n * If `null`, the section will only have field editing.\n * If `undefined`, internally defined view will be the used.\n */\n viewRenderers: PropTypes.shape({\n day: PropTypes.func,\n month: PropTypes.func,\n year: PropTypes.func\n }),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 3\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n};\nexport { MobileDatePicker };","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"desktopModeMediaQuery\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport useMediaQuery from '@mui/material/useMediaQuery';\nimport { useThemeProps } from '@mui/material/styles';\nimport { DesktopDatePicker } from '../DesktopDatePicker';\nimport { MobileDatePicker } from '../MobileDatePicker';\nimport { DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from '../internals/utils/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DatePicker = /*#__PURE__*/React.forwardRef(function DatePicker(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDatePicker'\n });\n const {\n desktopModeMediaQuery = DEFAULT_DESKTOP_MODE_MEDIA_QUERY\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n\n // defaults to `true` in environments where `window.matchMedia` would not be available (i.e. test/jsdom)\n const isDesktop = useMediaQuery(desktopModeMediaQuery, {\n defaultMatches: true\n });\n if (isDesktop) {\n return /*#__PURE__*/_jsx(DesktopDatePicker, _extends({\n ref: ref\n }, other));\n }\n return /*#__PURE__*/_jsx(MobileDatePicker, _extends({\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? DatePicker.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n /**\n * Class name applied to the root element.\n */\n className: PropTypes.string,\n /**\n * If `true`, the popover or modal will close after submitting the full date.\n * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).\n */\n closeOnSelect: PropTypes.bool,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * CSS media query when `Mobile` mode will be changed to `Desktop`.\n * @default '@media (pointer: fine)'\n * @example '@media (min-width: 720px)' or theme.breakpoints.up(\"sm\")\n */\n desktopModeMediaQuery: PropTypes.string,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, the open picker button will not be rendered (renders only the field).\n * @default false\n */\n disableOpenPicker: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Format of the date when rendered in the input(s).\n * Defaults to localized format based on the used `views`.\n */\n format: PropTypes.string,\n /**\n * Density of the format when rendered in the input.\n * Setting `formatDensity` to `\"spacious\"` will add a space before and after each `/`, `-` and `.` character.\n * @default \"dense\"\n */\n formatDensity: PropTypes.oneOf(['dense', 'spacious']),\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n current: PropTypes.object\n })]),\n /**\n * The label content.\n */\n label: PropTypes.node,\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Locale for components texts.\n * Allows overriding texts coming from `LocalizationProvider` and `theme`.\n */\n localeText: PropTypes.object,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value is accepted.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The value that was just accepted.\n */\n onAccept: PropTypes.func,\n /**\n * Callback fired when the value changes.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The new value.\n * @param {FieldChangeHandlerContext} context The context containing the validation result of the current value.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see `open`).\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the error associated to the current value changes.\n * If the error has a non-null value, then the `TextField` will be rendered in `error` state.\n *\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TError} error The new error describing why the current value is not valid.\n * @param {TValue} value The value associated to the error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see `open`).\n */\n onOpen: PropTypes.func,\n /**\n * Callback fired when the selected sections change.\n * @param {FieldSelectedSections} newValue The new selected sections.\n */\n onSelectedSectionsChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * Control the popup or dialog open state.\n * @default false\n */\n open: PropTypes.bool,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Force rendering in particular orientation.\n */\n orientation: PropTypes.oneOf(['landscape', 'portrait']),\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * The currently selected sections.\n * This prop accept four formats:\n * 1. If a number is provided, the section at this index will be selected.\n * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.\n * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.\n * 4. If `null` is provided, no section will be selected\n * If not provided, the selected sections will be handled internally.\n */\n selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({\n endIndex: PropTypes.number.isRequired,\n startIndex: PropTypes.number.isRequired\n })]),\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Define custom view renderers for each section.\n * If `null`, the section will only have field editing.\n * If `undefined`, internally defined view will be the used.\n */\n viewRenderers: PropTypes.shape({\n day: PropTypes.func,\n month: PropTypes.func,\n year: PropTypes.func\n }),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 4 on desktop, 3 on mobile\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n} : void 0;\nexport { DatePicker };","import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable class-methods-use-this */\nimport defaultDayjs from 'dayjs';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport customParseFormatPlugin from 'dayjs/plugin/customParseFormat';\nimport localizedFormatPlugin from 'dayjs/plugin/localizedFormat';\nimport isBetweenPlugin from 'dayjs/plugin/isBetween';\nimport { buildWarning } from '../internals/utils/warning';\ndefaultDayjs.extend(customParseFormatPlugin);\ndefaultDayjs.extend(localizedFormatPlugin);\ndefaultDayjs.extend(isBetweenPlugin);\nconst localeNotFoundWarning = buildWarning(['Your locale has not been found.', 'Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale', \"Or you forget to import the locale with `require('dayjs/locale/{localeUsed}')`\", 'fallback on English locale']);\nconst formatTokenMap = {\n // Year\n YY: 'year',\n YYYY: {\n sectionType: 'year',\n contentType: 'digit',\n maxLength: 4\n },\n // Month\n M: {\n sectionType: 'month',\n contentType: 'digit',\n maxLength: 2\n },\n MM: 'month',\n MMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n MMMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n // Day of the month\n D: {\n sectionType: 'day',\n contentType: 'digit',\n maxLength: 2\n },\n DD: 'day',\n Do: {\n sectionType: 'day',\n contentType: 'digit-with-letter'\n },\n // Day of the week\n d: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 2\n },\n dd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n ddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n dddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n // Meridiem\n A: 'meridiem',\n a: 'meridiem',\n // Hours\n H: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n HH: 'hours',\n h: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n hh: 'hours',\n // Minutes\n m: {\n sectionType: 'minutes',\n contentType: 'digit',\n maxLength: 2\n },\n mm: 'minutes',\n // Seconds\n s: {\n sectionType: 'seconds',\n contentType: 'digit',\n maxLength: 2\n },\n ss: 'seconds'\n};\nconst defaultFormats = {\n year: 'YYYY',\n month: 'MMMM',\n monthShort: 'MMM',\n dayOfMonth: 'D',\n weekday: 'dddd',\n weekdayShort: 'ddd',\n hours24h: 'HH',\n hours12h: 'hh',\n meridiem: 'A',\n minutes: 'mm',\n seconds: 'ss',\n fullDate: 'll',\n fullDateWithWeekday: 'dddd, LL',\n keyboardDate: 'L',\n shortDate: 'MMM D',\n normalDate: 'D MMMM',\n normalDateWithWeekday: 'ddd, MMM D',\n monthAndYear: 'MMMM YYYY',\n monthAndDate: 'MMMM D',\n fullTime: 'LT',\n fullTime12h: 'hh:mm A',\n fullTime24h: 'HH:mm',\n fullDateTime: 'lll',\n fullDateTime12h: 'll hh:mm A',\n fullDateTime24h: 'll HH:mm',\n keyboardDateTime: 'L LT',\n keyboardDateTime12h: 'L hh:mm A',\n keyboardDateTime24h: 'L HH:mm'\n};\nconst MISSING_UTC_PLUGIN = ['Missing UTC plugin', 'To be able to use UTC or timezones, you have to enable the `utc` plugin', 'Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-utc'].join('\\n');\nconst MISSING_TIMEZONE_PLUGIN = ['Missing timezone plugin', 'To be able to use timezones, you have to enable both the `utc` and the `timezone` plugin', 'Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-timezone'].join('\\n');\nconst withLocale = (dayjs, locale) => !locale ? dayjs : (...args) => dayjs(...args).locale(locale);\n\n/**\n * Based on `@date-io/dayjs`\n *\n * MIT License\n *\n * Copyright (c) 2017 Dmitriy Kovalenko\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in 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 */\nexport class AdapterDayjs {\n constructor({\n locale: _locale,\n formats,\n instance\n } = {}) {\n this.isMUIAdapter = true;\n this.isTimezoneCompatible = true;\n this.lib = 'dayjs';\n this.rawDayJsInstance = void 0;\n this.dayjs = void 0;\n this.locale = void 0;\n this.formats = void 0;\n this.escapedCharacters = {\n start: '[',\n end: ']'\n };\n this.formatTokenMap = formatTokenMap;\n this.setLocaleToValue = value => {\n const expectedLocale = this.getCurrentLocaleCode();\n if (expectedLocale === value.locale()) {\n return value;\n }\n return value.locale(expectedLocale);\n };\n this.hasUTCPlugin = () => typeof defaultDayjs.utc !== 'undefined';\n this.hasTimezonePlugin = () => typeof defaultDayjs.tz !== 'undefined';\n this.isSame = (value, comparing, comparisonTemplate) => {\n const comparingInValueTimezone = this.setTimezone(comparing, this.getTimezone(value));\n return value.format(comparisonTemplate) === comparingInValueTimezone.format(comparisonTemplate);\n };\n this.createSystemDate = value => {\n // TODO v7: Stop using `this.rawDayJsInstance` (drop the `instance` param on the adapters)\n return this.rawDayJsInstance(value);\n };\n this.createUTCDate = value => {\n /* istanbul ignore next */\n if (!this.hasUTCPlugin()) {\n throw new Error(MISSING_UTC_PLUGIN);\n }\n return defaultDayjs.utc(value);\n };\n this.createTZDate = (value, timezone) => {\n /* istanbul ignore next */\n if (!this.hasUTCPlugin()) {\n throw new Error(MISSING_UTC_PLUGIN);\n }\n\n /* istanbul ignore next */\n if (!this.hasTimezonePlugin()) {\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const cleanTimezone = timezone === 'default' ? undefined : timezone;\n const keepLocalTime = value !== undefined && !value.endsWith('Z');\n return defaultDayjs(value).tz(cleanTimezone, keepLocalTime);\n };\n this.getLocaleFormats = () => {\n const locales = defaultDayjs.Ls;\n const locale = this.locale || 'en';\n let localeObject = locales[locale];\n if (localeObject === undefined) {\n localeNotFoundWarning();\n localeObject = locales.en;\n }\n return localeObject.formats;\n };\n this.date = value => {\n if (value === null) {\n return null;\n }\n return this.dayjs(value);\n };\n this.dateWithTimezone = (value, timezone) => {\n if (value === null) {\n return null;\n }\n let parsedValue;\n if (timezone === 'UTC') {\n parsedValue = this.createUTCDate(value);\n } else if (timezone === 'system' || timezone === 'default' && !this.hasTimezonePlugin()) {\n parsedValue = this.createSystemDate(value);\n } else {\n parsedValue = this.createTZDate(value, timezone);\n }\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.getTimezone = value => {\n if (this.hasUTCPlugin() && value.isUTC()) {\n return 'UTC';\n }\n if (this.hasTimezonePlugin()) {\n var _value$$x;\n // @ts-ignore\n const zone = (_value$$x = value.$x) == null ? void 0 : _value$$x.$timezone;\n return zone != null ? zone : 'system';\n }\n return 'system';\n };\n this.setTimezone = (value, timezone) => {\n if (this.getTimezone(value) === timezone) {\n return value;\n }\n if (timezone === 'UTC') {\n /* istanbul ignore next */\n if (!this.hasUTCPlugin()) {\n throw new Error(MISSING_UTC_PLUGIN);\n }\n return value.utc();\n }\n if (timezone === 'system') {\n if (this.hasUTCPlugin()) {\n return value.local();\n }\n return value;\n }\n if (!this.hasTimezonePlugin()) {\n if (timezone === 'default') {\n return value;\n }\n\n /* istanbul ignore next */\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const cleanZone = timezone === 'default' ? undefined : timezone;\n return defaultDayjs.tz(value, cleanZone);\n };\n this.toJsDate = value => {\n return value.toDate();\n };\n this.parseISO = isoString => {\n return this.dayjs(isoString);\n };\n this.toISO = value => {\n return value.toISOString();\n };\n this.parse = (value, format) => {\n if (value === '') {\n return null;\n }\n return this.dayjs(value, format, this.locale, true);\n };\n this.getCurrentLocaleCode = () => {\n return this.locale || 'en';\n };\n this.is12HourCycleInCurrentLocale = () => {\n /* istanbul ignore next */\n return /A|a/.test(this.getLocaleFormats().LT || '');\n };\n this.expandFormat = format => {\n const localeFormats = this.getLocaleFormats();\n\n // @see https://github.com/iamkun/dayjs/blob/dev/src/plugin/localizedFormat/index.js\n const t = formatBis => formatBis.replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g, (_, a, b) => a || b.slice(1));\n return format.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g, (_, a, b) => {\n const B = b && b.toUpperCase();\n return a || localeFormats[b] || t(localeFormats[B]);\n });\n };\n this.getFormatHelperText = format => {\n return this.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();\n };\n this.isNull = value => {\n return value === null;\n };\n this.isValid = value => {\n return this.dayjs(value).isValid();\n };\n this.format = (value, formatKey) => {\n return this.formatByString(value, this.formats[formatKey]);\n };\n this.formatByString = (value, formatString) => {\n return this.dayjs(value).format(formatString);\n };\n this.formatNumber = numberToFormat => {\n return numberToFormat;\n };\n this.getDiff = (value, comparing, unit) => {\n return value.diff(comparing, unit);\n };\n this.isEqual = (value, comparing) => {\n if (value === null && comparing === null) {\n return true;\n }\n return this.dayjs(value).isSame(comparing);\n };\n this.isSameYear = (value, comparing) => {\n return this.isSame(value, comparing, 'YYYY');\n };\n this.isSameMonth = (value, comparing) => {\n return this.isSame(value, comparing, 'YYYY-MM');\n };\n this.isSameDay = (value, comparing) => {\n return this.isSame(value, comparing, 'YYYY-MM-DD');\n };\n this.isSameHour = (value, comparing) => {\n return value.isSame(comparing, 'hour');\n };\n this.isAfter = (value, comparing) => {\n return value > comparing;\n };\n this.isAfterYear = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isAfter(comparing, 'year');\n }\n return !this.isSameYear(value, comparing) && value.utc() > comparing.utc();\n };\n this.isAfterDay = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isAfter(comparing, 'day');\n }\n return !this.isSameDay(value, comparing) && value.utc() > comparing.utc();\n };\n this.isBefore = (value, comparing) => {\n return value < comparing;\n };\n this.isBeforeYear = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isBefore(comparing, 'year');\n }\n return !this.isSameYear(value, comparing) && value.utc() < comparing.utc();\n };\n this.isBeforeDay = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isBefore(comparing, 'day');\n }\n return !this.isSameDay(value, comparing) && value.utc() < comparing.utc();\n };\n this.isWithinRange = (value, [start, end]) => {\n return value >= start && value <= end;\n };\n this.startOfYear = value => {\n return value.startOf('year');\n };\n this.startOfMonth = value => {\n return value.startOf('month');\n };\n this.startOfWeek = value => {\n return value.startOf('week');\n };\n this.startOfDay = value => {\n return value.startOf('day');\n };\n this.endOfYear = value => {\n return value.endOf('year');\n };\n this.endOfMonth = value => {\n return value.endOf('month');\n };\n this.endOfWeek = value => {\n return value.endOf('week');\n };\n this.endOfDay = value => {\n return value.endOf('day');\n };\n this.addYears = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'year') : value.add(amount, 'year');\n };\n this.addMonths = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'month') : value.add(amount, 'month');\n };\n this.addWeeks = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'week') : value.add(amount, 'week');\n };\n this.addDays = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'day') : value.add(amount, 'day');\n };\n this.addHours = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'hour') : value.add(amount, 'hour');\n };\n this.addMinutes = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'minute') : value.add(amount, 'minute');\n };\n this.addSeconds = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'second') : value.add(amount, 'second');\n };\n this.getYear = value => {\n return value.year();\n };\n this.getMonth = value => {\n return value.month();\n };\n this.getDate = value => {\n return value.date();\n };\n this.getHours = value => {\n return value.hour();\n };\n this.getMinutes = value => {\n return value.minute();\n };\n this.getSeconds = value => {\n return value.second();\n };\n this.getMilliseconds = value => {\n return value.millisecond();\n };\n this.setYear = (value, year) => {\n return value.set('year', year);\n };\n this.setMonth = (value, month) => {\n return value.set('month', month);\n };\n this.setDate = (value, date) => {\n return value.set('date', date);\n };\n this.setHours = (value, hours) => {\n return value.set('hour', hours);\n };\n this.setMinutes = (value, minutes) => {\n return value.set('minute', minutes);\n };\n this.setSeconds = (value, seconds) => {\n return value.set('second', seconds);\n };\n this.setMilliseconds = (value, milliseconds) => {\n return value.set('millisecond', milliseconds);\n };\n this.getDaysInMonth = value => {\n return value.daysInMonth();\n };\n this.getNextMonth = value => {\n return value.add(1, 'month');\n };\n this.getPreviousMonth = value => {\n return value.subtract(1, 'month');\n };\n this.getMonthArray = value => {\n const firstMonth = value.startOf('year');\n const monthArray = [firstMonth];\n while (monthArray.length < 12) {\n const prevMonth = monthArray[monthArray.length - 1];\n monthArray.push(this.addMonths(prevMonth, 1));\n }\n return monthArray;\n };\n this.mergeDateAndTime = (dateParam, timeParam) => {\n return dateParam.hour(timeParam.hour()).minute(timeParam.minute()).second(timeParam.second());\n };\n this.getWeekdays = () => {\n const start = this.dayjs().startOf('week');\n return [0, 1, 2, 3, 4, 5, 6].map(diff => this.formatByString(start.add(diff, 'day'), 'dd'));\n };\n this.getWeekArray = value => {\n const cleanLocale = this.setLocaleToValue(value);\n const start = cleanLocale.startOf('month').startOf('week');\n const end = cleanLocale.endOf('month').endOf('week');\n let count = 0;\n let current = start;\n const nestedWeeks = [];\n while (current < end) {\n const weekNumber = Math.floor(count / 7);\n nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];\n nestedWeeks[weekNumber].push(current);\n current = current.add(1, 'day');\n count += 1;\n }\n return nestedWeeks;\n };\n this.getWeekNumber = value => {\n return value.week();\n };\n this.getYearRange = (start, end) => {\n const startDate = start.startOf('year');\n const endDate = end.endOf('year');\n const years = [];\n let current = startDate;\n while (current < endDate) {\n years.push(current);\n current = current.add(1, 'year');\n }\n return years;\n };\n this.getMeridiemText = ampm => {\n return ampm === 'am' ? 'AM' : 'PM';\n };\n this.rawDayJsInstance = instance || defaultDayjs;\n this.dayjs = withLocale(this.rawDayJsInstance, _locale);\n this.locale = _locale;\n this.formats = _extends({}, defaultFormats, formats);\n defaultDayjs.extend(weekOfYear);\n }\n}","import './App.css';\nimport { useState, useEffect, Fragment } from 'react';\nimport Plotly from 'plotly.js-dist';\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport Radio from '@mui/material/Radio';\nimport RadioGroup from '@mui/material/RadioGroup';\nimport FormControl from '@mui/material/FormControl';\nimport FormLabel from '@mui/material/FormLabel';\nimport Checkbox from '@mui/material/Checkbox';\nimport Grid from '@mui/material/Grid';\nimport { DatePicker } from '@mui/x-date-pickers/DatePicker';\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { makePlotsEIDA } from './plotsEIDA.js';\nimport { makePlotsNode } from './plotsNode.js';\nimport { makePlotsNetwork } from './plotsNetwork.js';\nimport { makePlotsStation } from './plotsStation.js';\n\nfunction App() {\n const [isAuthenticated, setIsAuthenticated] = useState(false);\n const [authTokenFile, setAuthTokenFile] = useState(undefined);\n const [startTime, setStartTime] = useState(new Date().getFullYear()+'-01');\n const [endTime, setEndTime] = useState(undefined);\n const [level, setLevel] = useState(\"eida\");\n const [showError, setShowError] = useState(\"\");\n const [node, setNode] = useState([]);\n const [inputNode, setInputNode] = useState(\"\");\n const [network, setNetwork] = useState([]);\n const [inputNetwork, setInputNetwork] = useState(\"\");\n const [station, setStation] = useState(\"\");\n const [topN, setTopN] = useState(10);\n\n function handleClick() {\n if (!showError) {\n // clear potential previous error messages\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"\";\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"\";\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"\";\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"\";\n // clear plots\n Plotly.purge('total-clients');\n Plotly.purge('total-bytes');\n Plotly.purge('total-requests');\n Plotly.purge('month-plots');\n Plotly.purge('year-plots');\n Plotly.purge('country-plots');\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = '#f5f5f5';\n }\n // clear checkboxes for map plot\n const nodeCheckboxesContainer = document.getElementById('nns-checkboxes');\n if (nodeCheckboxesContainer) {\n nodeCheckboxesContainer.innerHTML = '';\n }\n // show error and stop execution if start time not specified by user\n if (!startTime) {\n setShowError(\"Specify at least 'Start Time' parameter!\");\n return;\n }\n // otherwise clear error message\n setShowError(\"\");\n // helper function for parameter passing\n function paramToPass(lst, str) {\n if (lst.length !== 0 && str) {\n return `${lst.join(',')},${str}`;\n } else if (lst.length !== 0) {\n return lst.join(',');\n } else {\n return str;\n }\n }\n // delay execution to allow React to update the page and create the loading-msg element, otherwise error pops up\n setTimeout(() => {\n switch(level) {\n case \"eida\":\n makePlotsEIDA(startTime, endTime);\n break;\n case \"node\":\n makePlotsNode(startTime, endTime, paramToPass(node, inputNode));\n break;\n case \"network\":\n let file = new FormData();\n file.append('file', authTokenFile);\n // the below is true if multiple networks asked\n const strNets = isAuthenticated ? paramToPass(network, inputNetwork) : (network && network.length !== 0 ? network : inputNetwork);\n makePlotsNetwork(isAuthenticated, file, startTime, endTime, paramToPass(node, inputNode),\n isAuthenticated ? paramToPass(network, inputNetwork) : (!inputNetwork && network && network.length !== 0 ? network : inputNetwork),\n (!strNets || strNets.includes(',') || strNets === \"\") ? undefined : true, (!isNaN(topN) && topN >= 0) ? topN : undefined);\n break;\n case \"station\":\n let fileSta = new FormData();\n fileSta.append('file', authTokenFile);\n makePlotsStation(fileSta, startTime, endTime, paramToPass(node, inputNode), paramToPass(network, inputNetwork), station,\n (!isNaN(topN) && topN >= 0) ? topN : undefined);\n break;\n default:\n setShowError(\"Choose level to plot statistics!\")\n return;\n }\n }, 200);\n }\n\n // make a call to retrieve list of nodes\n async function get_nodes() {\n try {\n const response = await fetch('https://ws.resif.fr/eidaws/statistics/1/nodes');\n if (!response.ok) {\n throw new Error('Failed to fetch nodes');\n }\n const data = await response.json();\n return data.nodes.map(node => node.name).sort();\n }\n catch (error) {\n console.error(error);\n return [];\n }\n }\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState([]);\n const loading = open && options.length === 0;\n useEffect(() => {\n let active = true;\n if (!loading) {\n return undefined;\n }\n (async () => {\n let nodes = await get_nodes();\n if (active) {\n setOptions(nodes);\n }\n })();\n return () => {\n active = false;\n };\n }, [loading]);\n useEffect(() => {\n if (!open) {\n setOptions([]);\n }\n }, [open]);\n\n // make a call to retrieve list of networks\n async function get_networks() {\n try {\n const response = await fetch('https://ws.resif.fr/eidaws/statistics/1/networks');\n if (!response.ok) {\n throw new Error('Failed to fetch networks');\n }\n const data = await response.json();\n // filter networks according to the node field\n let networkNodes = new Set();\n if (Array.isArray(node)) {\n node.forEach(n => networkNodes.add(n));\n }\n if (typeof inputNode === 'string' && inputNode !== \"\") {\n inputNode.split(',').forEach(n => networkNodes.add(n));\n }\n if (networkNodes.size === 0) {\n setBroughtNets(true);\n return Array.from(new Set(data.networks.map(net => net.name))).sort();\n } else {\n let filteredNetworks = data.networks.filter(network => {\n return Array.from(networkNodes).includes(network.node);\n });\n setBroughtNets(true);\n return Array.from(new Set(filteredNetworks.map(net => net.name))).sort();\n }\n }\n catch (error) {\n console.error(error);\n return [];\n }\n }\n const [openNet, setOpenNet] = useState(false);\n const [optionsNet, setOptionsNet] = useState([]);\n const [broughtNets, setBroughtNets] = useState(false);\n const loadingNet = openNet && !broughtNets;\n useEffect(() => {\n let activeNet = true;\n if (!loadingNet) {\n return undefined;\n }\n (async () => {\n let networks = await get_networks();\n if (activeNet) {\n setOptionsNet(networks);\n }\n })();\n return () => {\n activeNet = false;\n };\n }, [loadingNet]);\n useEffect(() => {\n if (!openNet) {\n setOptionsNet([]);\n }\n }, [openNet]);\n\n // default plots when page loads: eida level current year\n useEffect(() => {\n handleClick();\n }, []);\n\n return (\n
\n \n \n

EIDA Statistics Dashboard

\n
\n Dashboard UI to explore usage statistics in the form of plots for services distributed in the EIDA federation.

\n For more details, visit the statistics webservice.

\n The code of the current dashboard is hosted at github.

\n The starting date of collecting statistics data is 2020-11.

\n For members of EIDA federation, choose the authentication below for full access to data.\n
\n
\n {setIsAuthenticated(!isAuthenticated); setAuthTokenFile(undefined);\n setLevel(\"eida\"); setNode([]); setInputNode(\"\"); setNetwork([]); setInputNetwork(\"\"); setStation(\"\");}}/>} label=\"Authentication\" />\n {isAuthenticated && (\n
\n \n setAuthTokenFile(event.target.files[0])} />\n
\n To redeem an EIDA authentication token file visit https://geofon.gfz-potsdam.de/eas.\n
\n
\n )}\n
\n {(level === \"network\" || level === \"station\") && (\n
\n \n setTopN(parseInt(event.target.value, 10))}/>\n
\n )}\n \n \n
\n \n (newValue ? setStartTime(newValue.$y+'-'+(newValue.$M+1)) : setStartTime(undefined))} />\n \n
\n
\n \n (newValue ? setEndTime(newValue.$y+'-'+(newValue.$M+1)) : setEndTime(undefined))} />\n \n
\n
\n \n Level\n \n {setLevel(e.target.value); setNode([]);\n setInputNode(\"\"); setNetwork([]); setInputNetwork(\"\"); setStation(\"\");}}/>} label=\"EIDA\" />\n {setLevel(e.target.value); setNetwork([]);\n setInputNetwork(\"\"); setStation(\"\");}}/>} label=\"Node\" />\n {setLevel(e.target.value);\n setStation(\"\")}}/>} label=\"Network\" />\n {isAuthenticated && (\n setLevel(e.target.value)}/>} label=\"Station\" />)}\n \n \n
\n {level !== \"eida\" && (\n
\n setInputNode(e.target.value)}\n onChange={(e, nv) => {setNode(nv); setInputNode(\"\");}}\n options={options}\n open={open}\n onOpen={() => setOpen(true)}\n onClose={() => setOpen(false)}\n isOptionEqualToValue={(option, value) => option === value}\n loading={loading}\n renderInput={(params) => (\n \n {loading ? : null}\n {params.InputProps.endAdornment}\n \n ),\n }}\n />\n )}\n />\n
\n )}\n {(level === \"network\" || level === \"station\") && (\n
\n setInputNetwork(e.target.value)}\n onChange={(e, nv) => {setNetwork(nv); setInputNetwork(\"\");}}\n options={optionsNet}\n open={openNet}\n onOpen={() => setOpenNet(true)}\n onClose={() => {setOpenNet(false); setBroughtNets(false);}}\n isOptionEqualToValue={(option, value) => option === value}\n loading={loadingNet}\n renderInput={(params) => (\n \n {loadingNet ? : null}\n {params.InputProps.endAdornment}\n \n ),\n }}\n />\n )}\n />\n
\n )}\n {level === \"station\" && (\n
\n setStation(e.target.value)} />\n
\n Comma-separated list, e.g. STA1,STA2\n
\n
\n )}\n
\n \n \n {showError && (\n
\n {showError}\n
\n )}\n {!showError && (\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\nexport default App;\n","import Plotly from 'plotly.js-dist';\n\nexport function makePlotsEIDA(startTime, endTime) {\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // clients plot\n const indicatorDataClients = [\n {\n type: \"indicator\",\n value: data.results[0].clients,\n mode: \"number\",\n number: { font: { size: 50 } }\n }\n ];\n const indicatorLayoutClients = {\n title: \"Total number of unique users\"\n };\n Plotly.newPlot(\"total-clients\", indicatorDataClients, indicatorLayoutClients, {displaylogo: false});\n\n // bytes plot\n const indicatorDataBytes = [\n {\n type: \"indicator\",\n value: data.results[0].bytes,\n mode: \"number\",\n number: { font: { size: 50 }, valueformat: '.3s' }\n }\n ];\n const indicatorLayoutBytes = {\n title: \"Total number of bytes\"\n };\n Plotly.newPlot(\"total-bytes\", indicatorDataBytes, indicatorLayoutBytes, {displaylogo: false});\n\n // requests plot\n const pieDataRequests = [\n {\n values: [data.results[0].nb_successful_reqs, data.results[0].nb_reqs - data.results[0].nb_successful_reqs],\n labels: [\"Successful Requests\", \"Unsuccessful Requests\"],\n type: \"pie\",\n hovertemplate: '%{label}
%{value:.3s}
%{percent}'\n },\n ];\n const pieLayoutRequests = {\n title: \"Total number of requests\"\n };\n Plotly.newPlot(\"total-requests\", pieDataRequests, pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n let url = null;\n if (details === \"year\") {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&details=year&format=json`;\n }\n else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&details=month&format=json`;\n }\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // show clients at first\n const barData = [\n {\n x: data.results.map(result => result.date),\n y: data.results.map(result => result.clients),\n name: \"\",\n type: 'bar'\n },\n {}\n ];\n let barLayout = {\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n x: [data.results.map(result => result.date)],\n y: [data.results.map(result => result.clients), []],\n name: [\"\", \"\"],\n type: 'bar'\n },\n {\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: false\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: [data.results.map(result => result.date)],\n y: [data.results.map(result => result.bytes), []],\n name: [\"\", \"\"],\n type: 'bar'\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: false\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n x: [data.results.map(result => result.date)],\n y: [data.results.map(result => result.nb_successful_reqs), data.results.map(result => result.nb_reqs - result.nb_successful_reqs)],\n name: [\"Successful Requests\", \"Unsuccessful Requests\"],\n type: 'bar'\n },\n {\n barmode: 'stack',\n title: 'Number of requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Requests'\n },\n showlegend: true\n }\n ],\n label: 'Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barData, barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&details=country&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = data.results.map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: data.results.map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n }];\n const mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [data.results.map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [data.results.map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // total requests button\n {\n args: [\n {\n z: [data.results.map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of total requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n z: [data.results.map(result => result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of successful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of successful requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n z: [data.results.map(result => result.nb_reqs - result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unsuccessful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unsuccesssful requests (i.e. requests that did not return any data) made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n}\n","import Plotly from 'plotly.js-dist';\nimport ReactDOM from 'react-dom/client';\nimport {HLL, fromHexString} from './js_hll'\n\nexport function makePlotsNode(startTime, endTime, node) {\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n // make a call to retrieve list of nodes\n fetch('https://ws.resif.fr/eidaws/statistics/1/nodes')\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n const nodes = data.nodes.map(node => node.name).sort();\n const colors = [\"#7eed89\", \"#1f77b4\", \"#ff7f0e\", \"#2ca02c\", \"#d62728\", \"#9467bd\", \"#8c564b\", \"#e377c2\", \"#7f7f7f\", \"#bcbd22\", \"#17becf\", \"#3294b8\", \"#eb9a49\", \"#f5ed53\", \"#291200\"];\n let nodesColors = {};\n for (let i = 0; i < nodes.length && i < colors.length; i++) {\n nodesColors[nodes[i]] = colors[i];\n }\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&hllvalues=true&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // rearrange results and colors\n for (const node in nodesColors) {\n if (!data.results.map(result => result.node).includes(node)) {\n delete nodesColors[node];\n }\n }\n const rearrangedResults = data.results.sort((a, b) => {\n return Object.keys(nodesColors).indexOf(a.node) - Object.keys(nodesColors).indexOf(b.node);\n });\n // calculate hll values for total clients all nodes indicator plot\n let hll = new HLL(11, 5);\n data.results.forEach((result) => {\n hll.union(fromHexString(result.hll_clients).hllSet);\n });\n // clients plot, per node pie at first\n const pieDataClients = {\n values: rearrangedResults.map(result => result.clients),\n labels: Object.keys(nodesColors),\n type: 'pie',\n marker: {\n colors: Object.values(nodesColors)\n },\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}',\n sort: false\n };\n const pieLayoutClients = {\n title: 'Total number of users* per node',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct
for each node. However, the whole pie does not represent
the real value of the total users for all selected nodes, as
many clients may have asked data from multiple nodes.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total clients per node pie button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.clients)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of users* per node',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct
for each node. However, the whole pie does not represent
the real value of the total users for all selected nodes, as
many clients may have asked data from multiple nodes.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n }\n ],\n label: 'Users Per Node',\n method: 'update'\n },\n // total clients for all specified nodes indicator button\n {\n args: [\n {\n type: \"indicator\",\n value: hll.cardinality(),\n mode: \"number\",\n number: { font: { size: 50 } }\n },\n {\n title: 'Total number of unique users of all nodes',\n annotations: []\n }\n ],\n label: 'Users All Nodes',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-clients', [pieDataClients], pieLayoutClients, {displaylogo: false});\n\n // bytes plot\n const pieDataBytes = {\n values: rearrangedResults.map(result => result.bytes),\n labels: Object.keys(nodesColors),\n type: 'pie',\n marker: {\n colors: Object.values(nodesColors)\n },\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}',\n sort: false\n };\n const pieLayoutBytes = {\n title: 'Total number of bytes',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-bytes', [pieDataBytes], pieLayoutBytes, {displaylogo: false});\n\n // requests plot\n // show total requests at first\n const pieDataRequests = {\n values: rearrangedResults.map(result => result.nb_reqs),\n labels: Object.keys(nodesColors),\n type: 'pie',\n marker: {\n colors: Object.values(nodesColors)\n },\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}',\n sort: false\n };\n const pieLayoutRequests = {\n title: 'Total number of requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of total requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total requests button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.nb_reqs)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of total requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.nb_successful_reqs)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of successful requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of successful requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.nb_reqs - result.nb_successful_reqs)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of unsuccessful requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of unsuccessful requests
(i.e. requests that did not return any data) made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-requests', [pieDataRequests], pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n let url = null;\n if (details === \"year\") {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&details=year&hllvalues=true&format=json`;\n }\n else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&details=month&hllvalues=true&format=json`;\n }\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // calculate hll values for total clients all nodes bar plot\n let hlls = {};\n data.results.forEach(result => {\n if (!hlls[result.date]) {\n hlls[result.date] = new HLL(11, 5);\n }\n hlls[result.date].union(fromHexString(result.hll_clients).hllSet);\n });\n // needed for clients of all specified nodes plot\n let clientsAllNodes = [];\n Object.keys(nodesColors).forEach(node => {\n clientsAllNodes.push([]);\n });\n clientsAllNodes[clientsAllNodes.length - 1] = Object.values(hlls).map(hll => hll.cardinality());\n // show clients at first\n const barData = Object.keys(nodesColors).map((node, index) => {\n const nodeResults = data.results.filter(result => result.node === node);\n return {\n x: nodeResults.map(result => result.date),\n y1: nodeResults.map(result => result.clients),\n y2: nodeResults.map(result => result.bytes),\n y3: nodeResults.map(result => result.nb_reqs),\n y4: nodeResults.map(result => result.nb_successful_reqs),\n y5: nodeResults.map(result => result.nb_reqs - result.nb_successful_reqs),\n name: node,\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n marker: {\n color: nodesColors[node]\n }\n }\n });\n let barLayout = {\n height: 500,\n margin: {\n b: 100\n },\n barmode: 'stack',\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n updatemenus: [{\n buttons: [\n // clients per node button\n {\n args: [\n {\n x: barData.map(bar => bar.x),\n y: barData.map(bar => bar.y1),\n name: barData.map(bar => bar.name),\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n marker: Object.values(nodesColors).map(color => ({ color: color }))\n },\n {\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n }\n ],\n label: 'Users Per Node',\n method: 'update'\n },\n // clients all specified nodes button\n {\n args: [\n {\n x: [Object.keys(hlls)],\n y: clientsAllNodes,\n name: Array(Object.keys(nodesColors).length).fill(\"\"),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: { color: Object.values(nodesColors)[0] }\n },\n {\n title: 'Number of unique users of all specified nodes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique Users'\n },\n showlegend: false,\n }\n ],\n label: 'Users All Nodes',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y2).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: true,\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // total requests button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y3).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of total requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of total requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Total Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y4).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of successful requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of successful requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Successful Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y5).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of unsuccessful requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unsuccessful requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unsuccessful Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barData.map(bar => ({x: bar.x, y: bar.y1, name: bar.name, type: bar.type, mode: bar.mode, marker: bar.marker, hovertemplate: bar.hovertemplate})), barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&details=country&hllvalues=true&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // remove nodes not included in the results\n for (const node in nodesColors) {\n if (!data.results.map(result => result.node).includes(node)) {\n delete nodesColors[node];\n }\n }\n // aggregate the results per country\n let aggregatedResults = data.results.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n nb_successful_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n aggregate[result.country].nb_successful_reqs += result.nb_successful_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients to all nodes at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: Object.values(aggregatedResults).map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n let mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // total requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of total requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of total requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of successful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of successful requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs - result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unsuccessful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unsuccesssful requests (i.e. requests that did not return any data) made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n\n let nodeCheckboxes = Object.keys(nodesColors).map((node, index) => (\n

\n \n \n
\n ));\n const nodeCheckboxesContainer = document.getElementById('nns-checkboxes');\n nodeCheckboxesContainer.innerHTML = '';\n ReactDOM.createRoot(nodeCheckboxesContainer).render(nodeCheckboxes);\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n let lastClickedTime = 0;\n let lastClickedCheckbox = null;\n function handleCheckboxClick(event) {\n // first define checkboxes behavior\n const checkbox = event.target;\n const currentTime = new Date().getTime();\n const timeDiff = currentTime - lastClickedTime;\n const checkboxes = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]');\n const checkedCount = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked').length;\n if (checkbox === lastClickedCheckbox && timeDiff < 300) {\n if (checkedCount === 1 && checkbox.checked) {\n checkboxes.forEach((cb) => {\n cb.checked = true;\n });\n }\n else {\n checkboxes.forEach((cb) => {\n cb.checked = (cb === checkbox);\n });\n }\n }\n lastClickedCheckbox = checkbox;\n lastClickedTime = currentTime;\n // now update the plot with appropriate data\n const checked = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked');\n const selectedNodes = [];\n checked.forEach((cb) => {\n selectedNodes.push(cb.value);\n })\n const filteredData = data.results.filter((result) => selectedNodes.includes(result.node));\n aggregatedResults = filteredData.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n nb_successful_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n aggregate[result.country].nb_successful_reqs += result.nb_successful_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n const newCountryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n const activeButtonIndex = mapLayout.updatemenus[0].active;\n const zValues = Object.values(aggregatedResults).map(result => {\n if (activeButtonIndex === 0 || activeButtonIndex === undefined) {\n return result.clients;\n } else if (activeButtonIndex === 1) {\n return result.bytes;\n } else if (activeButtonIndex === 2) {\n return result.nb_reqs;\n } else if (activeButtonIndex === 3) {\n return result.nb_successful_reqs;\n } else if (activeButtonIndex === 4) {\n return result.nb_reqs - result.nb_successful_reqs;\n }\n });\n const newMapData = [{\n locationmode: 'ISO-3',\n locations: newCountryCodesISO3,\n z: zValues,\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n mapLayout.updatemenus[0].buttons.forEach((button, index) => {\n if (button && index === 0) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.clients)]\n } else if (button && index === 1) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.bytes)]\n } else if (button && index === 2) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs)]\n } else if (button && index === 3) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_successful_reqs)]\n } else if (button && index === 4) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs - result.nb_successful_reqs)]\n }\n });\n Plotly.react('country-plots', newMapData, mapLayout);\n }\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n })\n .catch((error) => {\n console.log(error);\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n}\n","import Plotly from 'plotly.js-dist';\nimport ReactDOM from 'react-dom/client';\nimport {HLL, fromHexString} from './js_hll'\n\nexport function makePlotsNetwork(isAuthenticated, file, startTime, endTime, node, net, single=false, topN=10) {\n// if single=true toggle mode for one (shared) network, i.e. show statistics per node that shares this network\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n let url;\n if (isAuthenticated) {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&hllvalues=true&format=json`;\n } else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&hllvalues=true&format=json`;\n }\n fetch(url, {method: isAuthenticated ? 'POST' : 'GET', body: isAuthenticated ? file : null})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // calculate hll values for shared networks and for total clients all networks indicator plot\n let foundNets = {};\n let hll = new HLL(11, 5);\n data.results.forEach((result) => {\n let network = single ? result.node : result.network || \"N/A\";\n if (foundNets[network]) {\n foundNets[network].union(fromHexString(result.hll_clients).hllSet);\n } else {\n foundNets[network] = fromHexString(result.hll_clients).hllSet;\n }\n hll.union(fromHexString(result.hll_clients).hllSet);\n });\n // show topN items and group the rest\n let groupedDataClients = { values: [], labels: [], belongsInLess: [] };\n let otherValueClients = 0;\n const sortedNetsClients = Object.entries(foundNets).sort((a, b) => b[1].cardinality() - a[1].cardinality());\n sortedNetsClients.forEach(([network, value], index) => {\n if (index < topN) {\n groupedDataClients.values.push(value.cardinality());\n groupedDataClients.labels.push(single ? `${net} (${network})` : network);\n } else {\n groupedDataClients.belongsInLess.push(network);\n otherValueClients += value.cardinality();\n }\n });\n // sort alphabetically\n const sortedDataClients = groupedDataClients.labels.map((label, index) => ({\n label,\n value: groupedDataClients.values[index]\n })).sort((a, b) => a.label.localeCompare(b.label));\n groupedDataClients.labels = sortedDataClients.map(item => item.label);\n groupedDataClients.values = sortedDataClients.map(item => item.value);\n if (otherValueClients > 0) {\n groupedDataClients.values.push(otherValueClients);\n groupedDataClients.labels.push('Grouped Items');\n }\n // clients plot, per network pie at first\n let pieDataClients = {\n values: groupedDataClients.values,\n labels: groupedDataClients.labels,\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: groupedDataClients.labels.map(label => label === 'Grouped Items' ? groupedDataClients.belongsInLess.join('
') : ''),\n sort: false\n };\n const pieLayoutClients = {\n title: 'Total number of users* per network',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each network. However, the whole pie does not represent
the real value of the total users for all selected networks, as
many clients may have asked data from multiple networks.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total clients per network pie button\n {\n args: [\n {\n values: [groupedDataClients.values],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of users* per network',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each network. However, the whole pie does not represent
the real value of the total users for all selected networks, as
many clients may have asked data from multiple networks.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n }\n ],\n label: 'Users Per Network',\n method: 'update'\n },\n // total clients for all specified networks indicator button\n {\n args: [\n {\n type: \"indicator\",\n value: hll.cardinality(),\n mode: \"number\",\n number: { font: { size: 50 } }\n },\n {\n title: 'Total number of unique users of all networks',\n annotations: []\n }\n ],\n label: 'Users All Networks',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-clients', [pieDataClients], pieLayoutClients, {displaylogo: false});\n\n // bytes plot\n // take care of shared networks\n const sharedBytes = data.results.reduce((accumulator, result) => {\n let network = single ? result.node : result.network || \"N/A\";\n const index = accumulator.networks.indexOf(network);\n if (index !== -1) {\n accumulator.bytes[index] += result.bytes;\n } else {\n accumulator.bytes.push(result.bytes);\n accumulator.networks.push(single ? `${net} (${network})` : network);\n }\n return accumulator;\n }, { bytes: [], networks: [] });\n // show topN items and group the rest\n let groupedDataBytes = { values: [], labels: [], belongsInLess: [] };\n let otherValueBytes = 0;\n const sortedNetsBytes = sharedBytes.networks.map((network, index) => ({\n network,\n bytes: sharedBytes.bytes[index]\n })).sort((a, b) => b.bytes - a.bytes);\n sortedNetsBytes.forEach(({ network, bytes }, index) => {\n if (index < topN) {\n groupedDataBytes.values.push(bytes);\n groupedDataBytes.labels.push(network);\n } else {\n groupedDataBytes.belongsInLess.push(network);\n otherValueBytes += bytes;\n }\n });\n // sort alphabetically\n const sortedDataBytes = groupedDataBytes.labels.map((label, index) => ({\n label,\n value: groupedDataBytes.values[index]\n })).sort((a, b) => a.label.localeCompare(b.label));\n groupedDataBytes.labels = sortedDataBytes.map(item => item.label);\n groupedDataBytes.values = sortedDataBytes.map(item => item.value);\n if (otherValueBytes > 0) {\n groupedDataBytes.values.push(otherValueBytes);\n groupedDataBytes.labels.push('Grouped Items');\n }\n const pieDataBytes = {\n values: groupedDataBytes.values,\n labels: groupedDataBytes.labels,\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: groupedDataBytes.labels.map(label => label === 'Grouped Items' ? groupedDataBytes.belongsInLess.join('
') : ''),\n sort: false\n };\n const pieLayoutBytes = {\n title: 'Total number of bytes',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-bytes', [pieDataBytes], pieLayoutBytes, {displaylogo: false});\n\n // requests plot\n // take care of shared networks\n const sharedReq = data.results.reduce((accumulator, result) => {\n let network = single ? result.node : result.network || \"N/A\";\n const index = accumulator.networks.indexOf(network);\n if (index !== -1) {\n accumulator.nb_reqs[index] += result.nb_reqs;\n } else {\n accumulator.nb_reqs.push(result.nb_reqs);\n accumulator.networks.push(single ? `${net} (${network})` : network);\n }\n return accumulator;\n }, { nb_reqs: [], networks: [] });\n // show topN items and group the rest\n let groupedDataReq = { values: [], labels: [], belongsInLess: [] };\n let otherValueReq = 0;\n const sortedNetsReq = sharedReq.networks.map((network, index) => ({\n network,\n nb_reqs: sharedReq.nb_reqs[index]\n })).sort((a, b) => b.nb_reqs - a.nb_reqs);\n sortedNetsReq.forEach(({ network, nb_reqs }, index) => {\n if (index < topN) {\n groupedDataReq.values.push(nb_reqs);\n groupedDataReq.labels.push(network);\n } else {\n groupedDataReq.belongsInLess.push(network);\n otherValueReq += nb_reqs;\n }\n });\n // sort alphabetically\n const sortedDataReq = groupedDataReq.labels.map((label, index) => ({\n label,\n value: groupedDataReq.values[index]\n })).sort((a, b) => a.label.localeCompare(b.label));\n groupedDataReq.labels = sortedDataReq.map(item => item.label);\n groupedDataReq.values = sortedDataReq.map(item => item.value);\n if (otherValueReq > 0) {\n groupedDataReq.values.push(otherValueReq);\n groupedDataReq.labels.push('Grouped Items');\n }\n const pieDataRequests = {\n values: groupedDataReq.values,\n labels: groupedDataReq.labels,\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: groupedDataReq.labels.map(label => label === 'Grouped Items' ? groupedDataReq.belongsInLess.join('
') : ''),\n sort: false\n };\n const pieLayoutRequests = {\n title: 'Total number of requests',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n };\n Plotly.newPlot('total-requests', [pieDataRequests], pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n let url;\n if (isAuthenticated) {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=${details}&hllvalues=true&format=json`;\n }\n else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=${details}&hllvalues=true&format=json`;\n }\n fetch(url, {method: isAuthenticated ? 'POST' : 'GET', body: isAuthenticated ? file : null})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n let networksSet = Array.from(new Set(data.results.map(result => single ? result.node : result.network)));\n // calculate hll values for total clients all networks bar plot\n let hlls = {};\n data.results.forEach(result => {\n if (!hlls[result.date]) {\n hlls[result.date] = new HLL(11, 5);\n }\n hlls[result.date].union(fromHexString(result.hll_clients).hllSet);\n });\n // organize data and take care the case of shared networks\n const barData = networksSet.map(network => {\n let networkResults = data.results.filter(result => single ? result.node === network : result.network === network);\n // group results by date\n const groupedResults = networkResults.reduce((grouped, result) => {\n if (!grouped[result.date]) {\n grouped[result.date] = [];\n }\n grouped[result.date].push(result);\n return grouped;\n }, {});\n // calculate aggregated values for each date\n const aggregatedResults = Object.entries(groupedResults).map(([date, results]) => {\n const y1 = results.reduce((acc, result) => acc.union(fromHexString(result.hll_clients).hllSet), new HLL(11, 5));\n const y2 = results.reduce((sum, result) => sum + result.bytes, 0);\n const y3 = results.reduce((sum, result) => sum + result.nb_reqs, 0);\n return {date, y1, y2, y3};\n });\n return {\n x: aggregatedResults.map(result => result.date),\n y1: aggregatedResults.map(result => result.y1.cardinality()),\n y2: aggregatedResults.map(result => result.y2),\n y3: aggregatedResults.map(result => result.y3),\n name: single ? `${net} (${network})` : (network ? network : \"N/A\"),\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n });\n\n // show topN items and group the rest for clients\n barData.sort((a, b) => {\n const totalA = a.y1.reduce((sum, value) => sum + value, 0);\n const totalB = b.y1.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataClients = {\n x: [],\n y1: {},\n name: 'Grouped Items',\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataClients = [...barData];\n if (barDataClients.length > topN) {\n for (let i = topN; i < barDataClients.length; i++) {\n const item = barDataClients[i];\n item.x.forEach((date, i) => {\n if (!otherDataClients.x.includes(date)) {\n otherDataClients.x.push(date);\n }\n otherDataClients.y1[date] = (otherDataClients.y1[date] || 0) + item.y1[i];\n });\n }\n otherDataClients.y1 = Object.values(otherDataClients.y1);\n barDataClients.splice(topN, barDataClients.length - topN);\n }\n barDataClients.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataClients.x.length > 0) {\n barDataClients.push(otherDataClients);\n }\n // needed for clients of all specified networks plot\n let clientsAllNetworks = Array(barDataClients.length).fill([]);\n clientsAllNetworks[barDataClients.length - 1] = Object.values(hlls).map(hll => hll.cardinality());\n\n // show topN items and group the rest for bytes\n barData.sort((a, b) => {\n const totalA = a.y2.reduce((sum, value) => sum + value, 0);\n const totalB = b.y2.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataBytes = {\n x: [],\n y2: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataBytes = [...barData];\n if (barDataBytes.length > topN) {\n for (let i = topN; i < barDataBytes.length; i++) {\n const item = barDataBytes[i];\n item.x.forEach((date, i) => {\n if (!otherDataBytes.x.includes(date)) {\n otherDataBytes.x.push(date);\n }\n otherDataBytes.y2[date] = (otherDataBytes.y2[date] || 0) + item.y2[i];\n });\n }\n otherDataBytes.y2 = Object.values(otherDataBytes.y2);\n barDataBytes.splice(topN, barDataBytes.length - topN);\n }\n barDataBytes.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataBytes.x.length > 0) {\n barDataBytes.push(otherDataBytes);\n }\n\n // show topN items and group the rest for requests\n barData.sort((a, b) => {\n const totalA = a.y3.reduce((sum, value) => sum + value, 0);\n const totalB = b.y3.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataReq = {\n x: [],\n y3: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataReq = [...barData];\n if (barDataReq.length > topN) {\n for (let i = topN; i < barDataReq.length; i++) {\n const item = barDataReq[i];\n item.x.forEach((date, i) => {\n if (!otherDataReq.x.includes(date)) {\n otherDataReq.x.push(date);\n }\n otherDataReq.y3[date] = (otherDataReq.y3[date] || 0) + item.y3[i];\n });\n }\n otherDataReq.y3 = Object.values(otherDataReq.y3);\n barDataReq.splice(topN, barDataReq.length - topN);\n }\n barDataReq.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataReq.x.length > 0) {\n barDataReq.push(otherDataReq);\n }\n\n let barLayout = {\n height: 500,\n margin: {\n b: 100\n },\n barmode: 'stack',\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n updatemenus: [{\n buttons: [\n // clients per network button\n {\n args: [\n {\n x: barDataClients.map(bar => bar.x),\n y: barDataClients.map(bar => bar.y1),\n name: barDataClients.map(bar => bar.name),\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n },\n {\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n }\n ],\n label: 'Users Per Network',\n method: 'update'\n },\n // clients all specified networks button\n {\n args: [\n {\n x: [Object.keys(hlls)],\n y: clientsAllNetworks,\n name: Array(clientsAllNetworks.length).fill(\"\"),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of unique users of all specified networks per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique Users'\n },\n showlegend: false,\n }\n ],\n label: 'Users All Networks',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: barDataBytes.map(bar => bar.x).reverse(),\n y: barDataBytes.map(bar => bar.y2).reverse(),\n name: barDataBytes.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: true,\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n x: barDataReq.map(bar => bar.x).reverse(),\n y: barDataReq.map(bar => bar.y3).reverse(),\n name: barDataReq.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barDataClients.map(bar => ({x: bar.x, y: bar.y1, name: bar.name, type: bar.type, mode: bar.mode, hovertemplate: bar.hovertemplate})), barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n let url;\n if (isAuthenticated) {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=country&hllvalues=true&format=json`;\n } else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=country&hllvalues=true&format=json`;\n }\n fetch(url, {method: isAuthenticated ? 'POST' : 'GET', body: isAuthenticated ? file : null})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // aggregate the results per country\n let aggregatedResults = data.results.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients to all nodes at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: Object.values(aggregatedResults).map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n let mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n\n let networksSorted;\n if (single) {\n networksSorted = Array.from(new Set(data.results.map(result => result.node))).sort((a, b) => a.localeCompare(b));\n } else {\n networksSorted = Array.from(new Set(data.results.map(result => result.network))).sort((a, b) => a.localeCompare(b));\n }\n let networkCheckboxes = networksSorted.map((network, index) => (\n

\n \n \n
\n ));\n const networkCheckboxesContainer = document.getElementById('nns-checkboxes');\n networkCheckboxesContainer.innerHTML = '';\n ReactDOM.createRoot(networkCheckboxesContainer).render(networkCheckboxes);\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n let lastClickedTime = 0;\n let lastClickedCheckbox = null;\n function handleCheckboxClick(event) {\n // first define checkboxes behavior\n const checkbox = event.target;\n const currentTime = new Date().getTime();\n const timeDiff = currentTime - lastClickedTime;\n const checkboxes = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]');\n const checkedCount = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked').length;\n if (checkbox === lastClickedCheckbox && timeDiff < 300) {\n if (checkedCount === 1 && checkbox.checked) {\n checkboxes.forEach((cb) => {\n cb.checked = true;\n });\n }\n else {\n checkboxes.forEach((cb) => {\n cb.checked = (cb === checkbox);\n });\n }\n }\n lastClickedCheckbox = checkbox;\n lastClickedTime = currentTime;\n // now update the plot with appropriate data\n const checked = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked');\n const selectedNetworks = [];\n checked.forEach((cb) => {\n selectedNetworks.push(cb.value);\n })\n let filteredData;\n if (single) {\n filteredData = data.results.filter((result) => selectedNetworks.includes(result.node));\n } else {\n filteredData = data.results.filter((result) => selectedNetworks.includes(result.network));\n }\n aggregatedResults = filteredData.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n const newCountryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n const activeButtonIndex = mapLayout.updatemenus[0].active;\n const zValues = Object.values(aggregatedResults).map(result => {\n if (activeButtonIndex === 0 || activeButtonIndex === undefined) {\n return result.clients;\n } else if (activeButtonIndex === 1) {\n return result.bytes;\n } else if (activeButtonIndex === 2) {\n return result.nb_reqs;\n }\n });\n const newMapData = [{\n locationmode: 'ISO-3',\n locations: newCountryCodesISO3,\n z: zValues,\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n mapLayout.updatemenus[0].buttons.forEach((button, index) => {\n if (button && index === 0) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.clients)]\n } else if (button && index === 1) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.bytes)]\n } else if (button && index === 2) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs)]\n }\n });\n Plotly.react('country-plots', newMapData, mapLayout);\n }\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n}\n","import Plotly from 'plotly.js-dist';\nimport ReactDOM from 'react-dom/client';\nimport {HLL, fromHexString} from './js_hll'\n\nexport function makePlotsStation(file, startTime, endTime, node, net, sta, topN=10) {\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}${sta ? `&station=${sta}` : ''}&level=station&hllvalues=true&format=json`;\n fetch(url, {method: 'POST', body: file})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // calculate hll values for total clients all stations indicator plot\n let hll = new HLL(11, 5);\n data.results.forEach((result) => {\n hll.union(fromHexString(result.hll_clients).hllSet);\n });\n // clients plot\n // show topN items and group the rest\n const topDataClients = data.results.sort((a, b) => b.clients - a.clients).slice(0, topN).map(result => ({\n station: result.network + '.' + result.station,\n clients: result.clients\n }));\n topDataClients.sort((a, b) => a.station.localeCompare(b.station));\n const totalClientsGroupedSlice = data.results.reduce((total, result) => {\n if (!topDataClients.map(item => item.station).includes(result.network + '.' + result.station)) {\n return total + result.clients;\n }\n return total;\n }, 0);\n const groupedSliceClients = {\n station: 'Grouped Items',\n clients: totalClientsGroupedSlice,\n belongsHere: data.results.filter(result => !topDataClients.map(item => item.station).includes(result.network + '.' + result.station)).map(result => result.network + '.' + result.station),\n };\n if (groupedSliceClients.clients > 0) {\n topDataClients.push({station: groupedSliceClients.station, clients: groupedSliceClients.clients});\n }\n // per station pie at first\n const pieDataClients = {\n values: topDataClients.map(item => item.clients),\n labels: topDataClients.map(item => item.station),\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: topDataClients.map(result => result.station === 'Grouped Items' ? groupedSliceClients.belongsHere.join('
') : ''),\n sort: false\n };\n const pieLayoutClients = {\n title: 'Total number of unique users*',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each station. However, the whole pie does not represent
the real value of the total users for all selected stations, as
many clients may have asked data from multiple stations.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total clients per station pie button\n {\n args: [\n {\n values: [topDataClients.map(item => item.clients)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of unique users*',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each station. However, the whole pie does not represent
the real value of the total users for all selected stations, as
many clients may have asked data from multiple stations.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n }\n ],\n label: 'Unique Users Per Station',\n method: 'update'\n },\n // total clients for all specified stations indicator button\n {\n args: [\n {\n type: \"indicator\",\n value: hll.cardinality(),\n mode: \"number\",\n number: { font: { size: 50 } }\n },\n {\n title: 'Total number of unique users of all specified stations',\n annotations: []\n }\n ],\n label: 'Unique Users All Stations',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-clients', [pieDataClients], pieLayoutClients, {displaylogo: false});\n\n // bytes plot\n // show topN items and group the rest\n const topDataBytes = data.results.sort((a, b) => b.bytes - a.bytes).slice(0, topN).map(result => ({\n station: result.network + '.' + result.station,\n bytes: result.bytes\n }));\n topDataBytes.sort((a, b) => a.station.localeCompare(b.station));\n const totalBytesGroupedSlice = data.results.reduce((total, result) => {\n if (!topDataBytes.map(item => item.station).includes(result.network + '.' + result.station)) {\n return total + result.bytes;\n }\n return total;\n }, 0);\n const groupedSliceBytes = {\n station: 'Grouped Items',\n bytes: totalBytesGroupedSlice,\n belongsHere: data.results.filter(result => !topDataBytes.map(item => item.station).includes(result.network + '.' + result.station)).map(result => result.network + '.' + result.station),\n };\n if (groupedSliceBytes.bytes > 0) {\n topDataBytes.push({station: groupedSliceBytes.station, bytes: groupedSliceBytes.bytes});\n }\n const pieDataBytes = {\n values: topDataBytes.map(item => item.bytes),\n labels: topDataBytes.map(item => item.station),\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: topDataBytes.map(result => result.station === 'Grouped Items' ? groupedSliceBytes.belongsHere.join('
') : ''),\n sort: false\n };\n const pieLayoutBytes = {\n title: 'Total number of bytes',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-bytes', [pieDataBytes], pieLayoutBytes, {displaylogo: false});\n\n // requests plot\n // show topN items and group the rest\n const topDataRequests = data.results.sort((a, b) => b.nb_reqs - a.nb_reqs).slice(0, topN).map(result => ({\n station: result.network + '.' + result.station,\n nb_reqs: result.nb_reqs\n }));\n topDataRequests.sort((a, b) => a.station.localeCompare(b.station));\n const totalRequestsGroupedSlice = data.results.reduce((total, result) => {\n if (!topDataRequests.map(item => item.station).includes(result.network + '.' + result.station)) {\n return total + result.nb_reqs;\n }\n return total;\n }, 0);\n const groupedSliceRequests = {\n station: 'Grouped Items',\n nb_reqs: totalRequestsGroupedSlice,\n belongsHere: data.results.filter(result => !topDataRequests.map(item => item.station).includes(result.network + '.' + result.station)).map(result => result.network + '.' + result.station),\n };\n if (groupedSliceRequests.nb_reqs > 0) {\n topDataRequests.push({station: groupedSliceRequests.station, nb_reqs: groupedSliceRequests.nb_reqs});\n }\n const pieDataRequests = {\n values: topDataRequests.map(item => item.nb_reqs),\n labels: topDataRequests.map(item => item.station),\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: topDataRequests.map(result => result.station === 'Grouped Items' ? groupedSliceRequests.belongsHere.join('
') : ''),\n sort: false\n };\n const pieLayoutRequests = {\n title: 'Total number of requests',\n annotations: [\n {\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-requests', [pieDataRequests], pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}${sta ? `&station=${sta}` : ''}&level=station&details=${details}&hllvalues=true&format=json`;\n fetch(url, {method: 'POST', body: file})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n const stationsSet = Array.from(new Set(data.results.map(result => result.station)));\n // calculate hll values for total clients all stations bar plot\n let hlls = {};\n data.results.forEach(result => {\n if (!hlls[result.date]) {\n hlls[result.date] = new HLL(11, 5);\n }\n hlls[result.date].union(fromHexString(result.hll_clients).hllSet);\n });\n // show clients at first\n const barData = stationsSet.map(station => {\n const stationResults = data.results.filter(result => result.station === station);\n return {\n x: stationResults.map(result => result.date),\n y1: stationResults.map(result => result.clients),\n y2: stationResults.map(result => result.bytes),\n y3: stationResults.map(result => result.nb_reqs),\n name: stationResults[0].network + '.' + stationResults[0].station,\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n }\n });\n\n // show topN items and group the rest for clients\n barData.sort((a, b) => {\n const totalA = a.y1.reduce((sum, value) => sum + value, 0);\n const totalB = b.y1.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataClients = {\n x: [],\n y1: {},\n name: 'Grouped Items',\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataClients = [...barData];\n if (barDataClients.length > topN) {\n for (let i = topN; i < barDataClients.length; i++) {\n const item = barDataClients[i];\n item.x.forEach((date, i) => {\n if (!otherDataClients.x.includes(date)) {\n otherDataClients.x.push(date);\n }\n otherDataClients.y1[date] = (otherDataClients.y1[date] || 0) + item.y1[i];\n });\n }\n otherDataClients.y1 = Object.values(otherDataClients.y1);\n barDataClients.splice(topN, barDataClients.length - topN);\n }\n barDataClients.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataClients.x.length > 0) {\n barDataClients.push(otherDataClients);\n }\n // needed for clients of all specified stations plot\n let clientsAllStations = Array(barDataClients.length).fill([]);\n clientsAllStations[barDataClients.length - 1] = Object.values(hlls).map(hll => hll.cardinality());\n\n // show topN items and group the rest for bytes\n barData.sort((a, b) => {\n const totalA = a.y2.reduce((sum, value) => sum + value, 0);\n const totalB = b.y2.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataBytes = {\n x: [],\n y2: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataBytes = [...barData];\n if (barDataBytes.length > topN) {\n for (let i = topN; i < barDataBytes.length; i++) {\n const item = barDataBytes[i];\n item.x.forEach((date, i) => {\n if (!otherDataBytes.x.includes(date)) {\n otherDataBytes.x.push(date);\n }\n otherDataBytes.y2[date] = (otherDataBytes.y2[date] || 0) + item.y2[i];\n });\n }\n otherDataBytes.y2 = Object.values(otherDataBytes.y2);\n barDataBytes.splice(topN, barDataBytes.length - topN);\n }\n barDataBytes.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataBytes.x.length > 0) {\n barDataBytes.push(otherDataBytes);\n }\n\n // show topN items and group the rest for total requests\n barData.sort((a, b) => {\n const totalA = a.y3.reduce((sum, value) => sum + value, 0);\n const totalB = b.y3.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataRequests = {\n x: [],\n y3: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataRequests = [...barData];\n if (barDataRequests.length > topN) {\n for (let i = topN; i < barDataRequests.length; i++) {\n const item = barDataRequests[i];\n item.x.forEach((date, i) => {\n if (!otherDataRequests.x.includes(date)) {\n otherDataRequests.x.push(date);\n }\n otherDataRequests.y3[date] = (otherDataRequests.y3[date] || 0) + item.y3[i];\n });\n }\n otherDataRequests.y3 = Object.values(otherDataRequests.y3);\n barDataRequests.splice(topN, barDataRequests.length - topN);\n }\n barDataRequests.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataRequests.x.length > 0) {\n barDataRequests.push(otherDataRequests);\n }\n\n let barLayout = {\n height: 500,\n margin: {\n b: 100\n },\n barmode: 'stack',\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n updatemenus: [{\n buttons: [\n // clients per station button\n {\n args: [\n {\n x: barDataClients.map(bar => bar.x),\n y: barDataClients.map(bar => bar.y1),\n name: barDataClients.map(bar => bar.name),\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n },\n {\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n }\n ],\n label: 'Unique Users Per station',\n method: 'update'\n },\n // clients all specified stations button\n {\n args: [\n {\n x: [Object.keys(hlls)],\n y: clientsAllStations,\n name: Array(clientsAllStations.length).fill(\"\"),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of unique users of all specified stations per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique Users'\n },\n showlegend: false,\n }\n ],\n label: 'Unique Users All Stations',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: barDataBytes.map(bar => bar.x).reverse(),\n y: barDataBytes.map(bar => bar.y2).reverse(),\n name: barDataBytes.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: true,\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n x: barDataRequests.map(bar => bar.x).reverse(),\n y: barDataRequests.map(bar => bar.y3).reverse(),\n name: barDataRequests.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Requests',\n method: 'update'\n },\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barDataClients.map(bar => ({x: bar.x, y: bar.y1, name: bar.name, type: bar.type, mode: bar.mode, hovertemplate: bar.hovertemplate})), barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}${sta ? `&station=${sta}` : ''}&level=station&details=country&hllvalues=true&format=json`;\n fetch(url, {method: 'POST', body: file})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // aggregate the results per country\n let aggregatedResults = data.results.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients to all nodes at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: Object.values(aggregatedResults).map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n let mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Requests',\n method: 'update'\n },\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n const stationsSorted = Array.from(new Set(data.results.map(result => result.network ? result.network + '.' + result.station : result.station))).sort((a, b) => a.localeCompare(b));\n let stationCheckboxes = stationsSorted.map((station, index) => (\n

\n \n \n
\n ));\n const stationCheckboxesContainer = document.getElementById('nns-checkboxes');\n stationCheckboxesContainer.innerHTML = '';\n ReactDOM.createRoot(stationCheckboxesContainer).render(stationCheckboxes);\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n let lastClickedTime = 0;\n let lastClickedCheckbox = null;\n function handleCheckboxClick(event) {\n // first define checkboxes behavior\n const checkbox = event.target;\n const currentTime = new Date().getTime();\n const timeDiff = currentTime - lastClickedTime;\n const checkboxes = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]');\n const checkedCount = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked').length;\n if (checkbox === lastClickedCheckbox && timeDiff < 300) {\n if (checkedCount === 1 && checkbox.checked) {\n checkboxes.forEach((cb) => {\n cb.checked = true;\n });\n }\n else {\n checkboxes.forEach((cb) => {\n cb.checked = (cb === checkbox);\n });\n }\n }\n lastClickedCheckbox = checkbox;\n lastClickedTime = currentTime;\n // now update the plot with appropriate data\n const checked = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked');\n const selectedStations = [];\n checked.forEach((cb) => {\n selectedStations.push(cb.value);\n })\n const filteredData = data.results.filter((result) => selectedStations.includes(result.station));\n aggregatedResults = filteredData.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n const newCountryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n const activeButtonIndex = mapLayout.updatemenus[0].active;\n const zValues = Object.values(aggregatedResults).map(result => {\n if (activeButtonIndex === 0 || activeButtonIndex === undefined) {\n return result.clients;\n } else if (activeButtonIndex === 1) {\n return result.bytes;\n } else if (activeButtonIndex === 2) {\n return result.nb_reqs;\n }\n });\n const newMapData = [{\n locationmode: 'ISO-3',\n locations: newCountryCodesISO3,\n z: zValues,\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n mapLayout.updatemenus[0].buttons.forEach((button, index) => {\n if (button && index === 0) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.clients)]\n } else if (button && index === 1) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.bytes)]\n } else if (button && index === 2) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs)]\n }\n });\n Plotly.react('country-plots', newMapData, mapLayout);\n }\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n}\n","const 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","import React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport './index.css';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n \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":["module","exports","HLL","fromHexString","string","arrayBuffer","hex","length","substring","ArrayBuffer","byteView","Uint8Array","i","byteString","parseInt","hexToArrayBuffer","parseSet","DEFAULT_REGISTER_WIDTH","DEFAULT_LOG2M","LOWER","UPPER","log2m","registerWidth","self","arguments","Error","m","registers","push","maxRegisterValue","registerIndexMask","L","TWO_TO_L","Math","pow","LARGE_ESTIMATOR_CUTOFF","SMALL_ESTIMATOR_CUTOFF","ALPHA_M_SQUARED","cardinalityAlphaMSquared","rho","value","lsb","LEAST_SIGNIFICANT_BIT","leastSignificantBit","min","addRaw","hashValue","registerIndex","registerValue","longValue","shift","upper","shiftRightUnsignedLong","max","algorithmCardinality","sum","numberOfZeroes","j","estimator","log","cardinality","ceil","cardinalityError","sqrt","union","otherSet","selfRegisterCount","otherRegisterCount","registerCount","selfRegisters","otherRegisters","fold","clone","hllSet","foldedRegisters","difference","cloneRegisters","clear","toHexString","writer","ByteWriter","addBits","bytes","byteValue","toString","hexfromByteArray","getBytes","BITS_IN_BYTE","schema1","version","algorithm","lowerNibble","schema1_empty","UNDEFINED","EMPTY","schema1_explicit","EXPLICIT","schema1_sparse","SPARSE","schema1_full","FULL","schema1_parameters","parameterByte","getBitSequenceFromByte","parameters","byteOffset","getBitSequenceValueFromByteArray","offset","bitOffset","floor","key","common_sparse","extractLong","common_explicit","startByteIndex","lower","start","byteStartIndex","byteEndIndex","bitStartIndex","bitEndIndex","result","currentByte","remainingBitsInByteCount","this","bitCount","remainingBitsInValueCount","writeBitCount","copyBytes","slice","u","b","Symbol","for","c","d","e","f","g","h","k","l","n","p","q","t","v","a","r","$$typeof","type","Object","defineProperty","ref","current","_slicedToArray","require","_ref","controlled","defaultProp","default","isControlled","name","state","React","useRef","undefined","_React$useState","useState","_React$useState2","valueState","setValue","process","setValueIfUncontrolled","useCallback","newValue","obj","nodeInterop","__esModule","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","prototype","hasOwnProperty","call","desc","set","_interopRequireWildcard","WeakMap","cacheBabelInterop","cacheNodeInterop","_default","window","useLayoutEffect","useEffect","_interopRequireDefault","fn","_useEnhancedEffect","apply","_len","refs","Array","_key","useMemo","every","instance","forEach","_setRef","idOverride","maybeReactUseId","reactId","defaultId","setDefaultId","id","concat","globalId","useGlobalId","countryISOMapping","AF","AX","AL","DZ","AS","AD","AO","AI","AQ","AG","AR","AM","AW","AU","AT","AZ","BS","BH","BD","BB","BY","BE","BZ","BJ","BM","BT","BO","BA","BW","BV","BR","VG","IO","BN","BG","BF","BI","KH","CM","CA","CV","KY","CF","TD","CL","CN","HK","MO","CX","CC","CO","KM","CG","CD","CK","CR","CI","HR","CU","CY","CZ","DK","DJ","DM","DO","EC","EG","SV","GQ","ER","EE","ET","FK","FO","FJ","FI","FR","GF","PF","TF","GA","GM","GE","DE","GH","GI","GR","GL","GD","GP","GU","GT","GG","GN","GW","GY","HT","HM","VA","HN","HU","IS","IN","ID","IR","IQ","IE","IM","IL","IT","JM","JP","JE","JO","KZ","KE","KI","KP","KR","KW","KG","LA","LV","LB","LS","LR","LY","LI","LT","LU","MK","MG","MW","MY","MV","ML","MT","MH","MQ","MR","MU","YT","MX","FM","MD","MC","MN","ME","MS","MA","MZ","MM","NA","NR","NP","NL","AN","NC","NZ","NI","NE","NG","NU","NF","MP","NO","OM","PK","PW","PS","PA","PG","PY","PE","PH","PN","PL","PT","PR","QA","RE","RO","RU","RW","BL","SH","KN","LC","MF","PM","VC","WS","SM","ST","SA","SN","RS","SC","SL","SG","SK","SI","SB","SO","ZA","GS","SS","ES","LK","SD","SR","SJ","SZ","SE","CH","SY","TW","TJ","TZ","TH","TL","TG","TK","TO","TT","TN","TR","TM","TC","TV","UG","UA","AE","GB","US","UM","UY","UZ","VU","VE","VN","VI","WF","EH","YE","ZM","ZW","XK","countryCode","s","o","$","y","M","weekdays","split","months","ordinal","String","join","z","utcOffset","abs","date","year","month","add","w","D","ms","Q","toLowerCase","replace","_","S","args","O","locale","$L","utc","$u","x","$x","$offset","parse","$d","Date","NaN","test","match","UTC","init","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","unix","valueOf","getTime","toDate","$locale","weekStart","$set","daysInMonth","Number","round","subtract","format","invalidDate","meridiem","YY","YYYY","MMM","monthsShort","MMMM","DD","dd","weekdaysMin","ddd","weekdaysShort","dddd","H","HH","hh","A","mm","ss","SSS","Z","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","T","extend","$i","isDayjs","en","Ls","LTS","LL","LLL","LLLL","zone","indexOf","afternoon","milliseconds","Do","day","map","Y","ZZ","formats","toUpperCase","regex","parser","exec","hours","customParseFormat","parseTwoDigitYear","minutes","seconds","isBetween","week","yearStart","weeks","reactIs","REACT_STATICS","childContextTypes","contextType","contextTypes","defaultProps","displayName","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","KNOWN_STATICS","caller","callee","arity","MEMO_STATICS","compare","TYPE_STATICS","getStatics","component","isMemo","ForwardRef","render","Memo","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","targetStatics","sourceStatics","descriptor","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","Fragment","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","factory","__webpack_modules__","__unused_webpack_module","__unused_webpack_exports","__webpack_require__","Lib","rules","selector","fullSelector","addStyleRule","Plotly","register","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","props","propName","componentName","location","propFullName","secret","err","getShim","isRequired","ReactPropTypes","array","bigint","bool","func","number","object","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","aa","ca","encodeURIComponent","da","Set","ea","fa","ha","ia","document","createElement","ja","ka","la","ma","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","ra","sa","ta","pa","isNaN","qa","oa","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ua","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","va","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","iterator","Ka","La","assign","Ma","stack","trim","Na","Oa","prepareStackTrace","Reflect","construct","includes","Pa","tag","Qa","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","constructor","configurable","enumerable","getValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","defaultValue","_wrapperState","initialChecked","Za","initialValue","ab","bb","cb","db","ownerDocument","eb","isArray","fb","options","selected","defaultSelected","disabled","gb","dangerouslySetInnerHTML","children","hb","ib","jb","textContent","kb","lb","mb","nb","namespaceURI","innerHTML","firstChild","removeChild","appendChild","MSApp","execUnsafeLocalFunction","ob","lastChild","nodeType","nodeValue","pb","animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","qb","rb","sb","style","setProperty","charAt","tb","menuitem","area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr","ub","vb","is","wb","xb","target","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","addEventListener","removeEventListener","Nb","onError","Ob","Pb","Qb","Rb","Sb","Tb","Vb","alternate","return","flags","Wb","memoizedState","dehydrated","Xb","Zb","child","sibling","Yb","$b","ac","unstable_scheduleCallback","bc","unstable_cancelCallback","cc","unstable_shouldYield","dc","unstable_requestPaint","B","unstable_now","ec","unstable_getCurrentPriorityLevel","fc","unstable_ImmediatePriority","gc","unstable_UserBlockingPriority","hc","unstable_NormalPriority","ic","unstable_LowPriority","jc","unstable_IdlePriority","kc","lc","oc","clz32","pc","qc","LN2","rc","sc","tc","uc","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","vc","xc","yc","zc","Ac","eventTimes","Cc","C","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Map","Pc","Qc","Rc","Sc","delete","pointerId","Tc","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","Vc","Wc","priority","isDehydrated","containerInfo","Xc","Yc","dispatchEvent","Zc","$c","ad","bd","cd","ReactCurrentBatchConfig","ed","transition","fd","gd","hd","Uc","stopPropagation","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","now","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","data","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","fromCharCode","code","repeat","which","Rd","Td","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","ae","be","documentMode","ce","de","ee","fe","ge","he","ie","le","color","datetime","email","password","range","search","tel","text","time","url","me","ne","oe","event","listeners","pe","qe","re","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","detachEvent","Be","Ce","attachEvent","De","Ee","Fe","He","Ie","Je","Ke","nextSibling","Le","contains","compareDocumentPosition","Me","HTMLIFrameElement","contentWindow","href","Ne","contentEditable","Oe","focusedElem","selectionRange","documentElement","end","selectionStart","selectionEnd","defaultView","getSelection","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","focus","Pe","Qe","Re","Se","Te","Ue","Ve","We","animationend","animationiteration","animationstart","transitionend","Xe","Ye","Ze","animation","$e","af","bf","cf","df","ef","ff","gf","hf","lf","mf","nf","Ub","listener","of","pf","qf","rf","random","sf","bind","capture","passive","J","F","tf","uf","parentWindow","vf","wf","na","xa","$a","ba","je","char","ke","unshift","xf","yf","zf","Af","Bf","Cf","Df","Ef","__html","Ff","setTimeout","Gf","clearTimeout","Hf","Promise","Jf","queueMicrotask","resolve","then","catch","If","Kf","Lf","Mf","previousSibling","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","E","G","Vf","Wf","Xf","Yf","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Zf","$f","ag","bg","getChildContext","cg","__reactInternalMemoizedMergedChildContext","dg","eg","fg","gg","hg","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","tg","ug","vg","wg","xg","yg","I","zg","Ag","Bg","deletions","Cg","pendingProps","overflow","treeContext","retryLane","Dg","mode","Eg","Fg","Gg","memoizedProps","Hg","Ig","Jg","Kg","Lg","Mg","Ng","Og","Pg","Qg","Rg","_currentValue","Sg","childLanes","Tg","dependencies","firstContext","lanes","Ug","Vg","context","memoizedValue","next","Wg","Xg","Yg","interleaved","Zg","ah","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","bh","ch","eventTime","lane","payload","callback","dh","K","eh","fh","gh","ih","jh","Component","kh","nh","isMounted","_reactInternals","enqueueSetState","lh","mh","enqueueReplaceState","enqueueForceUpdate","oh","shouldComponentUpdate","isPureReactComponent","ph","updater","qh","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","rh","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","sh","_owner","_stringRef","th","uh","vh","index","wh","xh","yh","implementation","zh","Ah","done","Bh","Ch","Dh","Eh","Fh","Gh","Hh","Ih","tagName","Jh","Kh","Lh","Mh","revealOrder","Nh","Oh","_workInProgressVersionPrimary","Ph","ReactCurrentDispatcher","Qh","Rh","N","P","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","baseQueue","queue","di","ei","fi","lastRenderedReducer","action","hasEagerState","eagerState","lastRenderedState","dispatch","gi","hi","ii","ji","ki","getSnapshot","li","mi","R","ni","lastEffect","stores","oi","pi","qi","ri","create","destroy","deps","si","ti","ui","vi","wi","xi","yi","zi","Ai","Bi","Ci","Di","Ei","Fi","Gi","Hi","Ii","Ji","readContext","useContext","useImperativeHandle","useInsertionEffect","useReducer","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","Ki","message","digest","Li","Mi","console","error","Ni","Oi","Pi","Qi","Ri","componentDidCatch","Si","componentStack","Ti","pingCache","Ui","Vi","Wi","Xi","ReactCurrentOwner","Yi","Zi","aj","bj","cj","dj","ej","baseLanes","cachePool","transitions","fj","gj","hj","ij","jj","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","kj","lj","pendingContext","mj","Aj","Bj","Cj","Dj","nj","oj","pj","fallback","qj","rj","tj","dataset","dgst","uj","vj","_reactRetry","sj","subtreeFlags","wj","xj","isBackwards","rendering","renderingStartTime","last","tail","tailMode","yj","Ej","Fj","Gj","wasMultiple","multiple","suppressHydrationWarning","onClick","onclick","size","createElementNS","autoFocus","createTextNode","Hj","Ij","Jj","Kj","U","Lj","WeakSet","V","Mj","W","Nj","Oj","Qj","Rj","Sj","Tj","Uj","Vj","Wj","insertBefore","_reactRootContainer","Xj","X","Yj","Zj","ak","onCommitFiberUnmount","componentWillUnmount","bk","ck","dk","ek","fk","isHidden","gk","hk","display","ik","jk","kk","lk","__reactInternalSnapshotBeforeUpdate","src","Wk","mk","nk","ok","pk","qk","rk","sk","tk","uk","Infinity","vk","wk","xk","yk","zk","Ak","Bk","Ck","Dk","Ek","callbackNode","expirationTimes","expiredLanes","wc","callbackPriority","ig","Fk","Gk","Hk","Ik","Jk","Kk","Lk","Mk","Nk","Ok","Pk","finishedWork","finishedLanes","Qk","timeoutHandle","Rk","Sk","Tk","Uk","Vk","mutableReadLanes","Bc","Pj","onCommitFiberRoot","mc","onRecoverableError","Xk","onPostCommitFiberRoot","Yk","Zk","al","isReactComponent","pendingChildren","bl","mutableSourceEagerHydrationData","cl","pendingSuspenseBoundaries","el","fl","gl","hl","il","jl","zj","$k","ll","reportError","ml","_internalRoot","nl","ol","pl","ql","sl","rl","unmount","unstable_scheduleHydration","splice","querySelectorAll","JSON","stringify","form","tl","usingClientEntryPoint","Events","ul","findFiberByHostInstance","bundleType","rendererPackageName","vl","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","wl","isDisabled","supportsFiber","inject","createPortal","dl","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","_source","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","__self","__source","jsx","jsxs","setState","forceUpdate","escape","_status","_result","Children","count","toArray","only","PureComponent","cloneElement","createContext","_currentValue2","_threadCount","Provider","Consumer","_defaultValue","_globalName","createFactory","createRef","forwardRef","isValidElement","lazy","memo","startTransition","unstable_act","pop","sortIndex","performance","setImmediate","startTime","expirationTime","priorityLevel","navigator","scheduling","isInputPending","MessageChannel","port2","port1","onmessage","postMessage","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","delay","unstable_wrapCallback","arr","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","TypeError","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","arrayLikeToArray","minLen","from","__webpack_module_cache__","moduleId","cachedModule","getter","leafPrototypes","getProto","__proto__","ns","def","definition","chunkId","all","reduce","promises","miniCssF","prop","inProgress","dataWebpackPrefix","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","nc","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","baseURI","installedChunks","installedChunkData","promise","reject","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","_typeof","_toPropertyKey","arg","hint","prim","toPrimitive","res","_defineProperty","writable","ownKeys","enumerableOnly","symbols","filter","sym","_objectSpread2","getOwnPropertyDescriptors","defineProperties","_regeneratorRuntime","Op","hasOwn","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","NativeIteratorPrototype","values","Gp","defineIteratorMethods","method","_invoke","AsyncIterator","PromiseImpl","invoke","record","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","awrap","async","iter","val","reverse","skipTempReset","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","_arrayLikeToArray","_unsupportedIterableToArray","_objectWithoutPropertiesLoose","excluded","sourceKeys","resolveProps","output","_objectSpread","defaultSlotProps","slotProps","slotPropName","composeClasses","slots","getUtilityClass","classes","slot","acc","utilityClass","formatMuiErrorMessage","clamp","decomposeColor","RegExp","colors","hexToRgb","marker","_formatMuiErrorMessage","colorSpace","parseFloat","recomposeColor","getLuminance","rgb","hslToRgb","toFixed","alpha","darken","coefficient","lighten","memoize","reactPropsRegex","isPropValid","charCodeAt","StyleSheet","_this","_insertTag","before","tags","insertionPoint","prepend","container","isSpeedy","speedy","ctr","nonce","_proto","nodes","insert","rule","createStyleElement","sheet","styleSheets","ownerNode","sheetForTag","insertRule","cssRules","flush","pattern","replacement","indexof","charat","substr","begin","strlen","sizeof","append","line","column","position","character","characters","root","parent","copy","peek","caret","token","alloc","dealloc","delimit","delimiter","whitespace","escaping","commenter","identifier","MOZ","WEBKIT","COMMENT","RULESET","DECLARATION","KEYFRAMES","serialize","compile","rulesets","pseudo","points","declarations","atrule","property","previous","variable","scanning","ampersand","reference","comment","declaration","ruleset","post","identifierWithPointTracking","getRules","parsed","toRules","fixedElements","compat","isImplicitRule","parentRules","removeLabel","prefix","hash","defaultStylisPlugins","combine","createCache","ssrStyles","stylisPlugins","_insert","inserted","nodesToHydrate","attrib","currentSheet","finalizingPlugins","serializer","collection","middleware","serialized","shouldCache","styles","stylis","registered","unitlessKeys","msGridRow","msGridRowSpan","msGridColumn","msGridColumnSpan","WebkitLineClamp","hyphenateRegex","animationRegex","isCustomProperty","isProcessableValue","processStyleName","styleName","processStyleValue","p1","p2","cursor","unitless","handleInterpolation","mergedProps","interpolation","__emotion_styles","anim","interpolated","createStringFromObject","previousCursor","cached","labelPattern","serializeStyles","stringMode","strings","raw","lastIndex","identifierName","str","hashString","useInsertionEffectAlwaysWithSyncFallback","useInsertionEffectWithLayoutFallback","EmotionCacheContext","HTMLElement","withEmotionCache","ThemeContext","registerStyles","isStringTag","className","insertStyles","testOmitPropsOnStringTag","testOmitPropsOnComponent","getDefaultShouldForwardProp","composeShouldForwardProps","isReal","shouldForwardProp","optionsShouldForwardProp","__emotion_forwardProp","Insertion","newStyled","createStyled","targetClassName","__emotion_real","baseTag","__emotion_base","label","defaultShouldForwardProp","shouldUseAs","Styled","FinalTag","as","classInterpolations","theme","registeredStyles","classNames","rawClassName","getRegisteredStyles","finalShouldForwardProp","newProps","withComponent","nextTag","nextOptions","_extends","isPlainObject","item","deepClone","deepmerge","_excluded","sortBreakpointsValues","breakpointsAsArray","sort","breakpoint1","breakpoint2","borderRadius","xs","sm","xl","defaultBreakpoints","up","handleBreakpoints","propValue","styleFromPropValue","themeBreakpoints","breakpoints","breakpoint","cssKey","createEmptyBreakpointObject","_breakpointsInput$key","breakpointsInput","removeUnusedBreakpoints","breakpointKeys","breakpointOutput","resolveBreakpointValues","breakpointValues","breakpointsKeys","computeBreakpointsBase","capitalize","getPath","path","checkVars","vars","getStyleValue","themeMapping","transform","propValueFinal","userValue","_options$cssProperty","cssProperty","themeKey","filterProps","properties","directions","aliases","marginX","marginY","paddingX","paddingY","getCssProperties","_prop$split2","direction","dir","marginKeys","paddingKeys","spacingKeys","createUnaryUnit","_getPath","themeSpacing","createUnarySpacing","transformer","transformed","resolveCssProperty","cssProperties","getStyleFromPropValue","merge","margin","padding","spacing","handlers","borderTransform","border","borderTop","borderRight","borderBottom","borderLeft","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","compose","gap","columnGap","rowGap","paletteTransform","sizingTransform","maxWidth","_props$theme","_props$theme$breakpoi","_props$theme$breakpoi2","breakpointsValues","minWidth","maxHeight","minHeight","bgcolor","backgroundColor","pt","pr","px","py","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd","mt","mr","mx","my","marginTop","marginRight","marginBottom","marginLeft","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd","displayPrint","textOverflow","visibility","whiteSpace","flexBasis","flexDirection","flexWrap","justifyContent","alignItems","alignContent","alignSelf","justifyItems","justifySelf","gridAutoFlow","gridAutoColumns","gridAutoRows","gridTemplateColumns","gridTemplateRows","gridTemplateAreas","right","bottom","boxShadow","boxSizing","fontFamily","fontSize","fontStyle","letterSpacing","textTransform","textAlign","typography","styleFunctionSx","getThemeValue","config","_props","_theme$unstable_sxCon","_ref4","sx","_ref4$theme","unstable_sxConfig","defaultSxConfig","traverse","sxInput","sxObject","emptyBreakpoints","css","styleKey","maybeFn","objects","allKeys","objectsHaveSameKeys","unstable_createStyleFunctionSx","_options$breakpoints","_options$palette","palette","paletteInput","spacingInput","_options$shape","shapeInput","other","_breakpoints$values","_breakpoints$unit","unit","_breakpoints$step","step","sortedValues","down","between","endIndex","not","keyIndex","createBreakpoints","mui","argsInput","argument","createSpacing","muiTheme","components","unstable_sx","isEmpty","propsToClassKey","variant","classKey","systemDefaultTheme","createTheme","resolveTheme","defaultTheme","themeId","createMixins","_toolbar","toolbar","black","white","A100","A200","A400","A700","light","primary","secondary","divider","background","paper","common","active","hover","hoverOpacity","selectedOpacity","disabledBackground","disabledOpacity","focusOpacity","activatedOpacity","dark","icon","addLightOrDark","intent","shade","tonalOffset","tonalOffsetLight","tonalOffsetDark","main","createPalette","_palette$mode","_palette$contrastThre","contrastThreshold","_palette$tonalOffset","blue","getDefaultPrimary","purple","getDefaultSecondary","red","getDefaultError","lightBlue","getDefaultInfo","success","green","getDefaultSuccess","warning","orange","getDefaultWarning","getContrastText","contrastText","foreground","lumA","lumB","getContrastRatio","augmentColor","_ref$mainShade","mainShade","_ref$lightShade","lightShade","_ref$darkShade","darkShade","modes","grey","caseAllCaps","defaultFontFamily","createTypography","_ref$fontFamily","_ref$fontSize","_ref$fontWeightLight","fontWeightLight","_ref$fontWeightRegula","fontWeightRegular","_ref$fontWeightMedium","fontWeightMedium","_ref$fontWeightBold","fontWeightBold","_ref$htmlFontSize","htmlFontSize","allVariants","pxToRem2","pxToRem","coef","buildVariant","casing","variants","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","caption","overline","inherit","createShadow","easing","easeInOut","easeOut","easeIn","sharp","duration","shortest","shorter","short","standard","complex","enteringScreen","leavingScreen","formatMs","getAutoHeightDuration","constant","createTransitions","inputTransitions","mergedEasing","mergedDuration","_options$duration","durationOption","_options$easing","easingOption","_options$delay","animatedProp","mobileStepper","fab","speedDial","appBar","drawer","modal","snackbar","tooltip","_options$mixins","mixinsInput","_options$transitions","transitionsInput","_options$typography","typographyInput","systemTheme","systemCreateTheme","shadows","rootShouldForwardProp","slotShouldForwardProp","styled","_input$defaultTheme","_input$rootShouldForw","_input$slotShouldForw","systemSx","__mui_systemSx","inputOptions","processor","processStyles","componentSlot","inputSkipVariantsResolver","skipVariantsResolver","inputSkipSx","skipSx","overridesResolver","shouldForwardPropOption","defaultStyledResolver","emStyled","styledEngineStyled","muiStyledResolver","styleArg","expressions","expressionsWithDefaultTheme","stylesArg","transformedStyleArg","styleOverrides","getStyleOverrides","resolvedStyleOverrides","entries","_ref2","_ref3","slotKey","slotStyle","_theme$components","_theme$components$nam","_props$ownerState","ownerState","variantsStyles","themeVariants","themeVariant","isMatch","variantsResolver","getVariantStyles","numOfCustomFnsApplied","placeholders","fill","_toConsumableArray","muiName","withConfig","THEME_ID","getThemeProps","params","contextTheme","useThemeWithoutDefault","useThemeProps","useTheme","systemUseThemeProps","setRef","useForkRef","useEventCallback","useEnhancedEffect","hadFocusVisibleRecentlyTimeout","hadKeyboardEvent","hadFocusVisibleRecently","inputTypesWhitelist","handleKeyDown","handlePointerDown","handleVisibilityChange","visibilityState","isFocusVisible","matches","readOnly","isContentEditable","focusTriggersKeyboardModality","doc","isFocusVisibleRef","onFocus","onBlur","_taggedTemplateLiteral","freeze","_setPrototypeOf","_inheritsLoose","subClass","superClass","getChildMapping","mapFn","mapper","getProp","getNextChildMapping","nextProps","prevChildMapping","onExited","nextChildMapping","getValueForKey","nextKeysPending","pendingKeys","prevKey","childMapping","nextKey","pendingNextKey","mergeChildMappings","hasPrev","hasNext","prevChild","isLeaving","in","exit","enter","TransitionGroup","_React$Component","handleExited","ReferenceError","_assertThisInitialized","contextValue","isMounting","firstRender","mounted","appear","currentChildMapping","_this$props","childFactory","TransitionGroupContext","Global","sheetRef","rehydrating","querySelector","sheetRefCurrent","nextElementSibling","keyframes","insertable","_props$pulsate","pulsate","rippleX","rippleY","rippleSize","inProp","leaving","setLeaving","rippleClassName","clsx","ripple","rippleVisible","ripplePulsate","rippleStyles","childClassName","childLeaving","childPulsate","timeoutId","_jsx","defaultGenerator","generate","configure","createClassNameGenerator","globalStateClassesMapping","completed","expanded","focused","focusVisible","required","generateUtilityClass","globalStatePrefix","globalStateClass","ClassNameGenerator","generateUtilityClasses","_t","_t2","_t3","_t4","enterKeyframe","_templateObject","exitKeyframe","_templateObject2","pulsateKeyframe","_templateObject3","TouchRippleRoot","pointerEvents","TouchRippleRipple","Ripple","_templateObject4","touchRippleClasses","TouchRipple","inProps","_props$center","center","centerProp","_props$classes","ripples","setRipples","rippleCallback","ignoringMouseDown","startTimer","startTimerCommit","startCommit","oldRipples","_options$pulsate","_options$center","_options$fakeElement","fakeElement","rect","getBoundingClientRect","_ref5","sizeX","clientWidth","sizeY","clientHeight","getButtonBaseUtilityClass","ButtonBaseRoot","_styled","WebkitTapHighlightColor","outline","userSelect","verticalAlign","MozAppearance","WebkitAppearance","textDecoration","borderStyle","buttonBaseClasses","colorAdjust","ButtonBase","_props$centerRipple","centerRipple","_props$component","_props$disabled","_props$disableRipple","disableRipple","_props$disableTouchRi","disableTouchRipple","_props$focusRipple","focusRipple","_props$LinkComponent","LinkComponent","onContextMenu","onDragLeave","onFocusVisible","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchEnd","onTouchMove","onTouchStart","_props$tabIndex","tabIndex","TouchRippleProps","touchRippleRef","buttonRef","rippleRef","handleRippleRef","_useIsFocusVisible","useIsFocusVisible","handleFocusVisible","handleBlurVisible","focusVisibleRef","setFocusVisible","_React$useState4","mountedState","setMountedState","enableTouchRipple","useRippleHandler","rippleAction","eventCallback","skipRippleAction","handleMouseDown","handleContextMenu","handleDragLeave","handleMouseUp","handleMouseLeave","handleTouchStart","handleTouchEnd","handleTouchMove","handleBlur","handleFocus","isNonNativeButton","keydownRef","handleKeyUp","ComponentProp","to","buttonProps","role","handleRef","focusVisibleClassName","composedClasses","useUtilityClasses","_jsxs","getButtonUtilityClass","commonIconStyles","ButtonRoot","colorInherit","disableElevation","fullWidth","_extends2","_theme$palette$getCon","_theme$palette","inheritContainedBackgroundColor","inheritContainedHoverBackgroundColor","primaryChannel","mainChannel","Button","inheritContainedHoverBg","buttonClasses","inheritContainedBg","ButtonStartIcon","startIcon","ButtonEndIcon","endIcon","contextProps","ButtonGroupContext","_props$color","_props$disableElevati","_props$disableFocusRi","disableFocusRipple","endIconProp","_props$fullWidth","_props$size","startIconProp","_props$variant","ownerWindow","debounce","wait","debounced","outerHeightStyle","TextareaAutosize","forwardedRef","onChange","maxRows","_props$minRows","minRows","inputRef","shadowRef","renders","getUpdatedState","computedStyle","getComputedStyle","inputShallow","placeholder","borderBottomWidth","borderTopWidth","innerHeight","scrollHeight","singleRowHeight","outerHeight","updateState","prevState","newState","syncHeight","resizeObserver","handleResize","ReactDOM","syncHeightWithFlushSync","containerWindow","ResizeObserver","observe","disconnect","rows","isHostComponent","formControlState","states","muiFormControl","useFormControl","FormControlContext","GlobalStyles","_props$defaultTheme","globalStyles","themeInput","_ref$defaultTheme","upperTheme","MuiGlobalStyles","SystemGlobalStyles","hasValue","isFilled","SSR","getInputBaseUtilityClass","rootOverridesResolver","formControl","startAdornment","adornedStart","endAdornment","adornedEnd","sizeSmall","multiline","hiddenLabel","inputOverridesResolver","inputSizeSmall","inputMultiline","inputTypeSearch","inputAdornedStart","inputAdornedEnd","inputHiddenLabel","InputBaseRoot","inputBaseClasses","InputBaseComponent","_extends3","inputPlaceholder","placeholderHidden","placeholderVisible","font","animationDuration","WebkitTextFillColor","resize","inputGlobalStyles","InputBase","_slotProps$input","ariaDescribedby","autoComplete","_props$components","_props$componentsProp","componentsProps","disableInjectingGlobalStyles","_props$inputComponent","inputComponent","_props$inputProps","inputProps","inputPropsProp","inputRefProp","_props$multiline","renderSuffix","_props$slotProps","_props$slots","_props$type","valueProp","handleInputRefWarning","handleInputRef","setFocused","fcs","onFilled","onEmpty","checkDirty","InputComponent","setAdornedStart","Boolean","Root","rootProps","Input","onAnimationStart","getInputUtilityClass","InputRoot","inputBaseRootOverridesResolver","disableUnderline","underline","bottomLineColor","onBackgroundChannel","inputUnderline","content","inputClasses","borderBottomStyle","InputInput","InputBaseInput","inputBaseInputOverridesResolver","_slots$root","_slots$input","componentsPropsProp","inputComponentsProps","RootSlot","InputSlot","getFilledInputUtilityClass","FilledInputRoot","_palette","hoverBackground","FilledInput","borderTopLeftRadius","borderTopRightRadius","hoverBg","filledInputClasses","disabledBg","FilledInputInput","WebkitBoxShadow","caretColor","getColorSchemeSelector","filledInputComponentsProps","_span","NotchedOutlineRoot","borderWidth","NotchedOutlineLegend","float","withLabel","notched","getOutlinedInputUtilityClass","OutlinedInputRoot","outlinedInputClasses","notchedOutline","OutlinedInputInput","OutlinedInput","_React$Fragment","filled","getFormLabelUtilityClasses","FormLabelRoot","colorSecondary","formLabelClasses","AsteriskComponent","asterisk","FormLabel","getInputLabelUtilityClasses","InputLabelRoot","shrink","disableAnimation","animated","transformOrigin","_props$disableAnimati","shrinkProp","muiNames","getFormControlUtilityClasses","FormControlRoot","FormControl","_props$error","visuallyFocused","_props$hiddenLabel","_props$margin","_props$required","initialAdornedStart","isMuiElement","initialFilled","setFilled","_React$useState6","focusedState","registerEffect","childContext","getFormHelperTextUtilityClasses","FormHelperTextRoot","contained","formHelperTextClasses","getListUtilityClass","ListRoot","disablePadding","dense","subheader","listStyle","_props$dense","_props$disablePadding","ListContext","getScrollbarSize","documentWidth","innerWidth","nextItem","list","disableListWrap","previousItem","previousElementSibling","textCriteriaMatches","nextFocus","textCriteria","innerText","repeating","moveFocus","currentFocus","disabledItemsFocusable","traversalFunction","wrappedOnce","nextFocusDisabled","hasAttribute","actions","_props$autoFocus","_props$autoFocusItem","autoFocusItem","_props$disabledItemsF","_props$disableListWra","listRef","textCriteriaRef","previousKeyMatched","lastTime","adjustStyleForScrollbar","containerElement","noExplicitWidth","scrollbarSize","activeItemIndex","muiSkipListHighlight","items","newChildProps","List","criteria","lowerKey","currTime","keepFocusOnCurrent","omitEventHandlers","mergeSlotProps","getSlotProps","additionalProps","externalSlotProps","externalForwardedProps","joinedClasses","mergedStyle","internalRef","eventHandlers","excludeKeys","extractEventHandlers","componentsPropsWithoutEventHandlers","otherPropsWithoutEventHandlers","internalSlotProps","resolveComponentProps","componentProps","useSlotProps","_parameters$additiona","rest","resolvedComponentsProps","_mergeSlotProps","otherProps","appendOwnerState","forceReflow","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","initialStatus","appearStatus","unmountOnExit","mountOnEnter","status","nextCallback","updateStatus","prevProps","nextStatus","cancelNextCallback","getTimeouts","mounting","nodeRef","performEnter","performExit","_this2","appearing","maybeNode","maybeAppearing","timeouts","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","_this3","onExit","onExiting","cancel","nextState","setNextCallback","_this4","handler","doesNotHaveTimeoutOrListener","addEndListener","maybeNextCallback","childProps","noop","useThemeSystem","reflow","getTransitionProps","_style$transitionDura","_style$transitionTimi","_props$style","transitionDuration","transitionTimingFunction","transitionDelay","getScale","entering","entered","isWebKit154","userAgent","Grow","_props$appear","_props$timeout","_props$TransitionComp","TransitionComponent","timer","autoTimeout","normalizedTransitionCallback","maybeIsAppearing","handleEntering","handleEnter","isAppearing","_getTransitionProps","handleEntered","handleExiting","handleExit","_getTransitionProps2","muiSupportAuto","createChainedFunction","funcs","_len2","_key2","_props$disablePortal","disablePortal","mountNode","setMountNode","getContainer","_classCallCheck","Constructor","_defineProperties","_createClass","protoProps","staticProps","ariaHidden","show","getPaddingRight","ariaHiddenSiblings","mountElement","currentElement","elementsToExclude","isNotExcludedElement","isNotForbiddenElement","isForbiddenTagName","isInputHidden","isAriaHiddenForbiddenOnElement","findIndexOf","idx","handleContainer","restoreStyle","disableScrollLock","isOverflowing","scrollContainer","DocumentFragment","parentElement","overflowY","overflowX","removeProperty","ModalManager","containers","modals","modalIndex","modalRef","hiddenSiblings","getHiddenSiblings","mount","containerIndex","restore","ariaHiddenState","nextTop","candidatesSelector","defaultGetTabbable","regularTabNodes","orderedTabNodes","nodeTabIndex","tabindexAttr","getTabIndex","getRadio","roving","isNonTabbableRadio","isNodeMatchingSelectorFocusable","documentOrder","defaultIsEnabled","_props$disableAutoFoc","disableAutoFocus","_props$disableEnforce","disableEnforceFocus","_props$disableRestore","disableRestoreFocus","_props$getTabbable","getTabbable","_props$isEnabled","isEnabled","open","ignoreNextEnforceFocus","sentinelStart","sentinelEnd","nodeToRestore","reactFocusEventTarget","activated","rootRef","lastKeydown","contain","rootElement","hasFocus","tabbable","_lastKeydown$current","_lastKeydown$current2","isShiftTab","focusNext","focusPrevious","loopFocus","interval","setInterval","clearInterval","handleFocusSentinel","childrenPropsHandler","getModalUtilityClass","defaultContextValue","disableDefaultClasses","ClassNameConfiguratorContext","useClassNamesOverride","defaultManager","Modal","_props$ariaHidden","_props$closeAfterTran","closeAfterTransition","_props$disableEscapeK","disableEscapeKeyDown","_props$disableScrollL","_props$hideBackdrop","hideBackdrop","_props$keepMounted","keepMounted","_props$manager","manager","managerProp","onBackdropClick","onClose","onTransitionEnter","onTransitionExited","exited","setExited","mountNodeRef","hasTransition","getHasTransition","ariaHiddenProp","getModal","handleMounted","handleOpen","resolvedContainer","isTopModal","handlePortalRef","handleClose","remove","backdrop","BackdropComponent","backdropProps","FocusTrap","Fade","defaultTimeout","transitionProps","webkitTransition","getBackdropUtilityClass","BackdropRoot","invisible","_slotProps$root","_props$invisible","rootSlotProps","ModalRoot","hidden","ModalBackdrop","Backdrop","_slots$backdrop","_slotProps$backdrop","_props$BackdropCompon","BackdropProps","commonProps","BackdropSlot","backdropSlotProps","ModalUnstyled","elevation","getPaperUtilityClass","PaperRoot","square","rounded","_theme$vars$overlays","backgroundImage","getOverlayAlpha","overlays","_props$elevation","_props$square","getPopoverUtilityClass","_excluded2","_excluded3","getOffsetTop","vertical","getOffsetLeft","horizontal","getTransformOriginValue","resolveAnchorEl","anchorEl","PopoverRoot","PopoverPaper","PaperBase","Popover","_slotProps$paper","_slots$paper","_props$anchorOrigin","anchorOrigin","anchorPosition","_props$anchorReferenc","anchorReference","containerProp","_props$marginThreshol","marginThreshold","_props$PaperProps","PaperProps","PaperPropsProp","_props$transformOrigi","_props$transitionDura","transitionDurationProp","_props$TransitionProp","TransitionProps","externalPaperSlotProps","paperRef","handlePaperRef","getAnchorOffset","resolvedAnchorEl","anchorRect","getTransformOrigin","elemRect","getPositioningStyle","offsetWidth","offsetHeight","elemTransformOrigin","heightThreshold","widthThreshold","isPositioned","setIsPositioned","setPositioningStyles","positioning","updatePosition","PaperSlot","paperProps","_useSlotProps","rootSlotPropsProp","getMenuUtilityClass","RTL_ORIGIN","LTR_ORIGIN","MenuRoot","MenuPaper","WebkitOverflowScrolling","MenuMenuList","MenuList","disableAutoFocusItem","_props$MenuListProps","MenuListProps","PopoverClasses","isRtl","menuListActionsRef","getNativeSelectUtilityClasses","nativeSelectSelectStyles","nativeSelectClasses","NativeSelectSelect","select","nativeSelectIconStyles","NativeSelectIcon","iconOpen","IconComponent","useControlled","getSelectUtilityClasses","SelectSelect","selectClasses","SelectIcon","SelectNativeInput","nativeInput","areEqualValues","SelectInput","ariaLabel","autoWidth","defaultOpen","displayEmpty","labelId","_props$MenuProps","MenuProps","onOpen","openProp","renderValue","_props$SelectDisplayP","SelectDisplayProps","tabIndexProp","_useControlled2","setValueState","_useControlled4","openState","setOpenState","displayRef","displayNode","setDisplayNode","isOpenControlled","menuMinWidthState","setMenuMinWidthState","handleDisplayRef","anchorElement","getElementById","isCollapsed","displaySingle","update","childrenArray","handleItemClick","itemIndex","clonedEvent","displayMultiple","computeDisplay","menuMinWidth","buttonId","find","childItem","getSvgIconUtilityClass","SvgIconRoot","_theme$transitions","_theme$transitions$cr","_theme$transitions2","_theme$transitions2$d","_theme$typography","_theme$typography$pxT","_theme$typography2","_theme$typography2$px","_theme$typography3","_theme$typography3$px","_palette$ownerState$c","_palette$ownerState$c2","_palette2","_palette2$action","_palette3","_palette3$action","small","medium","large","SvgIcon","_props$fontSize","htmlColor","_props$inheritViewBox","inheritViewBox","titleAccess","_props$viewBox","viewBox","instanceFontSize","more","focusable","createSvgIcon","styledRootConfig","StyledInput","StyledOutlinedInput","StyledFilledInput","Select","_props$autoWidth","classesProp","_props$defaultOpen","_props$displayEmpty","_props$IconComponent","ArrowDropDownIcon","_props$multiple","_props$native","native","variantProp","NativeSelectInput","outlined","inputComponentRef","getTextFieldUtilityClass","variantComponent","TextFieldRoot","TextField","FormHelperTextProps","helperText","InputLabelProps","InputProps","_props$select","SelectProps","InputMore","helperTextId","inputLabelId","InputElement","InputLabel","htmlFor","FormHelperText","stripDiacritics","normalize","findIndex","comp","defaultFilterOptions","_config$ignoreAccents","ignoreAccents","_config$ignoreCase","ignoreCase","limit","_config$matchFrom","matchFrom","_config$trim","inputValue","getOptionLabel","filteredOptions","option","candidate","createFilterOptions","defaultIsActiveElementInListbox","listboxRef","_listboxRef$current$p","useAutocomplete","_props$unstable_isAct","unstable_isActiveElementInListbox","_props$unstable_class","unstable_classNamePrefix","_props$autoComplete","_props$autoHighlight","autoHighlight","_props$autoSelect","autoSelect","_props$blurOnSelect","blurOnSelect","_props$clearOnBlur","clearOnBlur","freeSolo","_props$clearOnEscape","clearOnEscape","_props$componentName","_props$defaultValue","_props$disableClearab","disableClearable","_props$disableCloseOn","disableCloseOnSelect","disabledProp","_props$filterOptions","filterOptions","_props$filterSelected","filterSelectedOptions","_props$freeSolo","getOptionDisabled","_props$getOptionLabel","getOptionLabelProp","_option$label","groupBy","_props$handleHomeEndK","handleHomeEndKeys","idProp","_props$includeInputIn","includeInputInList","inputValueProp","_props$isOptionEqualT","isOptionEqualToValue","onHighlightChange","onInputChange","_props$openOnFocus","openOnFocus","_props$readOnly","_props$selectOnFocus","selectOnFocus","optionLabel","ignoreFocus","firstFocus","setAnchorEl","focusedTag","setFocusedTag","defaultHighlighted","highlightedIndexRef","setInputValueState","resetInputValue","newInputValue","_useControlled6","_React$useState8","inputPristine","setInputPristine","inputValueIsSelectedValue","popupOpen","value2","previousProps","usePreviousProps","valueChange","listboxAvailable","focusTag","tagToFocus","setHighlightedIndex","_ref2$reason","reason","classList","listboxNode","scrollBottom","elementBottom","offsetTop","changeHighlightedIndex","_ref3$direction","_ref3$reason","nextIndex","validOptionIndex","maxIndex","newIndex","getNextIndex","setSelectionRange","syncHighlightedIndex","value1","previousHighlightedOption","checkHighlightedOptionExists","valueItem","currentOption","optionItem","handleListboxRef","handleValue","details","isTouch","selectNewValue","origin","blur","handleFocusTag","validTagIndex","handleClear","defaultMuiPrevented","handleInputChange","handleOptionMouseMove","handleOptionTouchStart","handleOptionClick","handleTagDelete","handlePopupIndicator","handleClick","handleInputMouseDown","dirty","groupedOptions","group","getRootProps","getInputLabelProps","getInputProps","autoCapitalize","spellCheck","getClearProps","getPopupIndicatorProps","getTagProps","onDelete","getListboxProps","getOptionProps","onMouseMove","getWindow","isHTMLElement","isShadowRoot","ShadowRoot","getUAString","uaData","userAgentData","brands","brand","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","visualViewport","addVisualOffsets","offsetLeft","getWindowScroll","win","pageXOffset","pageYOffset","getNodeName","getDocumentElement","getWindowScrollBarX","isScrollParent","_getComputedStyle","getCompositeRect","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","scroll","offsets","getNodeScroll","clientLeft","clientTop","getLayoutRect","getParentNode","assignedSlot","host","getScrollParent","listScrollParents","_element$ownerDocumen","scrollParent","isBody","updatedList","isTableElement","getTrueOffsetParent","getOffsetParent","isFirefox","currentNode","perspective","willChange","getContainingBlock","auto","basePlacements","clippingParents","viewport","popper","variationPlacements","placement","placements","modifierPhases","modifiers","visited","modifier","requires","requiresIfExists","dep","depModifier","DEFAULT_OPTIONS","strategy","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","orderedModifiers","modifiersData","elements","attributes","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","scrollParents","contextElement","phase","orderModifiers","merged","existing","mergeByName","enabled","_ref$options","effect","cleanupFn","noopFn","_state$elements","rects","_state$orderedModifie","_state$orderedModifie2","_options","onFirstUpdate","getBasePlacement","getVariation","getMainAxisFromPlacement","computeOffsets","basePlacement","variation","commonX","commonY","mainAxis","unsetSides","mapToStyles","_Object$assign2","popperRect","gpuAcceleration","adaptive","roundOffsets","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","heightProp","widthProp","_Object$assign","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","initialStyles","arrow","attribute","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","popperOffsets","getOppositePlacement","matched","getOppositeVariationPlacement","rootNode","getRootNode","isSameNode","rectToClientRect","getClientRectFromMixedType","clippingParent","html","layoutViewport","getViewportRect","getInnerBoundingClientRect","winScroll","scrollWidth","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","mergePaddingObject","paddingObject","expandToHashMap","hashMap","detectOverflow","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","axis","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","_options$allowedAutoP","allPlacements","allowedPlacements","overflows","computeAutoPlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","check","_loop","fittingPlacement","within","mathMax","mathMin","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","maxLen","arrowElement","arrowRect","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","arrowOffsetParent","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","_state$modifiersData$","toPaddingObject","minProp","maxProp","endDiff","startDiff","clientSize","centerToReference","axisProp","centerOffset","_options$element","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","createPopper","_options$scroll","_options$resize","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","applyStyles","flip","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","getPopperUtilityClass","defaultPopperOptions","PopperTooltip","initialPlacement","popperOptions","popperRefProp","popperRef","tooltipRef","ownRef","handlePopperRef","handlePopperRefRef","rtlPlacement","flipPlacement","setPlacement","resolvedAnchorElement","setResolvedAnchorElement","popperModifiers","Popper","_props$direction","_props$placement","_props$popperOptions","_props$transition","_props$slotProps2","_props$slots2","PopperRoot","RootComponent","getListSubheaderUtilityClass","ListSubheaderRoot","disableGutters","gutters","inset","disableSticky","sticky","ListSubheader","_props$disableGutters","_props$disableSticky","_props$inset","getIconButtonUtilityClass","IconButtonRoot","edge","activeChannel","iconButtonClasses","IconButton","_props$edge","getChipUtilityClass","ChipRoot","iconColor","clickable","chipClasses","avatar","deleteIcon","deletable","_ref11","textColor","Chip","defaultAvatarColor","defaultIconColor","contrastTextChannel","selectedChannel","_ref14","_ref15","_ref17","_ref18","_ref19","defaultBorder","ChipLabel","_ref20","isDeleteKeyboardEvent","keyboardEvent","avatarProp","clickableProp","deleteIconProp","iconProp","_props$skipFocusWhenD","skipFocusWhenDisabled","chipRef","handleDeleteIconClick","moreProps","CancelIcon","getAutocompleteUtilityClass","_ClearIcon","_ArrowDropDownIcon","AutocompleteRoot","hasClearIcon","hasPopupIcon","inputFocused","autocompleteClasses","inputRoot","_ref6","_$concat","_$concat2","_$concat3","AutocompleteEndAdornment","AutocompleteClearIndicator","clearIndicator","AutocompletePopupIndicator","_ref7","popupIndicator","popupIndicatorOpen","_ref8","AutocompletePopper","popperDisablePortal","_ref10","AutocompletePaper","Paper","AutocompleteLoading","loading","_ref12","AutocompleteNoOptions","noOptions","_ref13","AutocompleteListbox","listbox","_ariaSelectedTru","_$concat4","AutocompleteGroupLabel","groupLabel","_ref16","AutocompleteGroupUl","groupUl","_slotProps$clearIndic","_slotProps$popper","_slotProps$popupIndic","ChipProps","_props$clearIcon","clearIcon","ClearIcon","_props$clearText","clearText","_props$closeText","closeText","_props$forcePopupIcon","forcePopupIcon","_props$getLimitTagsTe","getLimitTagsText","_props$limitTags","limitTags","_props$ListboxCompone","ListboxComponent","ListboxProps","_props$loading","_props$loadingText","loadingText","_props$noOptionsText","noOptionsText","_props$openText","openText","_props$PaperComponent","PaperComponent","_props$PopperComponen","PopperComponent","_props$popupIcon","popupIcon","renderGroupProp","renderGroup","renderInput","renderOptionProp","renderOption","renderTags","_useAutocomplete","externalListboxRef","_getListboxProps","otherListboxProps","combinedListboxRef","getCustomizedTagProps","props2","renderListOption","optionProps","clearIndicatorSlotProps","paperSlotProps","popperSlotProps","popupIndicatorSlotProps","title","option2","index2","getCircularProgressUtilityClass","SIZE","circularRotateKeyframe","circularDashKeyframe","CircularProgressRoot","CircularProgressSVG","svg","CircularProgressCircle","circle","disableShrink","circleDisableShrink","stroke","CircularProgress","_props$disableShrink","_props$thickness","thickness","_props$value","circleStyle","rootStyle","circumference","PI","cx","cy","extendSxProp","finalSx","inSx","_splitProps","_props$theme$unstable","systemProps","splitProps","getTypographyUtilityClass","TypographyRoot","align","noWrap","gutterBottom","paragraph","defaultVariantMapping","colorTransformations","textPrimary","textSecondary","Typography","themeProps","transformDeprecatedColors","_props$align","_props$gutterBottom","_props$noWrap","_props$paragraph","_props$variantMapping","variantMapping","getFormControlLabelUtilityClasses","FormControlLabelRoot","formControlLabelClasses","labelPlacement","_slotProps$typography","control","disableTypography","labelProp","_props$labelPlacement","requiredProp","controlProps","typographySlotProps","getSwitchBaseUtilityClass","SwitchBaseRoot","SwitchBaseInput","checkedProp","checkedIcon","setCheckedState","hasLabelFor","newChecked","RadioButtonIconRoot","RadioButtonIconBackground","RadioButtonUncheckedIcon","RadioButtonIconDot","RadioButtonCheckedIcon","_props$checked","dot","getRadioUtilityClass","RadioRoot","SwitchBase","radioClasses","defaultCheckedIcon","RadioButtonIcon","defaultIcon","Radio","_defaultIcon$props$fo","_defaultCheckedIcon$p","_props$checkedIcon","_props$icon","nameProp","onChangeProp","radioGroup","RadioGroupContext","getFormGroupUtilityClass","FormGroupRoot","row","_props$row","FormGroup","getCheckboxUtilityClass","CheckboxRoot","indeterminate","checkboxClasses","CheckBoxIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","Checkbox","_icon$props$fontSize","_indeterminateIcon$pr","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","getGridUtilityClass","GRID_SIZES","gridClasses","getOffset","extractZeroValueBreakpointKeys","nonZeroKey","sortedBreakpointKeysByValue","GridRoot","zeroMinWidth","spacingStyles","resolveSpacingStyles","breakpointsStyles","rowSpacing","zeroValueBreakpointKeys","rowSpacingValues","_zeroValueBreakpointK","columnSpacing","columnSpacingValues","_zeroValueBreakpointK2","columnsBreakpointValues","columnValue","spacingClasses","resolveSpacingClasses","breakpointsClasses","Grid","columnsProp","columnSpacingProp","_props$container","_props$item","rowSpacingProp","_props$spacing","_props$wrap","_props$zeroMinWidth","columnsContext","GridContext","otherFiltered","useMediaQueryOld","query","defaultMatches","matchMedia","ssrMatchMedia","noSsr","setMatch","queryList","updateMatch","addListener","removeListener","maybeReactUseSyncExternalStore","useMediaQueryNew","getDefaultSnapshot","getServerSnapshot","_React$useMemo2","mediaQueryList","notify","subscribe","areViewsEqual","views","expectedViews","expectedView","findClosestEnabledDate","disableFuture","disablePast","maxDate","minDate","isDateDisabled","utils","today","startOfDay","forward","backward","addDays","applyDefaultDate","getMonthsInYear","startOfYear","prevMonth","addMonths","mergeDateAndTime","dateParam","timeParam","mergedDate","setHours","setMinutes","setSeconds","getTodayDate","valueType","dateViews","isDatePickerView","resolveDateFormat","isInToolbar","dayOfMonth","getCurrentLocaleCode","normalDateWithWeekday","normalDate","keyboardDate","timeViews","getSecondsInDay","SECTION_TYPE_GRANULARITY","roundDate","granularity","startOfMonth","roundedDate","setMilliseconds","getDefaultReferenceDate","_props$disableIgnorin","referenceDate","isAfterDay","isBeforeDay","disableIgnoringDatePartForTimeValidation","dateLeft","dateRight","createIsAfterIgnoreDatePart","minTime","maxTime","getDateSectionConfigFromFormatToken","formatToken","formatTokenMap","contentType","maxLength","sectionType","getDaysInWeekStr","startDate","startOfWeek","endDate","endOfWeek","weekDay","formatByString","getLetterEditingOptions","endOfDay","cleanLeadingZeros","valueStr","cleanValueStr","cleanDigitSectionValue","sectionBoundaries","section","setDate","longestMonth","hasLeadingZerosInInput","getSectionVisibleValue","hasLeadingZeros","hasLeadingZerosInFormat","cleanString","dirtyString","addPositionPropertiesToSections","sections","isRTL","positionInInput","newSections","renderedValue","sectionStr","startSeparator","endSeparator","sectionLength","sectionLengthInInput","cleanedValue","startInInput","endInInput","getSectionPlaceholder","localeText","sectionConfig","currentTokenValue","fieldYearPlaceholder","digitAmount","fieldMonthPlaceholder","fieldDayPlaceholder","fieldWeekDayPlaceholder","fieldHoursPlaceholder","fieldMinutesPlaceholder","fieldSecondsPlaceholder","fieldMeridiemPlaceholder","changeSectionValueFormat","currentFormat","newFormat","isFourDigitYearFormat","doesSectionFormatHaveLeadingZeros","setYear","splitFormatIntoSections","formatDensity","shouldRespectLeadingZeros","commitToken","isValidDate","sectionValue","modified","formatExpansionOverflow","prevFormat","nextFormat","expandFormat","expandedFormat","escapedParts","_utils$escapedCharact","escapedCharacters","startChar","endChar","regExp","getEscapedPartsFromFormat","isTokenStartRegExp","escapedPartOfCurrentChar","escapeIndex","isEscapedChar","potentialToken","cleanSeparator","separator","cleanedSeparator","getDateFromDateSections","shouldSkipWeekDays","sectionFormats","sectionValues","formatWithoutSeparator","dateWithoutSeparatorStr","reliableSectionModificationOrder","mergeDateIntoReferenceDate","dateToTransferFrom","shouldLimitToEditedSections","dateToTransferTo","getYear","setMonth","formattedDaysInWeek","dayInWeekStrOfActiveDate","dayInWeekOfActiveDate","isAM","mergedDateHours","addHours","transferDateSectionValue","singleItemValueManager","emptyValue","getTodayValue","getInitialReferenceValue","cleanValue","areValuesEqual","isEqual","isSameError","hasError","defaultErrorState","getTimezone","singleItemFieldValueManager","updateReferenceValue","prevReferenceValue","getSectionsFromValue","prevSections","getSectionsFromDate","getValueStrFromSections","dateStr","dateValue","getActiveDateManager","referenceValue","getSections","getNewValuesFromNewActiveDate","newActiveDate","parseValueStr","parseDate","MuiPickersAdapterContext","LocalizationProvider","_React$useContext","inLocaleText","otherInProps","parentUtils","parentLocaleText","DateAdapter","dateAdapter","dateFormats","dateLibInstance","adapterLocale","themeLocaleText","adapter","isMUIAdapter","defaultDates","enUSPickers","previousMonth","nextMonth","openPreviousView","openNextView","calendarViewSwitchingButtonAriaLabel","cancelButtonLabel","clearButtonLabel","okButtonLabel","todayButtonLabel","datePickerToolbarTitle","dateTimePickerToolbarTitle","timePickerToolbarTitle","dateRangePickerToolbarTitle","clockLabelText","hoursClockNumberText","minutesClockNumberText","secondsClockNumberText","selectViewText","calendarWeekNumberHeaderLabel","calendarWeekNumberHeaderText","calendarWeekNumberAriaLabelText","weekNumber","calendarWeekNumberText","openDatePickerDialogue","openTimePickerDialogue","timeTableLabel","dateTableLabel","DEFAULT_LOCALE","useLocalizationContext","localization","useUtils","useDefaultDates","useLocaleText","useNow","getPickersToolbarUtilityClass","PickersToolbarRoot","isLandscape","PickersToolbarContent","PickersToolbar","_props$landscapeDirec","landscapeDirection","toolbarTitle","titleId","penIconButton","getDatePickerToolbarUtilityClass","DatePickerToolbarRoot","DatePickerToolbarTitle","DatePickerToolbar","toolbarFormat","_props$toolbarPlaceho","toolbarPlaceholder","dateText","formatFromViews","uncapitalizeObjectKeys","capitalizedObject","useDatePickerDefaultizedProps","_themeProps$slots","_themeProps$disableFu","_themeProps$disablePa","_themeProps$slotProps","_themeProps$localeTex","openToWithDefault","openTo","defaultOpenTo","defaultViews","viewsWithDefault","applyDefaultViewProps","validateDate","shouldDisableDate","shouldDisableMonth","shouldDisableYear","getInputAdornmentUtilityClass","InputAdornmentRoot","disablePointerEvents","inputAdornmentClasses","InputAdornment","_props$disablePointer","_props$disableTypogra","getPickersPopperUtilityClass","getActiveElement","activeEl","shadowRoot","PickersPopperRoot","MuiPopper","PickersPopperPaper","MuiPaper","PickersPopper","_slots$desktopTransit","_slots$desktopTrapFoc","_slots$desktopPaper","_slots$popper","_props$containerRef","containerRef","shouldRestoreFocus","onDismiss","lastFocusedElementRef","_useClickAwayListener2","onClickAway","movedRef","syntheticEventRef","activatedRef","armClickAwayListener","handleClickAway","insideReactTree","clickedRootScrollbar","composedPath","handleSynthetic","useClickAwayListener","clickAwayRef","onPaperClick","onPaperTouchStart","desktopTransition","TrapFocus","desktopTrapFocus","MuiTrapFocus","desktopPaper","popperProps","popperPlacement","_paperProps$onClick","_paperProps$onTouchSt","useValidation","validate","previousValidationErrorRef","validationError","usePickerValue","valueManager","wrapperVariant","validator","onAccept","inValue","inDefaultValue","_props$closeOnSelect","closeOnSelect","selectedSectionsProp","selectedSections","onSelectedSectionsChange","setSelectedSections","_useOpenState","isControllingOpenProp","setIsOpenState","isOpen","setIsOpen","newIsOpen","useOpenState","draft","lastPublishedValue","lastCommittedValue","lastControlledValue","hasBeenModifiedSinceMount","dateState","setDateState","updateDate","updaterParams","hasChanged","comparison","shouldPublish","isCurrentValueTheDefaultValue","pickerAction","selectionState","shouldPublishValue","shouldCommit","shouldCommitValue","shouldClose","shouldClosePicker","isUpdateComingFromPicker","handleAccept","handleDismiss","handleCancel","handleSetToday","handleChange","handleChangeField","handleFieldSelectedSectionsChange","newSelectedSections","onClear","onCancel","onSetToday","fieldResponse","viewValue","fieldProps","viewProps","layoutProps","testedValue","useViews","_views","_views2","onViewChange","inView","inFocusedView","focusedView","onFocusedViewChange","previousOpenTo","previousViews","setView","setFocusedView","previousView","viewIndex","nextView","handleFocusedViewChange","viewToFocus","prevFocusedView","handleChangeView","newView","goToNextView","setValueAndGoToNextView","currentViewSelectionState","selectedView","isSelectionFinishedOnCurrentView","hasMoreViews","setValueAndGoToView","usePickerViews","propsFromPickerValue","additionalViewProps","autoFocusView","disableOpenPicker","viewRenderers","propsToForwardToView","_useViews","_React$useMemo","viewForReduce","viewMode","viewModeLookup","hasUIView","timeViewsCount","isTimeView","currentViewMode","popperView","setPopperView","renderCurrentView","renderer","showViewSwitcher","getOrientation","screen","orientation","angle","useIsLandscape","customOrientation","itemOrItems","setOrientation","eventHandler","buildWarning","gravity","alreadyWarned","cleanMessage","warn","usePicker","pickerValueResponse","pickerViewsResponse","pickerLayoutResponse","propsFromPickerViews","usePickerLayoutProps","getPickersLayoutUtilityClass","pickersLayoutClasses","getDialogActionsUtilityClass","DialogActionsRoot","disableSpacing","_props$disableSpacing","PickersActionBar","actionType","DialogActions","getListItemUtilityClass","getListItemSecondaryActionClassesUtilityClass","ListItemSecondaryActionRoot","ListItemSecondaryAction","ListItemRoot","alignItemsFlexStart","hasSecondaryAction","secondaryAction","listItemButtonClasses","listItemClasses","backgroundClip","ListItemContainer","_props$alignItems","_props$button","childrenProp","componentProp","_props$ContainerCompo","ContainerComponent","_props$ContainerProps","ContainerProps","ContainerClassName","_props$divider","_props$selected","listItemRef","VIEW_HEIGHT","PickersShortcuts","resolvedItems","ListItem","_slots$actionBar","_slots$shortcuts","innerSlots","innerSlotProps","contentWrapper","actionBar","tabs","landscape","shortcuts","ActionBar","actionBarProps","Toolbar","toolbarProps","toolbarHasView","Tabs","Shortcuts","shortcutsProps","PickersLayoutRoot","PickersLayoutContentWrapper","PickersLayout","_usePickerLayout","usePickerLayout","ArrowLeftIcon","ArrowRightIcon","CalendarIcon","useFieldState","fieldValueManager","internalProps","_params$internalProps","referenceDateProp","_params$internalProps2","_params$internalProps3","firstDefaultValue","valueFromTheOutside","sectionsValueBoundaries","endOfYear","_getMonthsInYear$redu","getDaysInMonth","maxDaysInMonth","minimum","maximum","currentDate","daysInWeek","lastHourInDay","getSectionsBoundaries","fallbackSections","stateWithoutReferenceDate","tempValueStrAndroid","_SECTION_TYPE_GRANULA","getSectionTypeGranularity","innerSetSelectedSections","selectedSectionQuery","selectedSectionIndexes","startIndex","shouldSelectBoundarySelectors","selectedSectionIndex","publishValue","setSectionValue","sectionIndex","newSectionValue","clearValue","clearActiveSection","activeSection","activeDateManager","isTheOnlyNonEmptySection","newValues","updateSectionValue","shouldGoToNextSection","newActiveDateSections","shouldRegenSections","clampedSections","sectionsForStartOfMonth","dayBoundaries","clampDaySectionIfPossible","updateValueFromValueStr","newReferenceValue","setTempAndroidValueStr","isQueryResponseWithoutValue","response","saveQuery","useFieldCharacterEditing","setQuery","resetQuery","_sections$query$secti","applyQuery","getFirstSectionValueMatchingWithQuery","isValidQueryValue","keyPressed","cleanKeyPressed","concatenatedQueryValue","queryResponse","applyCharacterEditing","getNewSectionValue","queryValue","queryValueNumber","applyNumericEditing","findMatchingOptions","matchingValues","startsWith","testQueryOnFormatAndFallbackFormat","fallbackFormat","formatFallbackValue","getOptions","fallbackOptions","fallbackValue","weekday","applyLetterEditing","resetCharacterQuery","useField","_useFieldState","unstableFieldRef","_params$forwardedProp","forwardedProps","onPaste","otherForwardedProps","_useFieldCharacterEdi","focusTimeoutRef","sectionOrder","neighbors","leftIndex","rightIndex","rtl2ltr","ltr2rtl","groupedSectionsStart","groupedSectionsEnd","RTLIndex","_section$endSeparator","rtlIndex","getSectionOrder","syncSelectionFromDOM","_selectionStart","nextSectionIndex","browserStartIndex","handleInputClick","handleInputMouseUp","handleInputFocus","handleInputBlur","handleInputPaste","pastedValue","getData","lettersOnly","digitsOnly","digitsAndLetterOnly","prevValueStr","startOfDiffIndex","endOfDiffIndex","activeSectionEndRelativeToNewValue","handleInputKeyDown","activeDate","delta","getDeltaFromKeyCode","isStart","isEnd","shouldSetAbsolute","getCleanValue","newSectionValueNumber","adjustDigitSection","currentOptionIndex","adjustLetterSection","adjustSectionValue","firstSelectedSection","lastSelectedSection","currentScrollTop","inputError","_state$tempValueStrAn","inputMode","shouldShowPlaceholder","getActiveSectionIndex","_selectionStart2","_selectionEnd","browserEndIndex","activeSectionIndex","DATE_VALIDATION_PROP_NAMES","TIME_VALIDATION_PROP_NAMES","DATE_TIME_VALIDATION_PROP_NAMES","VALIDATION_PROP_NAMES","extractValidationProps","extractedProps","SHARED_FIELD_INTERNAL_PROP_NAMES","useDateField","_splitFieldInternalAn","extractProp","splitFieldInternalAndForwardedProps","_props$disablePast","_props$disableFuture","_props$format","useDefaultizedDateField","DateField","_slots$textField","_slotProps$textField","textField","MuiTextField","externalInputRef","textFieldProps","_useDateField","useIsDateDisabled","useCalendarState","defaultCalendarMonth","_ref2$disableSwitchTo","disableSwitchToMonthOnDayFocus","onMonthChange","reduceAnimations","reducerFn","slideDirection","currentMonth","newMonth","isMonthSwitchingAnimating","focusedDay","isSameDay","needMonthSwitch","isSameMonth","withoutMonthSwitchingAnimation","createCalendarStateReducer","_React$useReducer2","calendarState","handleChangeMonth","changeMonth","newDate","newDateRequested","onMonthSwitchingAnimationEnd","changeFocusedDay","newFocusedDate","getPickersFadeTransitionGroupUtilityClass","PickersFadeTransitionGroupRoot","PickersFadeTransitionGroup","transKey","getPickersDayUtilityClass","pickersDayClasses","disableMargin","outsideCurrentMonth","showDaysOutsideCurrentMonth","disableHighlightToday","dayWithMargin","dayOutsideMonth","hiddenDaySpacingFiller","PickersDayRoot","PickersDayFiller","PickersDayRaw","_props$disableHighlig","_props$disableMargin","isAnimating","onDaySelect","_props$onFocus","_props$onBlur","_props$onKeyDown","_props$onMouseDown","_props$onMouseEnter","onMouseEnter","_props$showDaysOutsid","_props$today","isToday","PickersDay","replaceClassName","origClass","classToRemove","removeClass","baseVal","CSSTransition","appliedClasses","_this$resolveArgument","resolveArguments","removeClasses","addClass","_this$resolveArgument2","_this$resolveArgument3","getClassNames","isStringClassNames","baseClassName","activeClassName","doneClassName","hasClass","_addClass","_this$appliedClasses$","getPickersSlideTransitionUtilityClass","pickersSlideTransitionClasses","PickersSlideTransitionRoot","slideEnterActive","slideExit","slideTransition","getDayCalendarUtilityClass","defaultDayOfWeekFormatter","PickersCalendarDayHeader","header","PickersCalendarWeekDayLabel","weekDayLabel","PickersCalendarWeekNumberLabel","weekNumberLabel","PickersCalendarWeekNumber","PickersCalendarLoadingContainer","loadingContainer","PickersCalendarSlideTransition","enterActive","exitActive","transitionClasses","PickersCalendarWeekContainer","monthContainer","PickersCalendarWeek","weekContainer","WrappedDay","_slots$day","_slotProps$day","parentProps","focusableDay","selectedDays","currentMonthNumber","isViewFocused","isFocusableDay","isSelected","selectedDay","Day","dayProps","toJsDate","isFirstVisibleCell","isLastVisibleCell","endOfMonth","DayCalendar","onFocusedDayChange","onSelectedDaysChange","_props$renderLoading","renderLoading","_props$dayOfWeekForma","dayOfWeekFormatter","gridLabelId","displayWeekNumber","fixedWeekNumber","internalHasFocus","setInternalHasFocus","internalFocusedDay","setInternalFocusedDay","handleDaySelect","focusDay","newFocusedDayDefault","nextAvailableMonth","closestDayToFocus","validSelectedDays","transitionKey","slideNodeRef","startOfCurrentWeek","weeksToDisplay","toDisplay","getWeekArray","additionalWeeks","hasCommonWeek","getWeekdays","_dayOfWeekFormatter","getWeekNumber","dayIndex","getPickersMonthUtilityClass","pickersMonthClasses","PickersMonthRoot","monthsPerRow","PickersMonthButton","monthButton","PickersMonth","ariaCurrent","_ref$current","getMonthCalendarUtilityClass","MonthCalendarRoot","MonthCalendar","useMonthCalendarDefaultizedProps","onMonthFocus","_props$monthsPerRow","todayMonth","selectedDateOrStartOfMonth","selectedMonth","focusedMonth","setFocusedMonth","changeHasFocus","newHasFocus","isMonthDisabled","firstEnabledMonth","lastEnabledMonth","handleMonthSelection","focusMonth","prevFocusedMonth","monthsInYear","handleMonthFocus","handleMonthBlur","monthNumber","monthText","getPickersYearUtilityClass","pickersYearClasses","PickersYearRoot","yearsPerRow","PickersYearButton","yearButton","PickersYear","getYearCalendarUtilityClass","YearCalendarRoot","YearCalendar","useYearCalendarDefaultizedProps","onYearFocus","_props$yearsPerRow","selectedDateOrStartOfYear","todayYear","selectedYear","focusedYear","setFocusedYear","isYearDisabled","dateToValidate","isBeforeYear","isAfterYear","handleYearSelection","focusYear","prevFocusedYear","handleYearFocus","handleYearBlur","scrollerRef","tabbableButton","getYearRange","yearNumber","getPickersArrowSwitcherUtilityClass","PickersArrowSwitcherRoot","PickersArrowSwitcherSpacer","spacer","PickersArrowSwitcherButton","PickersArrowSwitcher","_slots$previousIconBu","_slots$nextIconButton","_slots$leftArrowIcon","_slots$rightArrowIcon","isNextDisabled","isNextHidden","onGoToNext","nextLabel","isPreviousDisabled","isPreviousHidden","onGoToPrevious","previousLabel","goTo","leftProps","rightProps","PreviousIconButton","previousIconButton","previousIconButtonProps","NextIconButton","nextIconButton","nextIconButtonProps","LeftArrowIcon","leftArrowIcon","leftArrowIconProps","RightArrowIcon","rightArrowIcon","rightArrowIconProps","getPickersCalendarHeaderUtilityClass","pickersCalendarHeaderClasses","PickersCalendarHeaderRoot","PickersCalendarHeaderLabelContainer","labelContainer","PickersCalendarHeaderLabel","PickersCalendarHeaderSwitchViewButton","switchViewButton","switchViewIcon","PickersCalendarHeaderSwitchViewIcon","PickersCalendarHeader","_slots$switchViewButt","_slots$switchViewIcon","SwitchViewButton","switchViewButtonProps","SwitchViewIcon","switchViewIconProps","isNextMonthDisabled","useNextMonthDisabled","isPreviousMonthDisabled","usePreviousMonthDisabled","nextIndexToOpen","PickerViewRoot","defaultReduceAnimations","getDateCalendarUtilityClass","DateCalendarRoot","DateCalendarViewTransitionContainer","viewTransitionContainer","DateCalendar","useDateCalendarDefaultizedProps","onYearChange","handleValueChange","_useCalendarState","handleDateMonthChange","closestEnabledDate","handleDateYearChange","handleSelectedDayChange","baseDateValidationProps","minDateWithDisabled","maxDateWithDisabled","commonViewProps","prevOpenViewRef","renderDateViewCalendar","DesktopDatePicker","_defaultizedProps$yea","_defaultizedProps$slo2","defaultizedProps","_useDesktopPicker","_innerSlotProps$toolb","_innerSlotProps$toolb2","_slots$inputAdornment","_slots$openPickerButt","_slots$layout","getOpenDialogAriaText","pickerParams","internalInputRef","isToolbarHidden","_usePicker","pickerFieldProps","inputAdornment","MuiInputAdornment","inputAdornmentProps","OpenPickerButton","openPickerButton","openPickerButtonProps","OpenPickerIcon","openPickerIcon","Field","field","slotsForField","Layout","layout","labelledById","renderPicker","useDesktopPicker","_defaultizedProps$slo","getDialogContentUtilityClass","DialogContentRoot","dividers","dialogTitleClasses","_props$dividers","getDialogUtilityClass","DialogBackdrop","overrides","DialogRoot","DialogContainer","DialogPaper","paperFullWidth","fullScreen","paperFullScreen","dialogClasses","Dialog","defaultTransitionDuration","ariaLabelledbyProp","_props$fullScreen","_props$maxWidth","_props$scroll","backdropClick","ariaLabelledby","dialogContextValue","DialogContext","PickersModalDialogRoot","PickersModalDialogContent","DialogContent","PickersModalDialog","_slots$dialog","_slots$mobileTransiti","dialog","mobileTransition","mobilePaper","MobileDatePicker","_useMobilePicker","externalEvent","useMobilePicker","DatePicker","_props$desktopModeMed","desktopModeMediaQuery","isDesktop","queryInput","supportMatchMedia","_getThemeProps","_getThemeProps$defaul","_getThemeProps$matchM","_getThemeProps$ssrMat","_getThemeProps$noSsr","useMediaQuery","defaultDayjs","customParseFormatPlugin","localizedFormatPlugin","isBetweenPlugin","localeNotFoundWarning","defaultFormats","monthShort","weekdayShort","hours24h","hours12h","fullDate","fullDateWithWeekday","shortDate","monthAndYear","monthAndDate","fullTime","fullTime12h","fullTime24h","fullDateTime","fullDateTime12h","fullDateTime24h","keyboardDateTime","keyboardDateTime12h","keyboardDateTime24h","MISSING_UTC_PLUGIN","MISSING_TIMEZONE_PLUGIN","AdapterDayjs","dayjs","_locale","isTimezoneCompatible","lib","rawDayJsInstance","setLocaleToValue","expectedLocale","hasUTCPlugin","hasTimezonePlugin","comparing","comparisonTemplate","comparingInValueTimezone","setTimezone","createSystemDate","createUTCDate","createTZDate","timezone","cleanTimezone","keepLocalTime","endsWith","tz","getLocaleFormats","locales","localeObject","dateWithTimezone","parsedValue","isUTC","_value$$x","$timezone","local","cleanZone","parseISO","isoString","toISO","is12HourCycleInCurrentLocale","localeFormats","getFormatHelperText","toLocaleLowerCase","isNull","formatKey","formatString","formatNumber","numberToFormat","getDiff","isSameYear","isSameHour","isWithinRange","addYears","amount","addWeeks","addMinutes","addSeconds","hour","minute","second","millisecond","getNextMonth","getPreviousMonth","getMonthArray","monthArray","cleanLocale","nestedWeeks","years","getMeridiemText","ampm","weekOfYear","_useState2","isAuthenticated","setIsAuthenticated","_useState4","authTokenFile","setAuthTokenFile","_useState6","setStartTime","_useState8","endTime","setEndTime","_useState10","level","setLevel","_useState12","showError","setShowError","_useState14","setNode","_useState16","inputNode","setInputNode","_useState18","network","setNetwork","_useState20","inputNetwork","setInputNetwork","_useState22","station","setStation","_useState24","topN","setTopN","nodeCheckboxesContainer","paramToPass","lst","loadingMsg","intervalId","fetch","json","errorMessage","statusText","indicatorDataClients","results","clients","displaylogo","indicatorDataBytes","valueformat","pieDataRequests","nb_successful_reqs","nb_reqs","labels","hovertemplate","totalPlots","monthAndYearPlots","endYear","barData","barLayout","annotations","yref","xref","showarrow","family","xaxis","tickmode","yaxis","updatemenus","showlegend","barmode","iso2ToIso3","mapData","locationmode","locations","country","geojson","URL","colorscale","autocolorscale","reversescale","mapLayout","mapbox","lon","lat","finally","mapPlots","makePlotsEIDA","nodesColors","rearrangedResults","hll","hll_clients","pieDataClients","texttemplate","pieLayoutClients","xshift","pieDataBytes","pieLayoutRequests","hlls","clientsAllNodes","nodeResults","y1","y2","y3","y4","y5","bar","aggregatedResults","aggregate","nodeCheckboxes","handleCheckboxClick","lastClickedTime","lastClickedCheckbox","checkbox","currentTime","timeDiff","checkboxes","checkedCount","selectedNodes","filteredData","newCountryCodesISO3","activeButtonIndex","newMapData","makePlotsNode","file","FormData","strNets","net","single","foundNets","groupedDataClients","belongsInLess","otherValueClients","sortedDataClients","localeCompare","customdata","sharedBytes","accumulator","networks","groupedDataBytes","otherValueBytes","sortedDataBytes","sharedReq","groupedDataReq","otherValueReq","sortedDataReq","networksSet","groupedResults","grouped","totalA","otherDataClients","barDataClients","nameA","nameB","clientsAllNetworks","otherDataBytes","barDataBytes","_loop2","otherDataReq","barDataReq","_loop3","networkCheckboxes","networkCheckboxesContainer","selectedNetworks","makePlotsNetwork","fileSta","sta","topDataClients","groupedSliceClients","total","belongsHere","topDataBytes","groupedSliceBytes","topDataRequests","groupedSliceRequests","stationsSet","stationResults","clientsAllStations","otherDataRequests","barDataRequests","stationCheckboxes","stationCheckboxesContainer","selectedStations","makePlotsStation","get_nodes","_get_nodes","_callee3","_context3","t0","_useState26","setOpen","_useState28","get_networks","_get_networks","_callee4","networkNodes","filteredNetworks","_context4","setBroughtNets","_callee","_useState30","openNet","setOpenNet","_useState32","optionsNet","setOptionsNet","_useState34","broughtNets","loadingNet","activeNet","_callee2","_context2","FormControlLabel","files","RadioGroup","Autocomplete","nv","_Fragment","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","App","reportWebVitals"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/main.7bab7422.js b/static/js/main.c8287e73.js similarity index 98% rename from static/js/main.7bab7422.js rename to static/js/main.c8287e73.js index fc1d06c..eb83073 100644 --- a/static/js/main.7bab7422.js +++ b/static/js/main.c8287e73.js @@ -1,3 +1,3 @@ -/*! For license information please see main.7bab7422.js.LICENSE.txt */ -!function(){var e={571:function(e){e.exports={HLL:a,fromHexString:function(e){var t=function(e){for(var t=(e=e.substring(2)).length/2,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i24)throw new Error("Register width must be between 4 and 24 inclusive (log2m = "+e+").");if(o<1||o>5)throw new Error("Register width must be between 1 and 5 inclusive (registerWidth = "+o+").");s.log2m=e,s.m=1<=0;l--)s.registers.push(0);var u=(1<>>0,c=(1<>>0,f=u-1+e,d=Math.pow(2,f),h=d/30,p=5*s.registers.length/2,v=function(e){switch(e){case 1:case 2:case 4:case 8:throw new Error("'m' cannot be less than 16 ("+e+" < 16).");case 16:return.673*e*e;case 32:return.697*e*e;case 64:return.709*e*e;default:return.7213/(1+1.079/e)*e*e}}(s.m);function m(e){var t=function(e){return 0==e?-1:0!=(255&e)?_[e>>>0&255]+0:0!=(65535&e)?_[e>>>8&255]+8:0!=(16777215&e)?_[e>>>16&255]+16:_[e>>>24&255]+24}(e[n])+1;return Math.min(u,t)}return s.addRaw=function(t){var r=t[n]&c,a=m(function(e,t){if(0==(t&=63))return e;var r=e[i];return t<32?[e[n]>>>t|r<<32-t,r>>>t]:32==t?[r,0]:[r>>>t-32,0]}(t,e));s.registers[r]=Math.max(s.registers[r],a)},s.algorithmCardinality=function(){for(var e=s.m,t=0,r=0,n=s.registers,i=e-1;i>=0;i--){var a=n[i];t+=1/(1<>>0),0==a&&r++}var o=v/t;return 0!=r&&o=0;o--)i[o]=Math.max(i[o],a[o]);return s},s.fold=function(e){if(e==s.log2m)return s.clone();if(e<1||e>s.log2m)throw new Error("'log2m' cannot be less than 1 or greater than the current value.");for(var t=new a(e,s.registerWidth),r=t.registers,n=s.registers,i=s.log2m-e,o=t.m-1;o>=0;o--)r[o]=Math.min(n[o]+i,u);return t},s.clone=function(){for(var e=new a(s.log2m,s.registerWidth),t=s.registers,r=e.registers,n=s.m-1;n>=0;n--)r[n]=t[n];return e},s.clear=function(){for(var e=s.registers,t=s.m-1;t>=0;t--)e[t]=0;return s},s.toHexString=function(){var t=new w;t.addBits(20,8),t.addBits(o-1,3),t.addBits(e,5),t.addBits(0,8);for(var r=s.m,n=s.registers,i=0;i>4,n=function(e){return 15&e}(t[0]);if(1!=r)throw new Error("Unknown schema version: "+r);switch(n){case s:return{hllSet:m(e),version:r,algorithm:n.UNDEFINED};case l:return{hllSet:m(e),version:r,algorithm:n.EMPTY};case u:return{hllSet:g(e),version:r,algorithm:n.EXPLICIT};case c:return{hllSet:v(e),version:r,algorithm:n.SPARSE};case f:return{hllSet:p(e),version:r,algorithm:n.FULL};default:throw new Error("Unknown schema version 1 algorithm (index): "+n)}};function h(e){return{registerWidth:x(e,0,3)+1,log2m:x(e,3,5)}}function p(e){for(var t=new Uint8Array(e),r=h(t[1]),n=r.registerWidth,i=r.log2m,s=[],l=3*o,u=(1<=0;u--)s.push(b(t,l,n)),l+=n;var c=new a(i,n);return c.registers=s,c}function v(e){return function(e,t,r){for(var n=r.registerWidth,i=r.log2m,s=1<=0;u--)l.push(0);var c=t*o;c+=s*n%o;var f=new Uint8Array(e);for(u=Math.floor((f.length-t)*o/(i+n))-1;u>=0;u--){var d=b(f,c,i),h=b(f,c+=i,n);c+=n,l[d]=h}var p=new a(i,n);return p.registers=l,p}(e,3,h(new Uint8Array(e)[1]))}function m(e){var t,r=new Uint8Array(e);return new a((t=h(r[1])).log2m,t.registerWidth)}function g(e){return function(e,t,r){var n=new a(r.log2m,r.registerWidth),i=new Uint8Array(e),o=t;for(;o>>0,n>>>0]}function x(e,t,r){return e>>>o-(t+r)&(1<>>3,i=t+r>>>3,a=7&t;if(n==i)return x(e[i],a,r);for(var s=t+r&7,l=0,u=0,c=i;c>=n;c--){l|=(c==n?x(e[c],a,o-a):c==i?x(e[c],0,s):e[c])<0;){var s=Math.min(a,r);e|=(n>>>a-s&(1<>>0<=t?e:""+Array(t+1-n.length).join(r)+e},y={s:g,z:function(e){var t=-e.utcOffset(),r=Math.abs(t),n=Math.floor(r/60),i=r%60;return(t<=0?"+":"-")+g(n,2,"0")+":"+g(i,2,"0")},m:function e(t,r){if(t.date()1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!n&&i&&(x=i),i||!n&&x},k=function(e,t){if(_(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new M(r)},T=y;T.l=w,T.i=_,T.w=function(e,t){return k(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var M=function(){function m(e){this.$L=w(e.locale,null,!0),this.parse(e)}var g=m.prototype;return g.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(T.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(p);if(n){var i=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.$x=e.x||{},this.init()},g.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},g.$utils=function(){return T},g.isValid=function(){return!(this.$d.toString()===h)},g.isSame=function(e,t){var r=k(e);return this.startOf(t)<=r&&r<=this.endOf(t)},g.isAfter=function(e,t){return k(e)68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),r=60*t[1]+(+t[2]||0);return 0===r?0:"+"===t[0]?-r:r}(e)}],u=function(e){var t=a[e];return t&&(t.indexOf?t:t.s.concat(t.f))},c=function(e,t){var r,n=a.meridiem;if(n){for(var i=1;i<=24;i+=1)if(e.indexOf(n(i,0,t))>-1){r=i>12;break}}else r=e===(t?"pm":"PM");return r},f={A:[i,function(e){this.afternoon=c(e,!1)}],a:[i,function(e){this.afternoon=c(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[r,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[n,s("seconds")],ss:[n,s("seconds")],m:[n,s("minutes")],mm:[n,s("minutes")],H:[n,s("hours")],h:[n,s("hours")],HH:[n,s("hours")],hh:[n,s("hours")],D:[n,s("day")],DD:[r,s("day")],Do:[i,function(e){var t=a.ordinal,r=e.match(/\d+/);if(this.day=r[0],t)for(var n=1;n<=31;n+=1)t(n).replace(/\[|\]/g,"")===e&&(this.day=n)}],M:[n,s("month")],MM:[r,s("month")],MMM:[i,function(e){var t=u("months"),r=(u("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[i,function(e){var t=u("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[r,function(e){this.year=o(e)}],YYYY:[/\d{4}/,s("year")],Z:l,ZZ:l};function d(r){var n,i;n=r,i=a&&a.formats;for(var o=(r=n.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,r,n){var a=n&&n.toUpperCase();return r||i[n]||e[n]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))).match(t),s=o.length,l=0;l-1)return new Date(("X"===t?1e3:1)*e);var n=d(t)(e),i=n.year,a=n.month,o=n.day,s=n.hours,l=n.minutes,u=n.seconds,c=n.milliseconds,f=n.zone,h=new Date,p=o||(i||a?1:h.getDate()),v=i||h.getFullYear(),m=0;i&&!a||(m=a>0?a-1:h.getMonth());var g=s||0,y=l||0,x=u||0,b=c||0;return f?new Date(Date.UTC(v,m,p,g,y,x,b+60*f.offset*1e3)):r?new Date(Date.UTC(v,m,p,g,y,x,b)):new Date(v,m,p,g,y,x,b)}catch(e){return new Date("")}}(t,s,n),this.init(),f&&!0!==f&&(this.$L=this.locale(f).$L),c&&t!=this.format(s)&&(this.$d=new Date("")),a={}}else if(s instanceof Array)for(var h=s.length,p=1;p<=h;p+=1){o[1]=s[p-1];var v=r.apply(this,o);if(v.isValid()){this.$d=v.$d,this.$L=v.$L,this.init();break}p===h&&(this.$d=new Date(""))}else i.call(this,e)}}}()},818:function(e){e.exports=function(){"use strict";return function(e,t,r){t.prototype.isBetween=function(e,t,n,i){var a=r(e),o=r(t),s="("===(i=i||"()")[0],l=")"===i[1];return(s?this.isAfter(a,n):!this.isBefore(a,n))&&(l?this.isBefore(o,n):!this.isAfter(o,n))||(s?this.isBefore(a,n):!this.isAfter(a,n))&&(l?this.isAfter(o,n):!this.isBefore(o,n))}}}()},893:function(e){e.exports=function(){"use strict";var e={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"};return function(t,r,n){var i=r.prototype,a=i.format;n.en.formats=e,i.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var r=this.$locale().formats,n=function(t,r){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,i){var a=i&&i.toUpperCase();return n||r[i]||e[i]||r[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))}(t,void 0===r?{}:r);return a.call(this,n)}}}()},216:function(e){e.exports=function(){"use strict";var e="week",t="year";return function(r,n,i){var a=n.prototype;a.week=function(r){if(void 0===r&&(r=null),null!==r)return this.add(7*(r-this.week()),"day");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var a=i(this).startOf(t).add(1,t).date(n),o=i(this).endOf(e);if(a.isBefore(o))return 1}var s=i(this).startOf(t).date(n).startOf(e).subtract(1,"millisecond"),l=this.diff(s,e,!0);return l<0?i(this).startOf("week").week():Math.ceil(l)},a.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}()},110:function(e,t,r){"use strict";var n=r(309),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return n.isMemo(e)?o:s[e.$$typeof]||i}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=o;var u=Object.defineProperty,c=Object.getOwnPropertyNames,f=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(p){var i=h(r);i&&i!==p&&e(t,i,n)}var o=c(r);f&&(o=o.concat(f(r)));for(var s=l(t),v=l(r),m=0;m: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");n.addStyleRule(o,i[a])}},98222:function(e,t,r){"use strict";e.exports=r(82887)},27206:function(e,t,r){"use strict";e.exports=r(60822)},59893:function(e,t,r){"use strict";e.exports=r(23381)},5224:function(e,t,r){"use strict";e.exports=r(83832)},59509:function(e,t,r){"use strict";e.exports=r(72201)},75557:function(e,t,r){"use strict";e.exports=r(91815)},40338:function(e,t,r){"use strict";e.exports=r(21462)},35080:function(e,t,r){"use strict";e.exports=r(51319)},61396:function(e,t,r){"use strict";e.exports=r(57516)},40549:function(e,t,r){"use strict";e.exports=r(98128)},49866:function(e,t,r){"use strict";e.exports=r(99442)},36089:function(e,t,r){"use strict";e.exports=r(93740)},19548:function(e,t,r){"use strict";e.exports=r(8729)},35831:function(e,t,r){"use strict";e.exports=r(93814)},61039:function(e,t,r){"use strict";e.exports=r(14382)},97040:function(e,t,r){"use strict";e.exports=r(51759)},77986:function(e,t,r){"use strict";e.exports=r(10421)},24296:function(e,t,r){"use strict";e.exports=r(43102)},58872:function(e,t,r){"use strict";e.exports=r(92165)},29626:function(e,t,r){"use strict";e.exports=r(3325)},65591:function(e,t,r){"use strict";e.exports=r(36071)},69738:function(e,t,r){"use strict";e.exports=r(43905)},92650:function(e,t,r){"use strict";e.exports=r(35902)},35630:function(e,t,r){"use strict";e.exports=r(69816)},73434:function(e,t,r){"use strict";e.exports=r(94507)},27909:function(e,t,r){"use strict";var n=r(19548);n.register([r(27206),r(5224),r(58872),r(65591),r(69738),r(92650),r(49866),r(25743),r(6197),r(97040),r(85461),r(73434),r(54201),r(81299),r(47645),r(35630),r(77986),r(83043),r(93005),r(96881),r(4534),r(50581),r(40549),r(77900),r(47582),r(35080),r(21641),r(17280),r(5861),r(29626),r(10021),r(65317),r(96268),r(61396),r(35831),r(16122),r(46163),r(40344),r(40338),r(48131),r(36089),r(55334),r(75557),r(19440),r(99488),r(59893),r(97393),r(98222),r(61039),r(24296),r(66398),r(59509)]),e.exports=n},46163:function(e,t,r){"use strict";e.exports=r(15154)},96881:function(e,t,r){"use strict";e.exports=r(64943)},50581:function(e,t,r){"use strict";e.exports=r(21164)},55334:function(e,t,r){"use strict";e.exports=r(54186)},65317:function(e,t,r){"use strict";e.exports=r(94873)},10021:function(e,t,r){"use strict";e.exports=r(67618)},54201:function(e,t,r){"use strict";e.exports=r(58810)},5861:function(e,t,r){"use strict";e.exports=r(20593)},16122:function(e,t,r){"use strict";e.exports=r(29396)},83043:function(e,t,r){"use strict";e.exports=r(13551)},48131:function(e,t,r){"use strict";e.exports=r(46858)},47582:function(e,t,r){"use strict";e.exports=r(17988)},21641:function(e,t,r){"use strict";e.exports=r(68868)},96268:function(e,t,r){"use strict";e.exports=r(20467)},19440:function(e,t,r){"use strict";e.exports=r(91271)},99488:function(e,t,r){"use strict";e.exports=r(21461)},97393:function(e,t,r){"use strict";e.exports=r(85956)},25743:function(e,t,r){"use strict";e.exports=r(52979)},66398:function(e,t,r){"use strict";e.exports=r(32275)},17280:function(e,t,r){"use strict";e.exports=r(6419)},77900:function(e,t,r){"use strict";e.exports=r(61510)},81299:function(e,t,r){"use strict";e.exports=r(87619)},93005:function(e,t,r){"use strict";e.exports=r(93601)},40344:function(e,t,r){"use strict";e.exports=r(96595)},47645:function(e,t,r){"use strict";e.exports=r(70954)},6197:function(e,t,r){"use strict";e.exports=r(47462)},4534:function(e,t,r){"use strict";e.exports=r(17659)},85461:function(e,t,r){"use strict";e.exports=r(19990)},82884:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(82884),i=r(41940),a=r(85555),o=r(44467).templatedArray;r(24695),e.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:n.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:n.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(e,t,r){"use strict";var n=r(71828),i=r(89298),a=r(92605).draw;function o(e){var t=e._fullLayout;n.filterVisible(t.annotations).forEach((function(t){var r=i.getFromId(e,t.xref),n=i.getFromId(e,t.yref),a=i.getRefType(t.xref),o=i.getRefType(t.yref);t._extremes={},"range"===a&&s(t,r),"range"===o&&s(t,n)}))}function s(e,t){var r,n=t._id,a=n.charAt(0),o=e[a],s=e["a"+a],l=e[a+"ref"],u=e["a"+a+"ref"],c=e["_"+a+"padplus"],f=e["_"+a+"padminus"],d={x:1,y:-1}[a]*e[a+"shift"],h=3*e.arrowsize*e.arrowwidth||0,p=h+d,v=h-d,m=3*e.startarrowsize*e.arrowwidth||0,g=m+d,y=m-d;if(u===l){var x=i.findExtremes(t,[t.r2c(o)],{ppadplus:p,ppadminus:v}),b=i.findExtremes(t,[t.r2c(s)],{ppadplus:Math.max(c,g),ppadminus:Math.max(f,y)});r={min:[x.min[0],b.min[0]],max:[x.max[0],b.max[0]]}}else g=s?g+s:g,y=s?y-s:y,r=i.findExtremes(t,[t.r2c(o)],{ppadplus:Math.max(c,p,g),ppadminus:Math.max(f,v,y)});e._extremes[n]=r}e.exports=function(e){var t=e._fullLayout;if(n.filterVisible(t.annotations).length&&e._fullData.length)return n.syncOrAsync([a,o],e)}},44317:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(44467).arrayEditor;function o(e,t){var r,n,i,a,o,l,u,c=e._fullLayout.annotations,f=[],d=[],h=[],p=(t||[]).length;for(r=0;r0||r.explicitOff.length>0},onClick:function(e,t){var r,s,l=o(e,t),u=l.on,c=l.off.concat(l.explicitOff),f={},d=e._fullLayout.annotations;if(u.length||c.length){for(r=0;r2/3?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[t]}for(var Y=!1,Z=["x","y"],X=0;X1)&&(ne===re?((he=ie.r2fraction(t["a"+te]))<0||he>1)&&(Y=!0):Y=!0),K=ie._offset+ie.r2p(t[te]),Q=.5}else{var pe="domain"===de;"x"===te?(J=t[te],K=pe?ie._offset+ie._length*J:K=k.l+k.w*J):(J=1-t[te],K=pe?ie._offset+ie._length*J:K=k.t+k.h*J),Q=t.showarrow?.5:J}if(t.showarrow){fe.head=K;var ve=t["a"+te];if(ee=oe*q(.5,t.xanchor)-se*q(.5,t.yanchor),ne===re){var me=l.getRefType(ne);"domain"===me?("y"===te&&(ve=1-ve),fe.tail=ie._offset+ie._length*ve):"paper"===me?"y"===te?(ve=1-ve,fe.tail=k.t+k.h*ve):fe.tail=k.l+k.w*ve:fe.tail=ie._offset+ie.r2p(ve),$=ee}else fe.tail=K+ve,$=ee+ve;fe.text=fe.tail+ee;var ge=w["x"===te?"width":"height"];if("paper"===re&&(fe.head=o.constrain(fe.head,1,ge-1)),"pixel"===ne){var ye=-Math.max(fe.tail-3,fe.text),xe=Math.min(fe.tail+3,fe.text)-ge;ye>0?(fe.tail+=ye,fe.text+=ye):xe>0&&(fe.tail-=xe,fe.text-=xe)}fe.tail+=ce,fe.head+=ce}else $=ee=le*q(Q,ue),fe.text=K+ee;fe.text+=ce,ee+=ce,$+=ce,t["_"+te+"padplus"]=le/2+$,t["_"+te+"padminus"]=le/2-$,t["_"+te+"size"]=le,t["_"+te+"shift"]=ee}if(Y)z.remove();else{var be=0,_e=0;if("left"!==t.align&&(be=(M-b)*("center"===t.align?.5:1)),"top"!==t.valign&&(_e=(R-_)*("middle"===t.valign?.5:1)),f)n.select("svg").attr({x:B+be-1,y:B+_e}).call(c.setClipUrl,U?C:null,e);else{var we=B+_e-v.top,ke=B+be-v.left;W.call(d.positionText,ke,we).call(c.setClipUrl,U?C:null,e)}V.select("rect").call(c.setRect,B,B,M,R),j.call(c.setRect,F/2,F/2,N-F,H-F),z.call(c.setTranslate,Math.round(L.x.text-N/2),Math.round(L.y.text-H/2)),I.attr({transform:"rotate("+P+","+L.x.text+","+L.y.text+")"});var Te,Me=function(r,n){O.selectAll(".annotation-arrow-g").remove();var l=L.x.head,f=L.y.head,d=L.x.tail+r,h=L.y.tail+n,v=L.x.text+r,b=L.y.text+n,_=o.rotationXYMatrix(P,v,b),w=o.apply2DTransform(_),M=o.apply2DTransform2(_),C=+j.attr("width"),D=+j.attr("height"),R=v-.5*C,F=R+C,N=b-.5*D,B=N+D,U=[[R,N,R,B],[R,B,F,B],[F,B,F,N],[F,N,R,N]].map(M);if(!U.reduce((function(e,t){return e^!!o.segmentsIntersect(l,f,l+1e6,f+1e6,t[0],t[1],t[2],t[3])}),!1)){U.forEach((function(e){var t=o.segmentsIntersect(d,h,l,f,e[0],e[1],e[2],e[3]);t&&(d=t.x,h=t.y)}));var V=t.arrowwidth,H=t.arrowcolor,q=t.arrowside,W=O.append("g").style({opacity:u.opacity(H)}).classed("annotation-arrow-g",!0),G=W.append("path").attr("d","M"+d+","+h+"L"+l+","+f).style("stroke-width",V+"px").call(u.stroke,u.rgb(H));if(m(G,q,t),T.annotationPosition&&G.node().parentNode&&!a){var Y=l,Z=f;if(t.standoff){var X=Math.sqrt(Math.pow(l-d,2)+Math.pow(f-h,2));Y+=t.standoff*(d-l)/X,Z+=t.standoff*(h-f)/X}var K,$,J=W.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(d-Y)+","+(h-Z),transform:s(Y,Z)}).style("stroke-width",V+6+"px").call(u.stroke,"rgba(0,0,0,0)").call(u.fill,"rgba(0,0,0,0)");p.init({element:J.node(),gd:e,prepFn:function(){var e=c.getTranslate(z);K=e.x,$=e.y,g&&g.autorange&&A(g._name+".autorange",!0),x&&x.autorange&&A(x._name+".autorange",!0)},moveFn:function(e,r){var n=w(K,$),i=n[0]+e,a=n[1]+r;z.call(c.setTranslate,i,a),S("x",y(g,e,"x",k,t)),S("y",y(x,r,"y",k,t)),t.axref===t.xref&&S("ax",y(g,e,"ax",k,t)),t.ayref===t.yref&&S("ay",y(x,r,"ay",k,t)),W.attr("transform",s(e,r)),I.attr({transform:"rotate("+P+","+i+","+a+")"})},doneFn:function(){i.call("_guiRelayout",e,E());var t=document.querySelector(".js-notes-box-panel");t&&t.redraw(t.selectedObj)}})}}};t.showarrow&&Me(0,0),D&&p.init({element:z.node(),gd:e,prepFn:function(){Te=I.attr("transform")},moveFn:function(e,r){var n="pointer";if(t.showarrow)t.axref===t.xref?S("ax",y(g,e,"ax",k,t)):S("ax",t.ax+e),t.ayref===t.yref?S("ay",y(x,r,"ay",k.w,t)):S("ay",t.ay+r),Me(e,r);else{if(a)return;var i,o;if(g)i=y(g,e,"x",k,t);else{var l=t._xsize/k.w,u=t.x+(t._xshift-t.xshift)/k.w-l/2;i=p.align(u+e/k.w,l,0,1,t.xanchor)}if(x)o=y(x,r,"y",k,t);else{var c=t._ysize/k.h,f=t.y-(t._yshift+t.yshift)/k.h-c/2;o=p.align(f-r/k.h,c,0,1,t.yanchor)}S("x",i),S("y",o),g&&x||(n=p.getCursor(g?.5:i,x?.5:o,t.xanchor,t.yanchor))}I.attr({transform:s(e,r)+Te}),h(z,n)},clickFn:function(r,n){t.captureevents&&e.emit("plotly_clickannotation",G(n))},doneFn:function(){h(z),i.call("_guiRelayout",e,E());var t=document.querySelector(".js-notes-box-panel");t&&t.redraw(t.selectedObj)}})}}}e.exports={draw:function(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r=0,x=t.indexOf("end")>=0,b=p.backoff*m+r.standoff,_=v.backoff*g+r.startstandoff;if("line"===h.nodeName){o={x:+e.attr("x1"),y:+e.attr("y1")},c={x:+e.attr("x2"),y:+e.attr("y2")};var w=o.x-c.x,k=o.y-c.y;if(d=(f=Math.atan2(k,w))+Math.PI,b&&_&&b+_>Math.sqrt(w*w+k*k))return void D();if(b){if(b*b>w*w+k*k)return void D();var T=b*Math.cos(f),M=b*Math.sin(f);c.x+=T,c.y+=M,e.attr({x2:c.x,y2:c.y})}if(_){if(_*_>w*w+k*k)return void D();var A=_*Math.cos(f),S=_*Math.sin(f);o.x-=A,o.y-=S,e.attr({x1:o.x,y1:o.y})}}else if("path"===h.nodeName){var E=h.getTotalLength(),C="";if(E1){u=!0;break}}u?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+s+'"]').remove():(l._pdata=i(e.glplot.cameraParams,[t.xaxis.r2l(l.x)*r[0],t.yaxis.r2l(l.y)*r[1],t.zaxis.r2l(l.z)*r[2]]),n(e.graphDiv,l,s,e.id,l._xa,l._ya))}}},2468:function(e,t,r){"use strict";var n=r(73972),i=r(71828);e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:r(26997)}}},layoutAttributes:r(26997),handleDefaults:r(20226),includeBasePlot:function(e,t){var r=n.subplotsRegistry.gl3d;if(r)for(var a=r.attrRegex,o=Object.keys(e),s=0;s=0))return e;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return e}var s=Math.round(255*n[0])+", "+Math.round(255*n[1])+", "+Math.round(255*n[2]);return a?"rgba("+s+", "+n[3]+")":"rgb("+s+")"}o.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"},o.rgb=function(e){return o.tinyRGB(n(e))},o.opacity=function(e){return e?n(e).getAlpha():0},o.addOpacity=function(e,t){var r=n(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"},o.combine=function(e,t){var r=n(e).toRgb();if(1===r.a)return n(e).toRgbString();var i=n(t||u).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-r.a)+r.r*r.a,g:a.g*(1-r.a)+r.g*r.a,b:a.b*(1-r.a)+r.b*r.a};return n(o).toRgbString()},o.contrast=function(e,t,r){var i=n(e);return 1!==i.getAlpha()&&(i=n(o.combine(e,u))),(i.isDark()?t?i.lighten(t):u:r?i.darken(r):l).toString()},o.stroke=function(e,t){var r=n(t);e.style({stroke:o.tinyRGB(r),"stroke-opacity":r.getAlpha()})},o.fill=function(e,t){var r=n(t);e.style({fill:o.tinyRGB(r),"fill-opacity":r.getAlpha()})},o.clean=function(e){if(e&&"object"===typeof e){var t,r,n,i,s=Object.keys(e);for(t=0;t0?n>=l:n<=l));i++)n>c&&n0?n>=l:n<=l));i++)n>r[0]&&n1){var ue=Math.pow(10,Math.floor(Math.log(le)/Math.LN10));oe*=ue*u.roundUp(le/ue,[2,5,10]),(Math.abs(q.start)/q.size+1e-6)%1<2e-6&&(ie.tick0=0)}ie.dtick=oe}ie.domain=o?[re+O/z.h,re+$-O/z.h]:[re+P/z.w,re+$-P/z.w],ie.setScale(),e.attr("transform",c(Math.round(z.l),Math.round(z.t)));var ce,fe=e.select("."+M.cbtitleunshift).attr("transform",c(-Math.round(z.l),-Math.round(z.t))),de=ie.ticklabelposition,he=ie.title.font.size,pe=e.select("."+M.cbaxis),ve=0,me=0;function ge(n,i){var a={propContainer:ie,propName:t._propPrefix+"title",traceIndex:t._traceIndex,_meta:t._meta,placeholder:R._dfltTitle.colorbar,containerGroup:e.select("."+M.cbtitle)},o="h"===n.charAt(0)?n.substr(1):"h"+n;e.selectAll("."+o+",."+o+"-math-group").remove(),v.draw(r,n,f(a,i||{}))}function ye(){var e,t;(o&&ae||!o&&!ae)&&("top"===j&&(e=P+z.l+z.w*I,t=O+z.t+z.h*(1-re-$)+3+.75*he),"bottom"===j&&(e=P+z.l+z.w*I,t=O+z.t+z.h*(1-re)-3-.25*he),"right"===j&&(t=O+z.t+z.h*D+3+.75*he,e=P+z.l+z.w*re),ge(ie._id+"title",{attributes:{x:e,y:t,"text-anchor":o?"start":"middle"}}))}function xe(){if(o&&!ae||!o&&ae){var e,i,a=ie.position||0,s=ie._offset+ie._length/2;if("right"===j)i=s,e=z.l+z.w*a+10+he*(ie.showticklabels?1:.5);else if(e=s,"bottom"===j&&(i=z.t+z.h*a+10+(-1===de.indexOf("inside")?ie.tickfont.size:0)+("intside"!==ie.ticks&&t.ticklen||0)),"top"===j){var l=B.text.split("
").length;i=z.t+z.h*a+10-Z-w*he*l}ge((o?"h":"v")+ie._id+"title",{avoid:{selection:n.select(r).selectAll("g."+ie._id+"tick"),side:j,offsetTop:o?0:z.t,offsetLeft:o?z.l:0,maxShift:o?R.width:R.height},attributes:{x:e,y:i,"text-anchor":"middle"},transform:{rotate:o?-90:0,offset:0}})}}function be(){if(!o&&!ae||o&&ae){var a,l=e.select("."+M.cbtitle),f=l.select("text"),d=[-A/2,A/2],p=l.select(".h"+ie._id+"title-math-group").node(),v=15.6;if(f.node()&&(v=parseInt(f.node().style.fontSize,10)*w),p?(a=h.bBox(p),me=a.width,(ve=a.height)>v&&(d[1]-=(ve-v)/2)):f.node()&&!f.classed(M.jsPlaceholder)&&(a=h.bBox(f.node()),me=a.width,ve=a.height),o){if(ve){if(ve+=5,"top"===j)ie.domain[1]-=ve/z.h,d[1]*=-1;else{ie.domain[0]+=ve/z.h;var g=m.lineCount(f);d[1]+=(1-g)*v}l.attr("transform",c(d[0],d[1])),ie.setScale()}}else me&&("right"===j&&(ie.domain[0]+=(me+he/2)/z.w),l.attr("transform",c(d[0],d[1])),ie.setScale())}e.selectAll("."+M.cbfills+",."+M.cblines).attr("transform",o?c(0,Math.round(z.h*(1-ie.domain[1]))):c(Math.round(z.w*ie.domain[0]),0)),pe.attr("transform",o?c(0,Math.round(-z.t)):c(Math.round(-z.l),0));var y=e.select("."+M.cbfills).selectAll("rect."+M.cbfill).attr("style","").data(G);y.enter().append("rect").classed(M.cbfill,!0).style("stroke","none"),y.exit().remove();var x=U.map(ie.c2p).map(Math.round).sort((function(e,t){return e-t}));y.each((function(e,a){var s=[0===a?U[0]:(G[a]+G[a-1])/2,a===G.length-1?U[1]:(G[a]+G[a+1])/2].map(ie.c2p).map(Math.round);o&&(s[1]=u.constrain(s[1]+(s[1]>s[0])?1:-1,x[0],x[1]));var l=n.select(this).attr(o?"x":"y",J).attr(o?"y":"x",n.min(s)).attr(o?"width":"height",Math.max(Z,2)).attr(o?"height":"width",Math.max(n.max(s)-n.min(s),2));if(t._fillgradient)h.gradient(l,r,t._id,o?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var c=H(e).replace("e-","");l.attr("fill",i(c).toHexString())}}));var b=e.select("."+M.cblines).selectAll("path."+M.cbline).data(N.color&&N.width?Y:[]);b.enter().append("path").classed(M.cbline,!0),b.exit().remove(),b.each((function(e){var t=J,r=Math.round(ie.c2p(e))+N.width/2%1;n.select(this).attr("d","M"+(o?t+","+r:r+","+t)+(o?"h":"v")+Z).call(h.lineGroupStyle,N.width,V(e),N.dash)})),pe.selectAll("g."+ie._id+"tick,path").remove();var _=J+Z+(A||0)/2-("outside"===t.ticks?1:0),k=s.calcTicks(ie),T=s.getTickSigns(ie)[2];return s.drawTicks(r,ie,{vals:"inside"===ie.ticks?s.clipEnds(ie,k):k,layer:pe,path:s.makeTickPath(ie,_,T),transFn:s.makeTransTickFn(ie)}),s.drawLabels(r,ie,{vals:k,layer:pe,transFn:s.makeTransTickLabelFn(ie),labelFns:s.makeLabelFns(ie,_)})}function _e(){var n,s=Z+A/2;-1===de.indexOf("inside")&&(n=h.bBox(pe.node()),s+=o?n.width:n.height),ce=fe.select("text");var u=0,f=o&&"top"===j,v=!o&&"right"===j,m=0;if(ce.node()&&!ce.classed(M.jsPlaceholder)){var y,x=fe.select(".h"+ie._id+"title-math-group").node();x&&(o&&ae||!o&&!ae)?(u=(n=h.bBox(x)).width,y=n.height):(u=(n=h.bBox(fe.node())).right-z.l-(o?J:ne),y=n.bottom-z.t-(o?ne:J),o||"top"!==j||(s+=n.height,m=n.height)),v&&(ce.attr("transform",c(u/2+he/2,0)),u*=2),s=Math.max(s,o?u:y)}var b=2*(o?P:O)+s+S+A/2,w=0;!o&&B.text&&"bottom"===L&&D<=0&&(b+=w=b/2,m+=w),R._hColorbarMoveTitle=w,R._hColorbarMoveCBTitle=m;var F=S+A;e.select("."+M.cbbg).attr("x",(o?J:ne)-F/2-(o?P:0)).attr("y",(o?ne:J)-(o?K:O+m-w)).attr(o?"width":"height",Math.max(b-w,2)).attr(o?"height":"width",Math.max(K+F,2)).call(p.fill,E).call(p.stroke,t.bordercolor).style("stroke-width",S);var N=v?Math.max(u-10,0):0;if(e.selectAll("."+M.cboutline).attr("x",(o?J:ne+P)+N).attr("y",(o?ne+O-K:J)+(f?ve:0)).attr(o?"width":"height",Math.max(Z,2)).attr(o?"height":"width",Math.max(K-(o?2*O+ve:2*P+N),2)).call(p.stroke,t.outlinecolor).style({fill:"none","stroke-width":A}),e.attr("transform",c(z.l-(o?Q*b:0),z.t-(o?0:(1-ee)*b-m))),!o&&(S||i(E).getAlpha()&&!i.equals(R.paper_bgcolor,E))){var U=pe.selectAll("text"),V=U[0].length,H=e.select("."+M.cbbg).node(),q=h.bBox(H),W=h.getTranslate(e),G=2;U.each((function(e,t){var r=0,n=V-1;if(t===r||t===n){var i,a=h.bBox(this),o=h.getTranslate(this);if(t===n){var s=a.right+o.x;(i=q.right+W.x+ne-S-G+I-s)>0&&(i=0)}else if(t===r){var l=a.left+o.x;(i=q.left+W.x+ne+S+G-l)<0&&(i=0)}i&&(V<3?this.setAttribute("transform","translate("+i+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}}))}var Y={},X=k[C],$=T[C],te=k[L],re=T[L],oe=b-Z;o?("pixels"===d?(Y.y=D,Y.t=K*te,Y.b=K*re):(Y.t=Y.b=0,Y.yt=D+l*te,Y.yb=D-l*re),"pixels"===_?(Y.x=I,Y.l=b*X,Y.r=b*$):(Y.l=oe*X,Y.r=oe*$,Y.xl=I-g*X,Y.xr=I+g*$)):("pixels"===d?(Y.x=I,Y.l=K*X,Y.r=K*$):(Y.l=Y.r=0,Y.xl=I+l*X,Y.xr=I-l*$),"pixels"===_?(Y.y=1-D,Y.t=b*te,Y.b=b*re):(Y.t=oe*te,Y.b=oe*re,Y.yt=D-g*te,Y.yb=D+g*re)),a.autoMargin(r,t._id,Y)}return u.syncOrAsync([a.previousPromises,ye,be,xe,a.previousPromises,_e],r)}(r,t,e);g&&g.then&&(e._promises||[]).push(g),e._context.edits.colorbarPosition&&function(e,t,r){var n,i,a,s="v"===t.orientation,u=r._fullLayout,f=u._size;l.init({element:e.node(),gd:r,prepFn:function(){n=e.attr("transform"),d(e)},moveFn:function(r,o){e.attr("transform",n+c(r,o)),i=l.align((s?t._uFrac:t._vFrac)+r/f.w,s?t._thickFrac:t._lenFrac,0,1,t.xanchor),a=l.align((s?t._vFrac:1-t._uFrac)-o/f.h,s?t._lenFrac:t._thickFrac,0,1,t.yanchor);var u=l.getCursor(i,a,t.xanchor,t.yanchor);d(e,u)},doneFn:function(){if(d(e),void 0!==i&&void 0!==a){var n={};n[t._propPrefix+"x"]=i,n[t._propPrefix+"y"]=a,void 0!==t._traceIndex?o.call("_guiRestyle",r,n,t._traceIndex):o.call("_guiRelayout",r,n)}}})}(r,t,e)})),t.exit().each((function(t){a.autoMargin(e,t._id)})).remove(),t.order()}}},76228:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e){return n.isPlainObject(e.colorbar)}},12311:function(e,t,r){"use strict";e.exports={moduleType:"component",name:"colorbar",attributes:r(63583),supplyDefaults:r(62499),draw:r(98981).draw,hasColorbar:r(76228)}},50693:function(e,t,r){"use strict";var n=r(63583),i=r(30587).counter,a=r(78607),o=r(63282).scales;function s(e){return"`"+e+"`"}a(o),e.exports=function(e,t){e=e||"";var r,a=(t=t||{}).cLetter||"c",l=("onlyIfNumerical"in t?t.onlyIfNumerical:Boolean(e),"noScale"in t?t.noScale:"marker.line"===e),u="showScaleDflt"in t?t.showScaleDflt:"z"===a,c="string"===typeof t.colorscaleDflt?o[t.colorscaleDflt]:null,f=t.editTypeOverride||"",d=e?e+".":"";"colorAttr"in t?(r=t.colorAttr,t.colorAttr):s(d+(r={z:"z",c:"color"}[a]));var h=a+"auto",p=a+"min",v=a+"max",m=a+"mid",g=(s(d+h),s(d+p),s(d+v),{});g[p]=g[v]=void 0;var y={};y[h]=!1;var x={};return"color"===r&&(x.color={valType:"color",arrayOk:!0,editType:f||"style"},t.anim&&(x.color.anim=!0)),x[h]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:g},x[p]={valType:"number",dflt:null,editType:f||"plot",impliedEdits:y},x[v]={valType:"number",dflt:null,editType:f||"plot",impliedEdits:y},x[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:g},x.colorscale={valType:"colorscale",editType:"calc",dflt:c,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:"boolean",dflt:!1!==t.autoColorDflt,editType:"calc",impliedEdits:{colorscale:void 0}},x.reversescale={valType:"boolean",dflt:!1,editType:"plot"},l||(x.showscale={valType:"boolean",dflt:u,editType:"calc"},x.colorbar=n),t.noColorAxis||(x.coloraxis={valType:"subplotid",regex:i("coloraxis"),dflt:null,editType:"calc"}),x}},78803:function(e,t,r){"use strict";var n=r(92770),i=r(71828),a=r(52075).extractOpts;e.exports=function(e,t,r){var o,s=e._fullLayout,l=r.vals,u=r.containerStr,c=u?i.nestedProperty(t,u).get():t,f=a(c),d=!1!==f.auto,h=f.min,p=f.max,v=f.mid,m=function(){return i.aggNums(Math.min,null,l)},g=function(){return i.aggNums(Math.max,null,l)};void 0===h?h=m():d&&(h=c._colorAx&&n(h)?Math.min(h,m()):m()),void 0===p?p=g():d&&(p=c._colorAx&&n(p)?Math.max(p,g()):g()),d&&void 0!==v&&(p-v>v-h?h=v-(p-v):p-v=0?s.colorscale.sequential:s.colorscale.sequentialminus,f._sync("colorscale",o))}},33046:function(e,t,r){"use strict";var n=r(71828),i=r(52075).hasColorscale,a=r(52075).extractOpts;e.exports=function(e,t){function r(e,t){var r=e["_"+t];void 0!==r&&(e[t]=r)}function o(e,i){var o=i.container?n.nestedProperty(e,i.container).get():e;if(o)if(o.coloraxis)o._colorAx=t[o.coloraxis];else{var s=a(o),l=s.auto;(l||void 0===s.min)&&r(o,i.min),(l||void 0===s.max)&&r(o,i.max),s.autocolorscale&&r(o,"colorscale")}}for(var s=0;s=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function p(e,t){t=t||{};for(var r=e.domain,o=e.range,l=o.length,u=new Array(l),c=0;c4/3-s?o:s}},70461:function(e,t,r){"use strict";var n=r(71828),i=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];e.exports=function(e,t,r,a){return e="left"===r?0:"center"===r?1:"right"===r?2:n.constrain(Math.floor(3*e),0,2),t="bottom"===a?0:"middle"===a?1:"top"===a?2:n.constrain(Math.floor(3*t),0,2),i[t][e]}},64505:function(e,t){"use strict";t.selectMode=function(e){return"lasso"===e||"select"===e},t.drawMode=function(e){return"drawclosedpath"===e||"drawopenpath"===e||"drawline"===e||"drawrect"===e||"drawcircle"===e},t.openMode=function(e){return"drawline"===e||"drawopenpath"===e},t.rectMode=function(e){return"select"===e||"drawline"===e||"drawrect"===e||"drawcircle"===e},t.freeMode=function(e){return"lasso"===e||"drawclosedpath"===e||"drawopenpath"===e},t.selectingOrDrawing=function(e){return t.freeMode(e)||t.rectMode(e)}},28569:function(e,t,r){"use strict";var n=r(48956),i=r(57035),a=r(38520),o=r(71828).removeElement,s=r(85555),l=e.exports={};l.align=r(92807),l.getCursor=r(70461);var u=r(26041);function c(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}function f(e){return n(e.changedTouches?e.changedTouches[0]:e,document.body)}l.unhover=u.wrapped,l.unhoverRaw=u.raw,l.init=function(e){var t,r,n,u,d,h,p,v,m=e.gd,g=1,y=m._context.doubleClickDelay,x=e.element;m._mouseDownTime||(m._mouseDownTime=0),x.style.pointerEvents="all",x.onmousedown=_,a?(x._ontouchstart&&x.removeEventListener("touchstart",x._ontouchstart),x._ontouchstart=_,x.addEventListener("touchstart",_,{passive:!1})):x.ontouchstart=_;var b=e.clampFn||function(e,t,r){return Math.abs(e)y&&(g=Math.max(g-1,1)),m._dragged)e.doneFn&&e.doneFn();else if(e.clickFn&&e.clickFn(g,h),!v){var r;try{r=new MouseEvent("click",t)}catch(a){var n=f(t);(r=document.createEvent("MouseEvents")).initMouseEvent("click",t.bubbles,t.cancelable,t.view,t.detail,t.screenX,t.screenY,n[0],n[1],t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget)}p.dispatchEvent(r)}m._dragging=!1,m._dragged=!1}else m._dragged=!1}},l.coverSlip=c},26041:function(e,t,r){"use strict";var n=r(11086),i=r(79990),a=r(24401).getGraphDiv,o=r(26675),s=e.exports={};s.wrapped=function(e,t,r){(e=a(e))._fullLayout&&i.clear(e._fullLayout._uid+o.HOVERID),s.raw(e,t,r)},s.raw=function(e,t){var r=e._fullLayout,i=e._hoverdata;t||(t={}),t.target&&!e._dragged&&!1===n.triggerHandler(e,"plotly_beforehover",t)||(r._hoverlayer.selectAll("g").remove(),r._hoverlayer.selectAll("line").remove(),r._hoverlayer.selectAll("circle").remove(),e._hoverdata=void 0,t.target&&i&&e.emit("plotly_unhover",{event:t,points:i}))}},79952:function(e,t){"use strict";t.P={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"},t.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(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.numberFormat,o=r(92770),s=r(84267),l=r(73972),u=r(7901),c=r(21081),f=i.strTranslate,d=r(63893),h=r(77922),p=r(18783).LINE_SPACING,v=r(37822).DESELECTDIM,m=r(34098),g=r(39984),y=r(23469).appendArrayPointValue,x=e.exports={};function b(e,t,r){var n=t.fillpattern,i=n&&x.getPatternAttr(n.shape,0,"");if(i){var a=x.getPatternAttr(n.bgcolor,0,null),o=x.getPatternAttr(n.fgcolor,0,null),s=n.fgopacity,l=x.getPatternAttr(n.size,0,8),c=x.getPatternAttr(n.solidity,0,.3),f=t.uid;x.pattern(e,"point",r,f,i,l,c,void 0,n.fillmode,a,o,s)}else t.fillcolor&&e.call(u.fill,t.fillcolor)}x.font=function(e,t,r,n){i.isPlainObject(t)&&(n=t.color,r=t.size,t=t.family),t&&e.style("font-family",t),r+1&&e.style("font-size",r+"px"),n&&e.call(u.fill,n)},x.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)},x.setSize=function(e,t,r){e.attr("width",t).attr("height",r)},x.setRect=function(e,t,r,n,i){e.call(x.setPosition,t,r).call(x.setSize,n,i)},x.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);return!!(o(i)&&o(a)&&t.node())&&("text"===t.node().nodeName?t.attr("x",i).attr("y",a):t.attr("transform",f(i,a)),!0)},x.translatePoints=function(e,t,r){e.each((function(e){var i=n.select(this);x.translatePoint(e,i,t,r)}))},x.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")},x.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,i=t.yaxis;e.each((function(t){var a=t[0].trace,o=a.xcalendar,s=a.ycalendar,u=l.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(u).each((function(e){x.hideOutsideRangePoint(e,n.select(this),r,i,o,s)}))}))}},x.crispRound=function(e,t,r){return t&&o(t)?e._context.staticPlot?t:t<1?1:Math.round(t):r||0},x.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";u.stroke(t,n||a.color),x.dashLine(t,s,o)},x.lineGroupStyle=function(e,t,r,i){e.style("fill","none").each((function(e){var a=(((e||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=i||a.dash||"";n.select(this).call(u.stroke,r||a.color).call(x.dashLine,s,o)}))},x.dashLine=function(e,t,r){r=+r||0,t=x.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})},x.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return"solid"===e?e="":"dot"===e?e=r+"px,"+r+"px":"dash"===e?e=3*r+"px,"+3*r+"px":"longdash"===e?e=5*r+"px,"+5*r+"px":"dashdot"===e?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":"longdashdot"===e&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e},x.singleFillStyle=function(e,t){var r=n.select(e.node());b(e,((r.data()[0]||[])[0]||{}).trace||{},t)},x.fillGroupStyle=function(e,t){e.style("stroke-width",0).each((function(e){var r=n.select(this);e[0].trace&&b(r,e[0].trace,t)}))};var _=r(90998);x.symbolNames=[],x.symbolFuncs=[],x.symbolBackOffs=[],x.symbolNeedLines={},x.symbolNoDot={},x.symbolNoFill={},x.symbolList=[],Object.keys(_).forEach((function(e){var t=_[e],r=t.n;x.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),x.symbolNames[r]=e,x.symbolFuncs[r]=t.f,x.symbolBackOffs[r]=t.backoff||0,t.needLine&&(x.symbolNeedLines[r]=!0),t.noDot?x.symbolNoDot[r]=!0:x.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(x.symbolNoFill[r]=!0)}));var w=x.symbolNames.length;function k(e,t,r,n){var i=e%100;return x.symbolFuncs[i](t,r,n)+(e>=200?"M0,0.5L0.5,0L0,-0.5L-0.5,0Z":"")}x.symbolNumber=function(e){if(o(e))e=+e;else if("string"===typeof e){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),(e=x.symbolNames.indexOf(e))>=0&&(e+=t)}return e%100>=w||e>=400?0:Math.floor(Math.max(e,0))};var T={x1:1,x2:0,y1:0,y2:0},M={x1:0,x2:0,y1:1,y2:0},A=a("~f"),S={radial:{node:"radialGradient"},radialreversed:{node:"radialGradient",reversed:!0},horizontal:{node:"linearGradient",attrs:T},horizontalreversed:{node:"linearGradient",attrs:T,reversed:!0},vertical:{node:"linearGradient",attrs:M},verticalreversed:{node:"linearGradient",attrs:M,reversed:!0}};x.gradient=function(e,t,r,a,o,l){for(var c=o.length,f=S[a],d=new Array(c),h=0;h=100;var f=re(e,r),d=W(e,r);t.attr("d",k(c,l,f,d))}var h,p,v,m=!1;if(e.so)v=s.outlierwidth,p=s.outliercolor,h=o.outliercolor;else{var g=(s||{}).width;v=(e.mlw+1||g+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,p="mlc"in e?e.mlcc=n.lineScale(e.mlc):i.isArrayOrTypedArray(s.color)?u.defaultLine:s.color,i.isArrayOrTypedArray(o.color)&&(h=u.defaultLine,m=!0),h="mc"in e?e.mcc=n.markerScale(e.mc):o.color||"rgba(0,0,0,0)",n.selectedColorFn&&(h=n.selectedColorFn(e))}if(e.om)t.call(u.stroke,h).style({"stroke-width":(v||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:v)+"px");var y=o.gradient,b=e.mgt;b?m=!0:b=y&&y.type,i.isArrayOrTypedArray(b)&&(b=b[0],S[b]||(b=0));var _=o.pattern,w=_&&x.getPatternAttr(_.shape,e.i,"");if(b&&"none"!==b){var T=e.mgc;T?m=!0:T=y.color;var M=r.uid;m&&(M+="-"+e.i),x.gradient(t,a,M,b,[[0,T],[1,h]],"fill")}else if(w){var A=x.getPatternAttr(_.bgcolor,e.i,null),E=x.getPatternAttr(_.fgcolor,e.i,null),C=_.fgopacity,L=x.getPatternAttr(_.size,e.i,8),P=x.getPatternAttr(_.solidity,e.i,.3),O=e.mcc||i.isArrayOrTypedArray(_.shape)||i.isArrayOrTypedArray(_.bgcolor)||i.isArrayOrTypedArray(_.size)||i.isArrayOrTypedArray(_.solidity),I=r.uid;O&&(I+="-"+e.i),x.pattern(t,"point",a,I,w,L,P,e.mcc,_.fillmode,A,E,C)}else u.fill(t,h);v&&u.stroke(t,p)}},x.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=x.tryColorscale(r,""),t.lineScale=x.tryColorscale(r,"line"),l.traceIs(e,"symbols")&&(t.ms2mrc=m.isBubble(e)?g(e):function(){return(r.size||6)/2}),e.selectedpoints&&i.extendFlat(t,x.makeSelectedPointStyleFns(e)),t},x.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},a=e.marker||{},o=r.marker||{},s=n.marker||{},u=a.opacity,c=o.opacity,f=s.opacity,d=void 0!==c,h=void 0!==f;(i.isArrayOrTypedArray(u)||d||h)&&(t.selectedOpacityFn=function(e){var t=void 0===e.mo?a.opacity:e.mo;return e.selected?d?c:t:h?f:v*t});var p=a.color,m=o.color,g=s.color;(m||g)&&(t.selectedColorFn=function(e){var t=e.mcc||p;return e.selected?m||t:g||t});var y=a.size,x=o.size,b=s.size,_=void 0!==x,w=void 0!==b;return l.traceIs(e,"symbols")&&(_||w)&&(t.selectedSizeFn=function(e){var t=e.mrc||y/2;return e.selected?_?x/2:t:w?b/2:t}),t},x.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,c=o.color;return t.selectedTextColorFn=function(e){var t=e.tc||s;return e.selected?l||t:c||(l?t:u.addOpacity(t,v))},t},x.selectedPointStyle=function(e,t){if(e.size()&&t.selectedpoints){var r=x.makeSelectedPointStyleFns(t),i=t.marker||{},a=[];r.selectedOpacityFn&&a.push((function(e,t){e.style("opacity",r.selectedOpacityFn(t))})),r.selectedColorFn&&a.push((function(e,t){u.fill(e,r.selectedColorFn(t))})),r.selectedSizeFn&&a.push((function(e,n){var a=n.mx||i.symbol||0,o=r.selectedSizeFn(n);e.attr("d",k(x.symbolNumber(a),o,re(n,t),W(n,t))),n.mrc2=o})),a.length&&e.each((function(e){for(var t=n.select(this),r=0;r0?r:0}function I(e,t,r){return r&&(e=B(e)),t?R(e[1]):D(e[0])}function D(e){var t=n.round(e,2);return E=t,t}function R(e){var t=n.round(e,2);return C=t,t}function z(e,t,r,n){var i=e[0]-t[0],a=e[1]-t[1],o=r[0]-t[0],s=r[1]-t[1],l=Math.pow(i*i+a*a,.25),u=Math.pow(o*o+s*s,.25),c=(u*u*i-l*l*o)*n,f=(u*u*a-l*l*s)*n,d=3*u*(l+u),h=3*l*(l+u);return[[D(t[0]+(d&&c/d)),R(t[1]+(d&&f/d))],[D(t[0]-(h&&c/h)),R(t[1]-(h&&f/h))]]}x.textPointStyle=function(e,t,r){if(e.size()){var a;if(t.selectedpoints){var o=x.makeSelectedTextStyleFns(t);a=o.selectedTextColorFn}var s=t.texttemplate,l=r._fullLayout;e.each((function(e){var o=n.select(this),u=s?i.extractOption(e,t,"txt","texttemplate"):i.extractOption(e,t,"tx","text");if(u||0===u){if(s){var c=t._module.formatLabels,f=c?c(e,t,l):{},h={};y(h,t,e.i);var p=t._meta||{};u=i.texttemplateString(u,f,l._d3locale,h,e,p)}var v=e.tp||t.textposition,m=O(e,t),g=a?a(e):e.tc||t.textfont.color;o.call(x.font,e.tf||t.textfont.family,m,g).text(u).call(d.convertToTspans,r).call(P,v,m,e.mrc)}else o.remove()}))}},x.selectedTextStyle=function(e,t){if(e.size()&&t.selectedpoints){var r=x.makeSelectedTextStyleFns(t);e.each((function(e){var i=n.select(this),a=r.selectedTextColorFn(e),o=e.tp||t.textposition,s=O(e,t);u.fill(i,a);var c=l.traceIs(t,"bar-like");P(i,o,s,e.mrc2||e.mrc,c)}))}},x.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r,n="M"+e[0],i=[];for(r=1;r=u||w>=f&&w<=u)&&(k<=d&&k>=c||k>=d&&k<=c)&&(e=[w,k])}return e}x.steps=function(e){var t=F[e]||N;return function(e){for(var r="M"+D(e[0][0])+","+R(e[0][1]),n=e.length,i=1;i=1e4&&(x.savedBBoxes={},j=0),r&&(x.savedBBoxes[r]=m),j++,i.extendFlat({},m)},x.setClipUrl=function(e,t,r){e.attr("clip-path",V(t,r))},x.getTranslate=function(e){var t=(e[e.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,(function(e,t,r){return[t,r].join(" ")})).split(" ");return{x:+t[0]||0,y:+t[1]||0}},x.setTranslate=function(e,t,r){var n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",a=e[n]("transform")||"";return t=t||0,r=r||0,a=a.replace(/(\btranslate\(.*?\);?)/,"").trim(),a=(a+=f(t,r)).trim(),e[i]("transform",a),a},x.getScale=function(e){var t=(e[e.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,(function(e,t,r){return[t,r].join(" ")})).split(" ");return{x:+t[0]||1,y:+t[1]||1}},x.setScale=function(e,t,r){var n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",a=e[n]("transform")||"";return t=t||1,r=r||1,a=a.replace(/(\bscale\(.*?\);?)/,"").trim(),a=(a+="scale("+t+","+r+")").trim(),e[i]("transform",a),a};var H=/\s*sc.*/;x.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,e){var n=1===t&&1===r?"":"scale("+t+","+r+")";e.each((function(){var e=(this.getAttribute("transform")||"").replace(H,"");e=(e+=n).trim(),this.setAttribute("transform",e)}))}};var q=/translate\([^)]*\)\s*$/;function W(e,t){var r;return e&&(r=e.mf),void 0===r&&(r=t.marker&&t.marker.standoff||0),t._geo||t._xA?r:-r}x.setTextPointsScale=function(e,t,r){e&&e.each((function(){var e,i=n.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(q);e=1===t&&1===r?[]:[f(o,s),"scale("+t+","+r+")",f(-o,-s)],l&&e.push(l),i.attr("transform",e.join(""))}}))},x.getMarkerStandoff=W;var G,Y,Z,X,K,$,J=Math.atan2,Q=Math.cos,ee=Math.sin;function te(e,t){var r=t[0],n=t[1];return[r*Q(e)-n*ee(e),r*ee(e)+n*Q(e)]}function re(e,t){var r,n,i=e.ma;void 0===i&&(i=t.marker.angle||0);var a=t.marker.angleref;if("previous"===a||"north"===a){if(t._geo){var s=t._geo.project(e.lonlat);r=s[0],n=s[1]}else{var l=t._xA,u=t._yA;if(!l||!u)return 90;r=l.c2p(e.x),n=u.c2p(e.y)}if(t._geo){var c,f=e.lonlat[0],d=e.lonlat[1],h=t._geo.project([f,d+1e-5]),p=t._geo.project([f+1e-5,d]),v=J(p[1]-n,p[0]-r),m=J(h[1]-n,h[0]-r);if("north"===a)c=i/180*Math.PI;else if("previous"===a){var g=f/180*Math.PI,y=d/180*Math.PI,x=G/180*Math.PI,b=Y/180*Math.PI,_=x-g,w=Q(b)*ee(_),k=ee(b)*Q(y)-Q(b)*ee(y)*Q(_);c=-J(w,k)-Math.PI,G=f,Y=d}var T=te(v,[Q(c),0]),M=te(m,[ee(c),0]);i=J(T[1]+M[1],T[0]+M[0])/Math.PI*180,"previous"!==a||$===t.uid&&e.i===K+1||(i=null)}if("previous"===a&&!t._geo)if($===t.uid&&e.i===K+1&&o(r)&&o(n)){var A=r-Z,S=n-X,E=t.line&&t.line.shape||"",C=E.slice(E.length-1);"h"===C&&(S=0),"v"===C&&(A=0),i+=J(S,A)/Math.PI*180+90}else i=null}return Z=r,X=n,K=e.i,$=t.uid,i}x.getMarkerAngle=re},90998:function(e,t,r){"use strict";var n,i,a,o,s=r(95616),l=r(39898).round,u="M0,0Z",c=Math.sqrt(2),f=Math.sqrt(3),d=Math.PI,h=Math.cos,p=Math.sin;function v(e){return null===e}function m(e,t,r){if((!e||e%360===0)&&!t)return r;if(a===e&&o===t&&n===r)return i;function l(e,r){var n=h(e),i=p(e),a=r[0],o=r[1]+(t||0);return[a*n-o*i,a*i+o*n]}a=e,o=t,n=r;for(var u=e/180*d,c=0,f=0,v=s(r),m="",g=0;g0,f=e._context.staticPlot;t.each((function(t){var d,h=t[0].trace,p=h.error_x||{},v=h.error_y||{};h.ids&&(d=function(e){return e.id});var m=o.hasMarkers(h)&&h.marker.maxdisplayed>0;v.visible||p.visible||(t=[]);var g=n.select(this).selectAll("g.errorbar").data(t,d);if(g.exit().remove(),t.length){p.visible||g.selectAll("path.xerror").remove(),v.visible||g.selectAll("path.yerror").remove(),g.style("opacity",1);var y=g.enter().append("g").classed("errorbar",!0);c&&y.style("opacity",0).transition().duration(s.duration).style("opacity",1),a.setClipUrl(g,r.layerClipId,e),g.each((function(e){var t=n.select(this),r=function(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return void 0!==e.yh&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),i(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),void 0!==e.xh&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),i(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}(e,l,u);if(!m||e.vis){var a,o=t.select("path.yerror");if(v.visible&&i(r.x)&&i(r.yh)&&i(r.ys)){var d=v.width;a="M"+(r.x-d)+","+r.yh+"h"+2*d+"m-"+d+",0V"+r.ys,r.noYS||(a+="m-"+d+",0h"+2*d),o.size()?c&&(o=o.transition().duration(s.duration).ease(s.easing)):o=t.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("yerror",!0),o.attr("d",a)}else o.remove();var h=t.select("path.xerror");if(p.visible&&i(r.y)&&i(r.xh)&&i(r.xs)){var g=(p.copy_ystyle?v:p).width;a="M"+r.xh+","+(r.y-g)+"v"+2*g+"m0,-"+g+"H"+r.xs,r.noXS||(a+="m0,-"+g+"v"+2*g),h.size()?c&&(h=h.transition().duration(s.duration).ease(s.easing)):h=t.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("xerror",!0),h.attr("d",a)}else h.remove()}}))}}))}},62662:function(e,t,r){"use strict";var n=r(39898),i=r(7901);e.exports=function(e){e.each((function(e){var t=e[0].trace,r=t.error_y||{},a=t.error_x||{},o=n.select(this);o.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(i.stroke,r.color),a.copy_ystyle&&(a=r),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(i.stroke,a.color)}))}},77914:function(e,t,r){"use strict";var n=r(41940),i=r(528).hoverlabel,a=r(1426).extendFlat;e.exports={hoverlabel:{bgcolor:a({},i.bgcolor,{arrayOk:!0}),bordercolor:a({},i.bordercolor,{arrayOk:!0}),font:n({arrayOk:!0,editType:"none"}),align:a({},i.align,{arrayOk:!0}),namelength:a({},i.namelength,{arrayOk:!0}),editType:"none"}}},30732:function(e,t,r){"use strict";var n=r(71828),i=r(73972);function a(e,t,r,i){i=i||n.identity,Array.isArray(e)&&(t[0][r]=i(e))}e.exports=function(e){var t=e.calcdata,r=e._fullLayout;function o(e){return function(t){return n.coerceHoverinfo({hoverinfo:t},{_module:e._module},r)}}for(var s=0;s=0&&r.index_[0]._length||le<0||le>w[0]._length)return p.unhoverRaw(e,t)}else se="xpx"in t?t.xpx:_[0]._length/2,le="ypx"in t?t.ypx:w[0]._length/2;if(t.pointerX=se+_[0]._offset,t.pointerY=le+w[0]._offset,q="xval"in t?g.flat(l,t.xval):g.p2c(_,se),W="yval"in t?g.flat(l,t.yval):g.p2c(w,le),!i(q[0])||!i(W[0]))return o.warn("Fx.hover failed",t,e),p.unhoverRaw(e,t)}var fe=1/0;function de(e,r){for(Y=0;Yre&&(ne.splice(0,re),fe=ne[0].distance),y&&0!==H&&0===ne.length){te.distance=H,te.index=!1;var f=X._module.hoverPoints(te,Q,ee,"closest",{hoverLayer:c._hoverlayer});if(f&&(f=f.filter((function(e){return e.spikeDistance<=H}))),f&&f.length){var d,p=f.filter((function(e){return e.xa.showspikes&&"hovered data"!==e.xa.spikesnap}));if(p.length){var v=p[0];i(v.x0)&&i(v.y0)&&(d=pe(v),(!ae.vLinePoint||ae.vLinePoint.spikeDistance>d.spikeDistance)&&(ae.vLinePoint=d))}var m=f.filter((function(e){return e.ya.showspikes&&"hovered data"!==e.ya.spikesnap}));if(m.length){var x=m[0];i(x.x0)&&i(x.y0)&&(d=pe(x),(!ae.hLinePoint||ae.hLinePoint.spikeDistance>d.spikeDistance)&&(ae.hLinePoint=d))}}}}}function he(e,t,r){for(var n,i=null,a=1/0,o=0;o0&&Math.abs(e.distance)Me-1;Ae--)Le(ne[Ae]);ne=Se,ye()}var Pe=e._hoverdata,Oe=[],Ie=U(e),De=V(e);for(G=0;G1||ne.length>1)||"closest"===I&&oe&&ne.length>1,Ye=h.combine(c.plot_bgcolor||h.background,c.paper_bgcolor),Ze=O(ne,{gd:e,hovermode:I,rotateLabels:Ge,bgColor:Ye,container:c._hoverlayer,outerContainer:c._paper.node(),commonLabelOpts:c.hoverlabel,hoverdistance:c.hoverdistance}),Xe=Ze.hoverLabels;if(g.isUnifiedHover(I)||(function(e,t,r,n){var i,a,o,s,l,u,c,f=t?"xa":"ya",d=t?"ya":"xa",h=0,p=1,v=e.size(),m=new Array(v),g=0,y=n.minX,x=n.maxX,b=n.minY,_=n.maxY,w=function(e){return e*r._invScaleX},T=function(e){return e*r._invScaleY};function M(e){var t=e[0],r=e[e.length-1];if(a=t.pmin-t.pos-t.dp+t.size,o=r.pos+r.dp+r.size-t.pmax,a>.01){for(l=e.length-1;l>=0;l--)e[l].dp+=a;i=!1}if(!(o<.01)){if(a<-.01){for(l=e.length-1;l>=0;l--)e[l].dp-=o;i=!1}if(i){var n=0;for(s=0;st.pmax&&n++;for(s=e.length-1;s>=0&&!(n<=0);s--)(u=e[s]).pos>t.pmax-1&&(u.del=!0,n--);for(s=0;s=0;l--)e[l].dp-=o;for(s=e.length-1;s>=0&&!(n<=0);s--)(u=e[s]).pos+u.dp+u.size>t.pmax&&(u.del=!0,n--)}}}for(e.each((function(e){var n=e[f],i=e[d],a="x"===n._id.charAt(0),o=n.range;0===g&&o&&o[0]>o[1]!==a&&(p=-1);var s=0,l=a?r.width:r.height;if("x"===r.hovermode||"y"===r.hovermode){var u,c,h=D(e,t),v=e.anchor,M="end"===v?-1:1;if("middle"===v)c=(u=e.crossPos+(a?T(h.y-e.by/2):w(e.bx/2+e.tx2width/2)))+(a?T(e.by):w(e.bx));else if(a)c=(u=e.crossPos+T(A+h.y)-T(e.by/2-A))+T(e.by);else{var S=w(M*A+h.x),E=S+w(M*e.bx);u=e.crossPos+Math.min(S,E),c=e.crossPos+Math.max(S,E)}a?void 0!==b&&void 0!==_&&Math.min(c,_)-Math.max(u,b)>1&&("left"===i.side?(s=i._mainLinePosition,l=r.width):l=i._mainLinePosition):void 0!==y&&void 0!==x&&Math.min(c,x)-Math.max(u,y)>1&&("top"===i.side?(s=i._mainLinePosition,l=r.height):l=i._mainLinePosition)}m[g++]=[{datum:e,traceIndex:e.trace.index,dp:0,pos:e.pos,posref:e.posref,size:e.by*(a?k:1)/2,pmin:s,pmax:l}]})),m.sort((function(e,t){return e[0].posref-t[0].posref||p*(t[0].traceIndex-e[0].traceIndex)}));!i&&h<=v;){for(h++,i=!0,s=0;s.01&&C.pmin===L.pmin&&C.pmax===L.pmax){for(l=E.length-1;l>=0;l--)E[l].dp+=a;for(S.push.apply(S,E),m.splice(s+1,1),c=0,l=S.length-1;l>=0;l--)c+=S[l].dp;for(o=c/S.length,l=S.length-1;l>=0;l--)S[l].dp-=o;i=!1}else s++}m.forEach(M)}for(s=m.length-1;s>=0;s--){var P=m[s];for(l=P.length-1;l>=0;l--){var O=P[l],I=O.datum;I.offset=O.dp,I.del=O.del}}}(Xe,Ge,c,Ze.commonLabelBoundingBox),R(Xe,Ge,c._invScaleX,c._invScaleY)),s&&s.tagName){var Ke=m.getComponentMethod("annotations","hasClickToShow")(e,Oe);f(n.select(s),Ke?"pointer":"")}s&&!a&&function(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}(e,0,Pe)&&(Pe&&e.emit("plotly_unhover",{event:t,points:Pe}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:_,yaxes:w,xvals:q,yvals:W}))}(e,t,r,a,s)}))},t.loneHover=function(e,t){var r=!0;Array.isArray(e)||(r=!1,e=[e]);var i=t.gd,a=U(i),o=V(i),s=O(e.map((function(e){var r=e._x0||e.x0||e.x||0,n=e._x1||e.x1||e.x||0,s=e._y0||e.y0||e.y||0,l=e._y1||e.y1||e.y||0,u=e.eventData;if(u){var c=Math.min(r,n),f=Math.max(r,n),d=Math.min(s,l),p=Math.max(s,l),v=e.trace;if(m.traceIs(v,"gl3d")){var g=i._fullLayout[v.scene]._scene.container,y=g.offsetLeft,x=g.offsetTop;c+=y,f+=y,d+=x,p+=x}u.bbox={x0:c+o,x1:f+o,y0:d+a,y1:p+a},t.inOut_bbox&&t.inOut_bbox.push(u.bbox)}else u=!1;return{color:e.color||h.defaultLine,x0:e.x0||e.x||0,x1:e.x1||e.x||0,y0:e.y0||e.y||0,y1:e.y1||e.y||0,xLabel:e.xLabel,yLabel:e.yLabel,zLabel:e.zLabel,text:e.text,name:e.name,idealAlign:e.idealAlign,borderColor:e.borderColor,fontFamily:e.fontFamily,fontSize:e.fontSize,fontColor:e.fontColor,nameLength:e.nameLength,textAlign:e.textAlign,trace:e.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:e.hovertemplate||!1,hovertemplateLabels:e.hovertemplateLabels||!1,eventData:u}})),{gd:i,hovermode:"closest",rotateLabels:!1,bgColor:t.bgColor||h.background,container:n.select(t.container),outerContainer:t.outerContainer||t.container}).hoverLabels,l=0,u=0;return s.sort((function(e,t){return e.y0-t.y0})).each((function(e,r){var n=e.y0-e.by/2;e.offset=n-5([\s\S]*)<\/extra>/;function O(e,t){var r=t.gd,i=r._fullLayout,a=t.hovermode,u=t.rotateLabels,f=t.bgColor,p=t.container,v=t.outerContainer,w=t.commonLabelOpts||{};if(0===e.length)return[[]];var k=t.fontFamily||y.HOVERFONT,T=t.fontSize||y.HOVERFONTSIZE,M=e[0],E=M.xa,C=M.ya,P=a.charAt(0),O=P+"Label",D=M[O];if(void 0===D&&"multicategory"===E.type)for(var R=0;Ri.width-b?(m=i.width-b,t.attr("d","M"+(b-A)+",0L"+b+","+x+A+"v"+x+(2*S+y.height)+"H-"+b+"V"+x+A+"H"+(b-2*A)+"Z")):t.attr("d","M0,0L"+A+","+x+A+"H"+b+"v"+x+(2*S+y.height)+"H-"+b+"V"+x+A+"H-"+A+"Z"),Y.minX=m-b,Y.maxX=m+b,"top"===E.side?(Y.minY=g-(2*S+y.height),Y.maxY=g-S):(Y.minY=g+S,Y.maxY=g+(2*S+y.height))}else{var _,L,P;"right"===C.side?(_="start",L=1,P="",m=E._offset+E._length):(_="end",L=-1,P="-",m=E._offset),g=C._offset+(M.y0+M.y1)/2,l.attr("text-anchor",_),t.attr("d","M0,0L"+P+A+","+A+"V"+(S+y.height/2)+"h"+P+(2*S+y.width)+"V-"+(S+y.height/2)+"H"+P+A+"V-"+A+"Z"),Y.minY=g-(S+y.height/2),Y.maxY=g+(S+y.height/2),"right"===C.side?(Y.minX=m+A,Y.maxX=m+A+(2*S+y.width)):(Y.minX=m-A-(2*S+y.width),Y.maxX=m-A);var O,I=y.height/2,R=F-y.top-I,z="clip"+i._uid+"commonlabel"+C._id;if(m=0?le:ue+de=0?ue:be+de=0?oe:se+he=0?se:_e+he=0,"top"!==e.idealAlign&&W||!G?W?(O+=z/2,e.anchor="start"):e.anchor="middle":(O-=z/2,e.anchor="end"),e.crossPos=O;else{if(e.pos=O,W=P+R/2+Y<=N,G=P-R/2-Y>=0,"left"!==e.idealAlign&&W||!G)if(W)P+=R/2,e.anchor="start";else{e.anchor="middle";var Z=Y/2,X=P+Z-N,K=P-Z;X>0&&(P-=X),K<0&&(P+=-K)}else P-=R/2,e.anchor="end";e.crossPos=P}w.attr("text-anchor",e.anchor),E&&M.attr("text-anchor",e.anchor),t.attr("transform",s(P,O)+(u?l(_):""))})),{hoverLabels:we,commonLabelBoundingBox:Y}}function I(e,t,r,n,i,a){var s="",l="";void 0!==e.nameOverride&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=o.templateString(e.name,e.trace._meta)),s=B(e.name,e.nameLength));var u=r.charAt(0),c="x"===u?"y":"x";void 0!==e.zLabel?(void 0!==e.xLabel&&(l+="x: "+e.xLabel+"
"),void 0!==e.yLabel&&(l+="y: "+e.yLabel+"
"),"choropleth"!==e.trace.type&&"choroplethmapbox"!==e.trace.type&&(l+=(l?"z: ":"")+e.zLabel)):t&&e[u+"Label"]===i?l=e[c+"Label"]||"":void 0===e.xLabel?void 0!==e.yLabel&&"scattercarpet"!==e.trace.type&&(l=e.yLabel):l=void 0===e.yLabel?e.xLabel:"("+e.xLabel+", "+e.yLabel+")",!e.text&&0!==e.text||Array.isArray(e.text)||(l+=(l?"
":"")+e.text),void 0!==e.extraText&&(l+=(l?"
":"")+e.extraText),a&&""===l&&!e.hovertemplate&&(""===s&&a.remove(),l=s);var f=e.hovertemplate||!1;if(f){var d=e.hovertemplateLabels||e;e[u+"Label"]!==i&&(d[u+"other"]=d[u+"Val"],d[u+"otherLabel"]=d[u+"Label"]),l=(l=o.hovertemplateString(f,d,n._d3locale,e.eventData[0]||{},e.trace._meta)).replace(P,(function(t,r){return s=B(r,e.nameLength),""}))}return[l,s]}function D(e,t){var r=0,n=e.offset;return t&&(n*=-M,r=e.offset*T),{x:r,y:n}}function R(e,t,r,i){var a=function(e){return e*r},o=function(e){return e*i};e.each((function(e){var r=n.select(this);if(e.del)return r.remove();var i=r.select("text.nums"),s=e.anchor,l="end"===s?-1:1,u=function(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(A+S),n=r+t*(e.txwidth+S);return"middle"===e.anchor&&(r-=e.tx2width/2,n+=e.txwidth/2+S),{alignShift:t,textShiftX:r,text2ShiftX:n}}(e),f=D(e,t),h=f.x,p=f.y,v="middle"===s;r.select("path").attr("d",v?"M-"+a(e.bx/2+e.tx2width/2)+","+o(p-e.by/2)+"h"+a(e.bx)+"v"+o(e.by)+"h-"+a(e.bx)+"Z":"M0,0L"+a(l*A+h)+","+o(A+p)+"v"+o(e.by/2-A)+"h"+a(l*e.bx)+"v-"+o(e.by)+"H"+a(l*A+h)+"V"+o(p-A)+"Z");var m=h+u.textShiftX,g=p+e.ty0-e.by/2+S,y=e.textAlign||"auto";"auto"!==y&&("left"===y&&"start"!==s?(i.attr("text-anchor","start"),m=v?-e.bx/2-e.tx2width/2+S:-e.bx-S):"right"===y&&"end"!==s&&(i.attr("text-anchor","end"),m=v?e.bx/2-e.tx2width/2-S:e.bx+S)),i.call(c.positionText,a(m),o(g)),e.tx2width&&(r.select("text.name").call(c.positionText,a(u.text2ShiftX+u.alignShift*S+h),o(p+e.ty0-e.by/2+S)),r.select("rect").call(d.setRect,a(u.text2ShiftX+(u.alignShift-1)*e.tx2width/2+h),o(p-e.by/2-1),a(e.tx2width),o(e.by+2)))}))}function z(e,t){var r=e.index,n=e.trace||{},a=e.cd[0],s=e.cd[r]||{};function l(e){return e||i(e)&&0===e}var u=Array.isArray(r)?function(e,t){var i=o.castOption(a,r,e);return l(i)?i:o.extractOption({},n,"",t)}:function(e,t){return o.extractOption(s,n,e,t)};function c(t,r,n){var i=u(r,n);l(i)&&(e[t]=i)}if(c("hoverinfo","hi","hoverinfo"),c("bgcolor","hbg","hoverlabel.bgcolor"),c("borderColor","hbc","hoverlabel.bordercolor"),c("fontFamily","htf","hoverlabel.font.family"),c("fontSize","hts","hoverlabel.font.size"),c("fontColor","htc","hoverlabel.font.color"),c("nameLength","hnl","hoverlabel.namelength"),c("textAlign","hta","hoverlabel.align"),e.posref="y"===t||"closest"===t&&"h"===n.orientation?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=o.constrain(e.x0,0,e.xa._length),e.x1=o.constrain(e.x1,0,e.xa._length),e.y0=o.constrain(e.y0,0,e.ya._length),e.y1=o.constrain(e.y1,0,e.ya._length),void 0!==e.xLabelVal&&(e.xLabel="xLabel"in e?e.xLabel:v.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),void 0!==e.yLabelVal&&(e.yLabel="yLabel"in e?e.yLabel:v.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),void 0!==e.zLabelVal&&void 0===e.zLabel&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!("log"===e.xa.type&&e.xerr<=0)){var f=v.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;void 0!==e.xerrneg?e.xLabel+=" +"+f+" / -"+v.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xb1 "+f,"x"===t&&(e.distance+=1)}if(!isNaN(e.yerr)&&!("log"===e.ya.type&&e.yerr<=0)){var d=v.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;void 0!==e.yerrneg?e.yLabel+=" +"+d+" / -"+v.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xb1 "+d,"y"===t&&(e.distance+=1)}var h=e.hoverinfo||e.trace.hoverinfo;return h&&"all"!==h&&(-1===(h=Array.isArray(h)?h:h.split("+")).indexOf("x")&&(e.xLabel=void 0),-1===h.indexOf("y")&&(e.yLabel=void 0),-1===h.indexOf("z")&&(e.zLabel=void 0),-1===h.indexOf("text")&&(e.text=void 0),-1===h.indexOf("name")&&(e.name=void 0)),e}function F(e,t,r){var n,i,o=r.container,s=r.fullLayout,l=s._size,u=r.event,c=!!t.hLinePoint,f=!!t.vLinePoint;if(o.selectAll(".spikeline").remove(),f||c){var p=h.combine(s.plot_bgcolor,s.paper_bgcolor);if(c){var m,g,y=t.hLinePoint;n=y&&y.xa,"cursor"===(i=y&&y.ya).spikesnap?(m=u.pointerX,g=u.pointerY):(m=n._offset+y.x,g=i._offset+y.y);var x,b,_=a.readability(y.color,p)<1.5?h.contrast(p):y.color,w=i.spikemode,k=i.spikethickness,T=i.spikecolor||_,M=v.getPxPosition(e,i);if(-1!==w.indexOf("toaxis")||-1!==w.indexOf("across")){if(-1!==w.indexOf("toaxis")&&(x=M,b=m),-1!==w.indexOf("across")){var A=i._counterDomainMin,S=i._counterDomainMax;"free"===i.anchor&&(A=Math.min(A,i.position),S=Math.max(S,i.position)),x=l.l+A*l.w,b=l.l+S*l.w}o.insert("line",":first-child").attr({x1:x,x2:b,y1:g,y2:g,"stroke-width":k,stroke:T,"stroke-dasharray":d.dashStyle(i.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:x,x2:b,y1:g,y2:g,"stroke-width":k+2,stroke:p}).classed("spikeline",!0).classed("crisp",!0)}-1!==w.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:M+("right"!==i.side?k:-k),cy:g,r:k,fill:T}).classed("spikeline",!0)}if(f){var E,C,L=t.vLinePoint;n=L&&L.xa,i=L&&L.ya,"cursor"===n.spikesnap?(E=u.pointerX,C=u.pointerY):(E=n._offset+L.x,C=i._offset+L.y);var P,O,I=a.readability(L.color,p)<1.5?h.contrast(p):L.color,D=n.spikemode,R=n.spikethickness,z=n.spikecolor||I,F=v.getPxPosition(e,n);if(-1!==D.indexOf("toaxis")||-1!==D.indexOf("across")){if(-1!==D.indexOf("toaxis")&&(P=F,O=C),-1!==D.indexOf("across")){var N=n._counterDomainMin,B=n._counterDomainMax;"free"===n.anchor&&(N=Math.min(N,n.position),B=Math.max(B,n.position)),P=l.t+(1-B)*l.h,O=l.t+(1-N)*l.h}o.insert("line",":first-child").attr({x1:E,x2:E,y1:P,y2:O,"stroke-width":R,stroke:z,"stroke-dasharray":d.dashStyle(n.spikedash,R)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:E,x2:E,y1:P,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:F-("top"!==n.side?R:-R),r:R,fill:z}).classed("spikeline",!0)}}}function N(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function B(e,t){return c.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em"]})}function j(e,t,r){var n=t[e+"a"],i=t[e+"Val"],a=t.cd[0];if("category"===n.type||"multicategory"===n.type)i=n._categoriesMap[i];else if("date"===n.type){var o=t.trace[e+"periodalignment"];if(o){var s=t.cd[t.index],l=s[e+"Start"];void 0===l&&(l=s[e]);var u=s[e+"End"];void 0===u&&(u=s[e]);var c=u-l;"end"===o?i+=c:"middle"===o&&(i+=c/2)}i=n.d2c(i)}return a&&a.t&&a.t.posLetter===n._id&&("group"!==r.boxmode&&"group"!==r.violinmode||(i+=a.t.dPos)),i}function U(e){return e.offsetTop+e.clientTop}function V(e){return e.offsetLeft+e.clientLeft}function H(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,s=i+n.width,l=a+n.height,u=o.apply3DTransform(r._invTransform)(i,a),c=o.apply3DTransform(r._invTransform)(s,l),f=u[0],d=u[1],h=c[0],p=c[1];return{x:f,y:d,width:h-f,height:p-d,top:Math.min(d,p),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(d,p)}}},38048:function(e,t,r){"use strict";var n=r(71828),i=r(7901),a=r(23469).isUnifiedHover;e.exports=function(e,t,r,o){o=o||{};var s=t.legend;function l(e){o.font[e]||(o.font[e]=s?t.legend.font[e]:t.font[e])}t&&a(t.hovermode)&&(o.font||(o.font={}),l("size"),l("family"),l("color"),s?(o.bgcolor||(o.bgcolor=i.combine(t.legend.bgcolor,t.paper_bgcolor)),o.bordercolor||(o.bordercolor=t.legend.bordercolor)):o.bgcolor||(o.bgcolor=t.paper_bgcolor)),r("hoverlabel.bgcolor",o.bgcolor),r("hoverlabel.bordercolor",o.bordercolor),r("hoverlabel.namelength",o.namelength),n.coerceFont(r,"hoverlabel.font",o.font),r("hoverlabel.align",o.align)}},98212:function(e,t,r){"use strict";var n=r(71828),i=r(528);e.exports=function(e,t){function r(r,a){return void 0!==t[r]?t[r]:n.coerce(e,t,i,r,a)}return r("clickmode"),r("hovermode")}},30211:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(28569),o=r(23469),s=r(528),l=r(88335);e.exports={moduleType:"component",name:"fx",constants:r(26675),schema:{layout:s},attributes:r(77914),layoutAttributes:s,supplyLayoutGlobalDefaults:r(22774),supplyDefaults:r(54268),supplyLayoutDefaults:r(34938),calc:r(30732),getDistanceFunction:o.getDistanceFunction,getClosest:o.getClosest,inbox:o.inbox,quadrature:o.quadrature,appendArrayPointValue:o.appendArrayPointValue,castHoverOption:function(e,t,r){return i.castOption(e,t,"hoverlabel."+r)},castHoverinfo:function(e,t,r){return i.castOption(e,r,"hoverinfo",(function(r){return i.coerceHoverinfo({hoverinfo:r},{_module:e._module},t)}))},hover:l.hover,unhover:a.unhover,loneHover:l.loneHover,loneUnhover:function(e){var t=i.isD3Selection(e)?e:n.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()},click:r(75914)}},528:function(e,t,r){"use strict";var n=r(26675),i=r(41940),a=i({editType:"none"});a.family.dflt=n.HOVERFONT,a.size.dflt=n.HOVERFONTSIZE,e.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(e,t,r){"use strict";var n=r(71828),i=r(528),a=r(98212),o=r(38048);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}a(e,t)&&(r("hoverdistance"),r("spikedistance")),"select"===r("dragmode")&&r("selectdirection");var s=t._has("mapbox"),l=t._has("geo"),u=t._basePlotModules.length;"zoom"===t.dragmode&&((s||l)&&1===u||s&&l&&2===u)&&(t.dragmode="pan"),o(e,t,r),n.coerceFont(r,"hoverlabel.grouptitlefont",t.hoverlabel.font)}},22774:function(e,t,r){"use strict";var n=r(71828),i=r(38048),a=r(528);e.exports=function(e,t){i(e,t,(function(r,i){return n.coerce(e,t,a,r,i)}))}},83312:function(e,t,r){"use strict";var n=r(71828),i=r(30587).counter,a=r(27670).Y,o=r(85555).idRegex,s=r(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 u(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});return Array.isArray(n)?n:i.length?i:void 0}function c(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),d=0;d1){d||h||p||"independent"===T("pattern")&&(d=!0),m._hasSubplotGrid=d;var x,b,_="top to bottom"===T("roworder"),w=d?.2:.1,k=d?.3:.1;v&&t._splomGridDflt&&(x=t._splomGridDflt.xside,b=t._splomGridDflt.yside),m._domains={x:c("x",T,w,x,y),y:c("y",T,k,b,g,_)}}else delete t.grid}function T(e,t){return n.coerce(r,m,l,e,t)}},contentDefaults:function(e,t){var r=t.grid;if(r&&r._domains){var n,i,a,o,s,l,c,d=e.grid||{},h=t._subplots,p=r._hasSubplotGrid,v=r.rows,m=r.columns,g="independent"===r.pattern,y=r._axisMap={};if(p){var x=d.subplots||[];l=r.subplots=new Array(v);var b=1;for(n=0;n1);if(!1===k&&(r.legend=void 0),(!1!==k||f.uirevision)&&(h("uirevision",r.uirevision),!1!==k)){h("borderwidth");var T,M,A,S="h"===h("orientation");if(S?(T=0,n.getComponentMethod("rangeslider","isVisible")(t.xaxis)?(M=1.1,A="bottom"):(M=-.1,A="top")):(T=1.02,M=1,A="auto"),h("traceorder",_),u.isGrouped(r.legend)&&h("tracegroupgap"),h("entrywidth"),h("entrywidthmode"),h("itemsizing"),h("itemwidth"),h("itemclick"),h("itemdoubleclick"),h("groupclick"),h("x",T),h("xanchor"),h("y",M),h("yanchor",A),h("valign"),i.noneOrAll(f,d,["x","y"]),h("title.text")){h("title.side",S?"left":"top");var E=i.extendFlat({},p,{size:i.bigFont(p.size)});i.coerceFont(h,"title.font",E)}}}}e.exports=function(e,t,r){var n,a=["legend"];for(n=0;n1)}var k=d.hiddenlabels||[];if(!v&&(!d.showlegend||!w.length))return s.selectAll("."+p).remove(),d._topdefs.select("#"+r).remove(),a.autoMargin(e,p);var S=i.ensureSingle(s,"g",p,(function(e){v||e.attr("pointer-events","all")})),I=i.ensureSingleById(d._topdefs,"clipPath",r,(function(e){e.append("rect")})),D=i.ensureSingle(S,"rect","bg",(function(e){e.attr("shape-rendering","crispEdges")}));D.call(c.stroke,f.bordercolor).call(c.fill,f.bgcolor).style("stroke-width",f.borderwidth+"px");var R=i.ensureSingle(S,"g","scrollbox"),z=f.title;if(f._titleWidth=0,f._titleHeight=0,z.text){var F=i.ensureSingle(R,"text",p+"titletext");F.attr("text-anchor","start").call(u.font,z.font).text(z.text),C(F,R,e,f,_)}else R.selectAll("."+p+"titletext").remove();var N=i.ensureSingle(S,"rect","scrollbar",(function(e){e.attr(h.scrollBarEnterAttrs).call(c.fill,h.scrollBarColor)})),B=R.selectAll("g.groups").data(w);B.enter().append("g").attr("class","groups"),B.exit().remove();var j=B.selectAll("g.traces").data(i.identity);j.enter().append("g").attr("class","traces"),j.exit().remove(),j.style("opacity",(function(e){var t=e[0].trace;return o.traceIs(t,"pie-like")?-1!==k.indexOf(e[0].label)?.5:1:"legendonly"===t.visible?.5:1})).each((function(){n.select(this).call(A,e,f)})).call(x,e,f).each((function(){v||n.select(this).call(E,e,p)})),i.syncOrAsync([a.previousPromises,function(){return function(e,t,r,i){var a=e._fullLayout,o=O(i);i||(i=a[o]);var s=a._size,l=b.isVertical(i),c=b.isGrouped(i),f="fraction"===i.entrywidthmode,d=i.borderwidth,p=2*d,v=h.itemGap,m=i.itemwidth+2*v,g=2*(d+v),y=P(i),x=i.y<0||0===i.y&&"top"===y,_=i.y>1||1===i.y&&"bottom"===y,w=i.tracegroupgap,k={};i._maxHeight=Math.max(x||_?a.height/2:s.h,30);var M=0;i._width=0,i._height=0;var A=function(e){var t=0,r=0,n=e.title.side;return n&&(-1!==n.indexOf("left")&&(t=e._titleWidth),-1!==n.indexOf("top")&&(r=e._titleHeight)),[t,r]}(i);if(l)r.each((function(e){var t=e[0].height;u.setTranslate(this,d+A[0],d+A[1]+i._height+t/2+v),i._height+=t,i._width=Math.max(i._width,e[0].width)})),M=m+i._width,i._width+=v+m+p,i._height+=g,c&&(t.each((function(e,t){u.setTranslate(this,0,t*i.tracegroupgap)})),i._height+=(i._lgroupsLength-1)*i.tracegroupgap);else{var S=L(i),E=i.x<0||0===i.x&&"right"===S,C=i.x>1||1===i.x&&"left"===S,I=_||x,D=a.width/2;i._maxWidth=Math.max(E?I&&"left"===S?s.l+s.w:D:C?I&&"right"===S?s.r+s.w:D:s.w,2*m);var R=0,z=0;r.each((function(e){var t=T(e,i,m);R=Math.max(R,t),z+=t})),M=null;var F=0;if(c){var N=0,B=0,j=0;t.each((function(){var e=0,t=0;n.select(this).selectAll("g.traces").each((function(r){var n=T(r,i,m),a=r[0].height;u.setTranslate(this,A[0],A[1]+d+v+a/2+t),t+=a,e=Math.max(e,n),k[r[0].trace.legendgroup]=e}));var r=e+v;B>0&&r+d+B>i._maxWidth?(F=Math.max(F,B),B=0,j+=N+w,N=t):N=Math.max(N,t),u.setTranslate(this,B,j),B+=r})),i._width=Math.max(F,B)+d,i._height=j+N+g}else{var U=r.size(),V=z+p+(U-1)*v=i._maxWidth&&(F=Math.max(F,G),q=0,W+=H,i._height+=H,H=0),u.setTranslate(this,A[0]+d+q,A[1]+d+W+t/2+v),G=q+r+v,q+=n,H=Math.max(H,t)})),V?(i._width=q+p,i._height=H+g):(i._width=Math.max(F,G)+p,i._height+=H+g)}}i._width=Math.ceil(Math.max(i._width+A[0],i._titleWidth+2*(d+h.titlePad))),i._height=Math.ceil(Math.max(i._height+A[1],i._titleHeight+2*(d+h.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var Y=e._context.edits,Z=Y.legendText||Y.legendPosition;r.each((function(e){var t=n.select(this).select("."+o+"toggle"),r=e[0].height,a=e[0].trace.legendgroup,s=T(e,i,m);c&&""!==a&&(s=k[a]);var d=Z?m:M||s;l||f||(d+=v/2),u.setRect(t,0,-r/2,d,r)}))}(e,B,j,f)},function(){var t,s,c,y,x=d._size,b=f.borderwidth;if(!v){var _=function(e,t){var r=e._fullLayout,n=r[t],i=L(n),o=P(n);return a.autoMargin(e,t,{x:n.x,y:n.y,l:n._width*m[i],r:n._width*g[i],b:n._effHeight*g[o],t:n._effHeight*m[o]})}(e,p);if(_)return;var w=x.l+x.w*f.x-m[L(f)]*f._width,k=x.t+x.h*(1-f.y)-m[P(f)]*f._effHeight;if(d.margin.autoexpand){var T=w,A=k;w=i.constrain(w,0,d.width-f._width),k=i.constrain(k,0,d.height-f._effHeight),w!==T&&i.log("Constrain "+p+".x to make legend fit inside graph"),k!==A&&i.log("Constrain "+p+".y to make legend fit inside graph")}u.setTranslate(S,w,k)}if(N.on(".drag",null),S.on("wheel",null),v||f._height<=f._maxHeight||e._context.staticPlot){var E=f._effHeight;v&&(E=f._height),D.attr({width:f._width-b,height:E-b,x:b/2,y:b/2}),u.setTranslate(R,0,0),I.select("rect").attr({width:f._width-2*b,height:E-2*b,x:b,y:b}),u.setClipUrl(R,r,e),u.setRect(N,0,0,0,0),delete f._scrollY}else{var C,O,z,F=Math.max(h.scrollBarMinHeight,f._effHeight*f._effHeight/f._height),j=f._effHeight-F-2*h.scrollBarMargin,U=f._height-f._effHeight,V=j/U,H=Math.min(f._scrollY||0,U);D.attr({width:f._width-2*b+h.scrollBarWidth+h.scrollBarMargin,height:f._effHeight-b,x:b/2,y:b/2}),I.select("rect").attr({width:f._width-2*b+h.scrollBarWidth+h.scrollBarMargin,height:f._effHeight-2*b,x:b,y:b+H}),u.setClipUrl(R,r,e),G(H,F,V),S.on("wheel",(function(){G(H=i.constrain(f._scrollY+n.event.deltaY/j*U,0,U),F,V),0!==H&&H!==U&&n.event.preventDefault()}));var q=n.behavior.drag().on("dragstart",(function(){var e=n.event.sourceEvent;C="touchstart"===e.type?e.changedTouches[0].clientY:e.clientY,z=H})).on("drag",(function(){var e=n.event.sourceEvent;2===e.buttons||e.ctrlKey||(O="touchmove"===e.type?e.changedTouches[0].clientY:e.clientY,H=function(e,t,r){var n=(r-t)/V+e;return i.constrain(n,0,U)}(z,C,O),G(H,F,V))}));N.call(q);var W=n.behavior.drag().on("dragstart",(function(){var e=n.event.sourceEvent;"touchstart"===e.type&&(C=e.changedTouches[0].clientY,z=H)})).on("drag",(function(){var e=n.event.sourceEvent;"touchmove"===e.type&&(O=e.changedTouches[0].clientY,H=function(e,t,r){var n=(t-r)/V+e;return i.constrain(n,0,U)}(z,C,O),G(H,F,V))}));R.call(W)}function G(t,r,n){f._scrollY=e._fullLayout[p]._scrollY=t,u.setTranslate(R,0,-t),u.setRect(N,f._width,h.scrollBarMargin+t*n,h.scrollBarWidth,r),I.select("rect").attr("y",b+t)}e._context.edits.legendPosition&&(S.classed("cursor-move",!0),l.init({element:S.node(),gd:e,prepFn:function(){var e=u.getTranslate(S);c=e.x,y=e.y},moveFn:function(e,r){var n=c+e,i=y+r;u.setTranslate(S,n,i),t=l.align(n,f._width,x.l,x.l+x.w,f.xanchor),s=l.align(i+f._height,-f._height,x.t+x.h,x.t,f.yanchor)},doneFn:function(){if(void 0!==t&&void 0!==s){var r={};r[p+".x"]=t,r[p+".y"]=s,o.call("_guiRelayout",e,r)}},clickFn:function(t,r){var n=B.selectAll("g.traces").filter((function(){var e=this.getBoundingClientRect();return r.clientX>=e.left&&r.clientX<=e.right&&r.clientY>=e.top&&r.clientY<=e.bottom}));n.size()>0&&M(e,S,n,t,r)}}))}],e)}}function T(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return"fraction"===a?t._maxWidth*o:r+(o||i)}function M(e,t,r,n,i){var a=r.data()[0][0].trace,l={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a._expandedIndex,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(l.group=a._group),o.traceIs(a,"pie-like")&&(l.label=r.datum()[0].label),!1!==s.triggerHandler(e,"plotly_legendclick",l)&&(1===n?t._clickTimeout=setTimeout((function(){e._fullLayout&&d(r,e,n)}),e._context.doubleClickDelay):2===n&&(t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0,!1!==s.triggerHandler(e,"plotly_legenddoubleclick",l)&&d(r,e,n)))}function A(e,t,r){var n,a,s=O(r),l=e.data()[0][0],c=l.trace,d=o.traceIs(c,"pie-like"),p=!r._inHover&&t._context.edits.legendText&&!d,v=r._maxNameLength;l.groupTitle?(n=l.groupTitle.text,a=l.groupTitle.font):(a=r.font,r.entries?n=l.text:(n=d?l.label:c.name,c._meta&&(n=i.templateString(n,c._meta))));var m=i.ensureSingle(e,"text",s+"text");m.attr("text-anchor","start").call(u.font,a).text(p?S(n,v):n);var g=r.itemwidth+2*h.itemGap;f.positionText(m,g,0),p?m.call(f.makeEditable,{gd:t,text:n}).call(C,e,t,r).on("edit",(function(n){this.text(S(n,v)).call(C,e,t,r);var a=l.trace._fullInput||{},s={};if(o.hasTransform(a,"groupby")){var u=o.getTransformIndices(a,"groupby"),f=u[u.length-1],d=i.keyedContainer(a,"transforms["+f+"].styles","target","value.name");d.set(l.trace._group,n),s=d.constructUpdate()}else s.name=n;return o.call("_guiRestyle",t,s,c.index)})):C(m,e,t,r)}function S(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;for(var n=r-(e=e||"").length;n>0;n--)e+=" ";return e}function E(e,t,r){var a,o=t._context.doubleClickDelay,s=1,l=i.ensureSingle(e,"rect",r+"toggle",(function(e){t._context.staticPlot||e.style("cursor","pointer").attr("pointer-events","all"),e.call(c.fill,"rgba(0,0,0,0)")}));t._context.staticPlot||(l.on("mousedown",(function(){(a=(new Date).getTime())-t._legendMouseDownTimeo&&(s=Math.max(s-1,1)),M(t,i,e,s,n.event)}})))}function C(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),f.convertToTspans(e,r,(function(){!function(e,t,r,n){var i=e.data()[0][0];if(r._inHover||!i||i.trace.showlegend){var a=e.select("g[class*=math-group]"),o=a.node(),s=O(r);r||(r=t._fullLayout[s]);var l,c,d=r.borderwidth,p=(n===_?r.title.font:i.groupTitle?i.groupTitle.font:r.font).size*v;if(o){var m=u.bBox(o);l=m.height,c=m.width,n===_?u.setTranslate(a,d,d+.75*l):u.setTranslate(a,0,.25*l)}else{var g="."+s+(n===_?"title":"")+"text",y=e.select(g),x=f.lineCount(y),b=y.node();if(l=p*x,c=b?u.bBox(b).width:0,n===_)"left"===r.title.side&&(c+=2*h.itemGap),f.positionText(y,d+h.titlePad,d+p);else{var w=2*h.itemGap+r.itemwidth;i.groupTitle&&(w=h.itemGap,c-=r.itemwidth),f.positionText(y,w,-p*((x-1)/2-.3))}}n===_?(r._titleWidth=c,r._titleHeight=l):(i.lineHeight=p,i.height=Math.max(l,16)+3,i.width=c)}else e.remove()}(t,r,n,i)}))}function L(e){return i.isRightAnchor(e)?"right":i.isCenterAnchor(e)?"center":"left"}function P(e){return i.isBottomAnchor(e)?"bottom":i.isMiddleAnchor(e)?"middle":"top"}function O(e){return e._id||"legend"}e.exports=function(e,t){if(t)k(e,t);else{var r=e._fullLayout,i=r._legends;r._infolayer.selectAll('[class^="legend"]').each((function(){var e=n.select(this),t=e.attr("class").split(" ")[0];t.match(w)&&-1===i.indexOf(t)&&e.remove()}));for(var a=0;aS&&(A=S)}T[a][0]._groupMinRank=A,T[a][0]._preGroupSort=a}var E=function(e,t){return e.trace.legendrank-t.trace.legendrank||e._preSort-t._preSort};for(T.forEach((function(e,t){e[0]._preGroupSort=t})),T.sort((function(e,t){return e[0]._groupMinRank-t[0]._groupMinRank||e[0]._preGroupSort-t[0]._preGroupSort})),a=0;ar?r:e}e.exports=function(e,t,r){var g=t._fullLayout;r||(r=g.legend);var y="constant"===r.itemsizing,x=r.itemwidth,b=(x+2*h.itemGap)/2,_=o(b,0),w=function(e,t,r,n){var i;if(e+1)i=e;else{if(!(t&&t.width>0))return 0;i=t.width}return y?n:Math.min(i,r)};function k(e,a,o){var c=e[0].trace,f=c.marker||{},d=f.line||{},h=o?c.visible&&c.type===o:i.traceIs(c,"bar"),p=n.select(a).select("g.legendpoints").selectAll("path.legend"+o).data(h?[e]:[]);p.enter().append("path").classed("legend"+o,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",_),p.exit().remove(),p.each((function(e){var i=n.select(this),a=e[0],o=w(a.mlw,f.line,5,2);i.style("stroke-width",o+"px");var h=a.mcc;if(!r._inHover&&"mc"in a){var p=u(f),v=p.mid;void 0===v&&(v=(p.max+p.min)/2),h=s.tryColorscale(f,"")(v)}var g=h||a.mc||f.color,y=f.pattern,x=y&&s.getPatternAttr(y.shape,0,"");if(x){var b=s.getPatternAttr(y.bgcolor,0,null),_=s.getPatternAttr(y.fgcolor,0,null),k=y.fgopacity,T=m(y.size,8,10),M=m(y.solidity,.5,1),A="legend-"+c.uid;i.call(s.pattern,"legend",t,A,x,T,M,h,y.fillmode,b,_,k)}else i.call(l.fill,g);o&&l.stroke(i,a.mlc||d.color)}))}function T(e,t,r){var o=e[0],s=o.trace,l=r?s.visible&&s.type===r:i.traceIs(s,r),u=n.select(t).select("g.legendpoints").selectAll("path.legend"+r).data(l?[e]:[]);if(u.enter().append("path").classed("legend"+r,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",_),u.exit().remove(),u.size()){var c=(s.marker||{}).line,h=w(d(c.width,o.pts),c,5,2),p=a.minExtend(s,{marker:{line:{width:h}}});p.marker.line.color=c.color;var v=a.minExtend(o,{trace:p});f(u,v,p)}}e.each((function(e){var t=n.select(this),i=a.ensureSingle(t,"g","layers");i.style("opacity",e[0].trace.opacity);var s=r.valign,l=e[0].lineHeight,u=e[0].height;if("middle"!==s&&l&&u){var c={top:1,bottom:-1}[s]*(.5*(l-u+3));i.attr("transform",o(0,c))}else i.attr("transform",null);i.selectAll("g.legendfill").data([e]).enter().append("g").classed("legendfill",!0),i.selectAll("g.legendlines").data([e]).enter().append("g").classed("legendlines",!0);var f=i.selectAll("g.legendsymbols").data([e]);f.enter().append("g").classed("legendsymbols",!0),f.selectAll("g.legendpoints").data([e]).enter().append("g").classed("legendpoints",!0)})).each((function(e){var r,i=e[0].trace,o=[];if(i.visible)switch(i.type){case"histogram2d":case"heatmap":o=[["M-15,-2V4H15V-2Z"]],r=!0;break;case"choropleth":case"choroplethmapbox":o=[["M-6,-6V6H6V-6Z"]],r=!0;break;case"densitymapbox":o=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],r="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"]],r=!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"]],r=!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"]],r=!0;break;case"mesh3d":o=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],r=!1;break;case"volume":o=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],r=!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"]],r=!1}var c=n.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(o);c.enter().append("path").classed("legend3dandfriends",!0).attr("transform",_).style("stroke-miterlimit",1),c.exit().remove(),c.each((function(e,o){var c,f=n.select(this),d=u(i),h=d.colorscale,v=d.reversescale;if(h){if(!r){var m=h.length;c=0===o?h[v?m-1:0][1]:1===o?h[v?0:m-1][1]:h[Math.floor((m-1)/2)][1]}}else{var g=i.vertexcolor||i.facecolor||i.color;c=a.isArrayOrTypedArray(g)?g[o]||g[0]:g}f.attr("d",e[0]),c?f.call(l.fill,c):f.call((function(e){if(e.size()){var n="legendfill-"+i.uid;s.gradient(e,t,n,p(v,"radial"===r),h,"fill")}}))}))})).each((function(e){var t=e[0].trace,r="waterfall"===t.type;if(e[0]._distinct&&r){var i=e[0].trace[e[0].dir].marker;return e[0].mc=i.color,e[0].mlw=i.line.width,e[0].mlc=i.line.color,k(e,this,"waterfall")}var a=[];t.visible&&r&&(a=e[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=n.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(a);o.enter().append("path").classed("legendwaterfall",!0).attr("transform",_).style("stroke-miterlimit",1),o.exit().remove(),o.each((function(e){var r=n.select(this),i=t[e[0]].marker,a=w(void 0,i.line,5,2);r.attr("d",e[1]).style("stroke-width",a+"px").call(l.fill,i.color),a&&r.call(l.stroke,i.line.color)}))})).each((function(e){k(e,this,"funnel")})).each((function(e){k(e,this)})).each((function(e){var r=e[0].trace,o=n.select(this).select("g.legendpoints").selectAll("path.legendbox").data(r.visible&&i.traceIs(r,"box-violin")?[e]:[]);o.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",_),o.exit().remove(),o.each((function(){var e=n.select(this);if("all"!==r.boxpoints&&"all"!==r.points||0!==l.opacity(r.fillcolor)||0!==l.opacity((r.line||{}).color)){var i=w(void 0,r.line,5,2);e.style("stroke-width",i+"px").call(l.fill,r.fillcolor),i&&l.stroke(e,r.line.color)}else{var u=a.minExtend(r,{marker:{size:y?12:a.constrain(r.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});o.call(s.pointStyle,u,t)}}))})).each((function(e){T(e,this,"funnelarea")})).each((function(e){T(e,this,"pie")})).each((function(e){var r,i,o=v(e),l=o.showFill,f=o.showLine,d=o.showGradientLine,h=o.showGradientFill,m=o.anyFill,g=o.anyLine,y=e[0],b=y.trace,_=u(b),k=_.colorscale,T=_.reversescale,M=c.hasMarkers(b)||!m?"M5,0":g?"M5,-2":"M5,-3",A=n.select(this),S=A.select(".legendfill").selectAll("path").data(l||h?[e]:[]);if(S.enter().append("path").classed("js-fill",!0),S.exit().remove(),S.attr("d",M+"h"+x+"v6h-"+x+"z").call((function(e){if(e.size())if(l)s.fillGroupStyle(e,t);else{var r="legendfill-"+b.uid;s.gradient(e,t,r,p(T),k,"fill")}})),f||d){var E=w(void 0,b.line,10,5);i=a.minExtend(b,{line:{width:E}}),r=[a.minExtend(y,{trace:i})]}var C=A.select(".legendlines").selectAll("path").data(f||d?[r]:[]);C.enter().append("path").classed("js-line",!0),C.exit().remove(),C.attr("d",M+(d?"l"+x+",0.0001":"h"+x)).call(f?s.lineGroupStyle:function(e){if(e.size()){var r="legendline-"+b.uid;s.lineGroupStyle(e),s.gradient(e,t,r,p(T),k,"stroke")}})})).each((function(e){var r,i,o=v(e),l=o.anyFill,u=o.anyLine,f=o.showLine,d=o.showMarker,h=e[0],p=h.trace,m=!d&&!u&&!l&&c.hasText(p);function g(e,t,r,n){var i=a.nestedProperty(p,e).get(),o=a.isArrayOrTypedArray(i)&&t?t(i):i;if(y&&o&&void 0!==n&&(o=n),r){if(or[1])return r[1]}return o}function x(e){return h._distinct&&h.index&&e[h.index]?e[h.index]:e[0]}if(d||m||f){var b={},w={};if(d){b.mc=g("marker.color",x),b.mx=g("marker.symbol",x),b.mo=g("marker.opacity",a.mean,[.2,1]),b.mlc=g("marker.line.color",x),b.mlw=g("marker.line.width",a.mean,[0,5],2),w.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var k=g("marker.size",a.mean,[2,16],12);b.ms=k,w.marker.size=k}f&&(w.line={width:g("line.width",x,[0,10],5)}),m&&(b.tx="Aa",b.tp=g("textposition",x),b.ts=10,b.tc=g("textfont.color",x),b.tf=g("textfont.family",x)),r=[a.minExtend(h,b)],(i=a.minExtend(p,w)).selectedpoints=null,i.texttemplate=null}var T=n.select(this).select("g.legendpoints"),M=T.selectAll("path.scatterpts").data(d?r:[]);M.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",_),M.exit().remove(),M.call(s.pointStyle,i,t),d&&(r[0].mrc=3);var A=T.selectAll("g.pointtext").data(m?r:[]);A.enter().append("g").classed("pointtext",!0).append("text").attr("transform",_),A.exit().remove(),A.selectAll("text").call(s.textPointStyle,i,t)})).each((function(e){var t=e[0].trace,r=n.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(t.visible&&"candlestick"===t.type?[e,e]:[]);r.enter().append("path").classed("legendcandle",!0).attr("d",(function(e,t){return t?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"})).attr("transform",_).style("stroke-miterlimit",1),r.exit().remove(),r.each((function(e,r){var i=n.select(this),a=t[r?"increasing":"decreasing"],o=w(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(e){var t=e[0].trace,r=n.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(t.visible&&"ohlc"===t.type?[e,e]:[]);r.enter().append("path").classed("legendohlc",!0).attr("d",(function(e,t){return t?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"})).attr("transform",_).style("stroke-miterlimit",1),r.exit().remove(),r.each((function(e,r){var i=n.select(this),a=t[r?"increasing":"decreasing"],o=w(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(e,t,r){"use strict";r(93348),e.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(e,t,r){"use strict";var n=r(73972),i=r(74875),a=r(41675),o=r(24255),s=r(34031).eraseActiveShape,l=r(71828),u=l._,c=e.exports={};function f(e,t){var r,i,o=t.currentTarget,s=o.getAttribute("data-attr"),l=o.getAttribute("data-val")||!0,u=e._fullLayout,c={},f=a.list(e,null,!0),d=u._cartesianSpikesEnabled;if("zoom"===s){var h,p="in"===l?.5:2,v=(1+p)/2,m=(1-p)/2;for(i=0;i1?(O=["toggleHover"],I=["resetViews"]):g?(P=["zoomInGeo","zoomOutGeo"],O=["hoverClosestGeo"],I=["resetGeo"]):m?(O=["hoverClosest3d"],I=["resetCameraDefault3d","resetCameraLastSave3d"]):w?(P=["zoomInMapbox","zoomOutMapbox"],O=["toggleHover"],I=["resetViewMapbox"]):b?O=["hoverClosestGl2d"]:y?O=["hoverClosestPie"]:M?(O=["hoverClosestCartesian","hoverCompareCartesian"],I=["resetViewSankey"]):O=["toggleHover"],v&&(O=["toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"]),(function(e){for(var t=0;t0)){var v=function(e,t,r){for(var n=r.filter((function(r){return t[r].anchor===e._id})),i=0,a=0;a=n.max)t=F[r+1];else if(e=n.pmax)t=F[r+1];else if(er._length||g+b<0)return;c=m+b,h=g+b;break;case l:if(x="col-resize",m+b>r._length)return;c=m+b,h=g;break;case u:if(x="col-resize",g+b<0)return;c=m,h=g+b;break;default:x="ew-resize",c=v,h=v+b}if(h=0;T--){var M=r.append("path").attr(m).style("opacity",T?.1:g).call(o.stroke,x).call(o.fill,y).call(s.dashLine,T?"solid":_,T?4+b:b);if(p(M,e,a),w){var A=l(e.layout,"selections",a);M.style({cursor:"move"});var S={element:M.node(),plotinfo:h,gd:e,editHelpers:A,isActiveSelection:!0},E=n(u,e);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(e,t){if(d(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex)return void v(e);e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=v,f(e)}}}(e,C)}))}(e._fullLayout._selectionLayer)}function p(e,t,r){var n=r.xref+r.yref;s.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function v(e){d(e)&&e._fullLayout._activeSelectionIndex>=0&&(a(e),delete e._fullLayout._activeSelectionIndex,f(e))}e.exports={draw:f,drawOne:h,activateLastSelection:function(e){if(d(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=v,f(e)}}}},53777:function(e,t,r){"use strict";var n=r(79952).P,i=r(1426).extendFlat;e.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({},n,{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(e){"use strict";e.exports=function(e,t,r){r("newselection.mode"),r("newselection.line.width")&&(r("newselection.line.color"),r("newselection.line.dash")),r("activeselection.fillcolor"),r("activeselection.opacity")}},35855:function(e,t,r){"use strict";var n=r(64505).selectMode,i=r(51873).clearOutline,a=r(60165),o=a.readPaths,s=a.writePaths,l=a.fixDatesForPaths;e.exports=function(e,t){if(e.length){var r=e[0][0];if(r){var a=r.getAttribute("d"),u=t.gd,c=u._fullLayout.newselection,f=t.plotinfo,d=f.xaxis,h=f.yaxis,p=t.isActiveSelection,v=t.dragmode,m=(u.layout||{}).selections||[];if(!n(v)&&void 0!==p){var g=u._fullLayout._activeSelectionIndex;if(g-1,b=[];if(function(e){return e&&Array.isArray(e)&&!0!==e[0].hoverOnBox}(g)){G(e,t,a);var _=function(e,t){var r,n,i=e[0],a=-1,o=[];for(n=0;n0?function(e,t){var r,n,i,a=[];for(i=0;i0&&a.push(r);if(1===a.length&&a[0]===t.searchInfo&&(n=t.searchInfo.cd[0].trace).selectedpoints.length===t.pointNumbers.length){for(i=0;i1)return!1;if((n+=t.selectedpoints.length)>1)return!1}return 1===n}(s)&&(d=$(_))){for(o&&o.remove(),m=0;m=0})(i)&&i._fullLayout._deactivateShape(i),function(e){return e._fullLayout._activeSelectionIndex>=0}(i)&&i._fullLayout._deactivateSelection(i);var o=i._fullLayout._zoomlayer,s=h(r),l=v(r);if(s||l){var u,c,f=o.selectAll(".select-outline-"+n.id);f&&i._fullLayout._outlining&&(s&&(u=k(f,e)),u&&a.call("_guiRelayout",i,{shapes:u}),l&&!U(e)&&(c=T(f,e)),c&&(i._fullLayout._noEmitSelectedAtStart=!0,a.call("_guiRelayout",i,{selections:c}).then((function(){t&&M(i)}))),i._fullLayout._outlining=!1)}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function Z(e){return e._id}function X(e,t,r,n){if(!e.calcdata)return[];var i,a,o,s=[],l=t.map(Z),u=r.map(Z);for(o=0;o0?n[0]:r;return!!t.selectedpoints&&t.selectedpoints.indexOf(i)>-1}function J(e,t,r){var n,i;for(n=0;n-1&&t;if(!a&&t){var te=oe(e,!0);if(te.length){var ne=te[0].xref,he=te[0].yref;if(ne&&he){var pe=ue(te);ce([L(e,ne,"x"),L(e,he,"y")])(Q,pe)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ee&&fe(e,Q),d._reselect=!1}if(!a&&d._deselect){var ve=d._deselect;(function(e,t,r){for(var n=0;n=0)T._fullLayout._deactivateShape(T);else if(!x){var r=M.clickmode;C.done(Me).then((function(){if(C.clear(Me),2===e){for(be.remove(),$=0;$-1&&V(t,T,n.xaxes,n.yaxes,n.subplot,n,be),"event"===r&&fe(T,void 0);l.click(T,t)})).catch(A.error)}},n.doneFn=function(){Te.remove(),C.done(Me).then((function(){C.clear(Me),!S&&K&&n.selectionDefs&&(K.subtract=xe,n.selectionDefs.push(K),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,Z)),(S||x)&&Y(n,S),n.doneFnCompleted&&n.doneFnCompleted(Ae),b&&fe(T,ae)})).catch(A.error)}},clearOutline:x,clearSelectionsCache:Y,selectOnClick:V}},89827:function(e,t,r){"use strict";var n=r(50215),i=r(41940),a=r(82196).line,o=r(79952).P,s=r(1426).extendFlat,l=r(44467).templatedArray,u=(r(24695),r(5386).R),c=r(37281);e.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({},n.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({},n.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"},texttemplate:u({},{keys:Object.keys(c)}),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(e,t,r){"use strict";var n=r(71828),i=r(89298),a=r(21459),o=r(30477);function s(e){return u(e.line.width,e.xsizemode,e.x0,e.x1,e.path,!1)}function l(e){return u(e.line.width,e.ysizemode,e.y0,e.y1,e.path,!0)}function u(e,t,r,i,s,l){var u=e/2,c=l;if("pixel"===t){var f=s?o.extractPathCoords(s,l?a.paramIsY:a.paramIsX):[r,i],d=n.aggNums(Math.max,null,f),h=n.aggNums(Math.min,null,f),p=h<0?Math.abs(h)+u:u,v=d>0?d+u:u;return{ppad:u,ppadplus:c?p:v,ppadminus:c?v:p}}return{ppad:u}}function c(e,t,r,n,i){var s="category"===e.type||"multicategory"===e.type?e.r2c:e.d2c;if(void 0!==t)return[s(t),s(r)];if(n){var l,u,c,f,d=1/0,h=-1/0,p=n.match(a.segmentRE);for("date"===e.type&&(s=o.decodeDate(s)),l=0;lh&&(h=f)));return h>=d?[d,h]:void 0}}e.exports=function(e){var t=e._fullLayout,r=n.filterVisible(t.shapes);if(r.length&&e._fullData.length)for(var o=0;o1&&(2!==e.length||"Z"!==e[1][0])&&(0===E&&(e[0][0]="M"),t[S]=e,k(),T())}}()}}function N(e,r){!function(e,r){if(t.length)for(var n=0;nz&&a>F&&!r.shiftKey?h.getCursor(o/i,1-s/a):"move";p(t,l),R=l.split("-")[0]}}function ne(n){w(e)||(N&&(b=Z(r.xanchor)),B&&(_=X(r.yanchor)),"path"===r.type?D=r.path:(c=N?r.x0:Z(r.x0),d=B?r.y0:X(r.y0),v=N?r.x1:Z(r.x1),x=B?r.y1:X(r.y1)),cx?(k=d,L="y0",T=x,P="y1"):(k=x,L="y1",T=d,P="y0"),re(n),le(l,r),ce(t,r,e),Q.moveFn="move"===R?oe:se,Q.altKey=n.altKey)}function ie(){w(e)||(p(t),ue(l),M(t,e,r),i.call("_guiRelayout",e,u.getUpdateObj()))}function ae(){w(e)||ue(l)}function oe(n,i){if("path"===r.type){var a=function(e){return e},o=a,u=a;N?V("xanchor",r.xanchor=K(b+n)):(o=function(e){return K(Z(e)+n)},q&&"date"===q.type&&(o=g.encodeDate(o))),B?V("yanchor",r.yanchor=$(_+i)):(u=function(e){return $(X(e)+i)},G&&"date"===G.type&&(u=g.encodeDate(u))),V("path",r.path=S(D,o,u))}else N?V("xanchor",r.xanchor=K(b+n)):(V("x0",r.x0=K(c+n)),V("x1",r.x1=K(v+n))),B?V("yanchor",r.yanchor=$(_+i)):(V("y0",r.y0=$(d+i)),V("y1",r.y1=$(x+i)));t.attr("d",y(e,r)),le(l,r),A(e,s,r,H)}function se(n,i){if(U){var a=function(e){return e},o=a,u=a;N?V("xanchor",r.xanchor=K(b+n)):(o=function(e){return K(Z(e)+n)},q&&"date"===q.type&&(o=g.encodeDate(o))),B?V("yanchor",r.yanchor=$(_+i)):(u=function(e){return $(X(e)+i)},G&&"date"===G.type&&(u=g.encodeDate(u))),V("path",r.path=S(D,o,u))}else if(j){if("resize-over-start-point"===R){var f=c+n,h=B?d-i:d+i;V("x0",r.x0=N?f:K(f)),V("y0",r.y0=B?h:$(h))}else if("resize-over-end-point"===R){var p=v+n,m=B?x-i:x+i;V("x1",r.x1=N?p:K(p)),V("y1",r.y1=B?m:$(m))}}else{var w=function(e){return-1!==R.indexOf(e)},M=w("n"),W=w("s"),Y=w("w"),J=w("e"),Q=M?k+i:k,ee=W?T+i:T,te=Y?E+n:E,re=J?C+n:C;B&&(M&&(Q=k-i),W&&(ee=T-i)),(!B&&ee-Q>F||B&&Q-ee>F)&&(V(L,r[L]=B?Q:$(Q)),V(P,r[P]=B?ee:$(ee))),re-te>z&&(V(O,r[O]=N?te:K(te)),V(I,r[I]=N?re:K(re)))}t.attr("d",y(e,r)),le(l,r),A(e,s,r,H)}function le(e,t){function r(){var r="path"!==t.type,n=e.selectAll(".visual-cue").data([0]),i=1;n.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":i}).classed("visual-cue",!0);var o=Z(N?t.xanchor:a.midRange(r?[t.x0,t.x1]:g.extractPathCoords(t.path,m.paramIsX))),s=X(B?t.yanchor:a.midRange(r?[t.y0,t.y1]:g.extractPathCoords(t.path,m.paramIsY)));if(o=g.roundPositionForSharpStrokeRendering(o,i),s=g.roundPositionForSharpStrokeRendering(s,i),N&&B){var l="M"+(o-1-i)+","+(s-1-i)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";n.attr("d",l)}else if(N){var u="M"+(o-1-i)+","+(s-9-i)+"v18 h2 v-18 Z";n.attr("d",u)}else{var c="M"+(o-9-i)+","+(s-1-i)+"h18 v2 h-18 Z";n.attr("d",c)}}(N||B)&&r()}function ue(e){e.selectAll(".visual-cue").remove()}function ce(e,t,r){var n=t.xref,i=t.yref,a=o.getFromId(r,n),s=o.getFromId(r,i),l="";"paper"===n||a.autorange||(l+=n),"paper"===i||s.autorange||(l+=i),f.setClipUrl(e,l?"clip"+r._fullLayout._uid+l:null,r)}h.init(Q),J.node().onmousemove=re}(e,F,u,t,r,R):!0===u.editable&&F.style("pointer-events",I||c.opacity(C)*T<=.5?"stroke":"all");F.node().addEventListener("click",(function(){return function(e,t){if(k(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex)return void E(e);e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=E,_(e)}}}(e,F)}))}u._input&&!1!==u.visible&&("below"!==u.layer?x(e._fullLayout._shapeUpperLayer):"paper"===u.xref||"paper"===u.yref?x(e._fullLayout._shapeLowerLayer):v._hadPlotinfo?x((v.mainplotinfo||v).shapelayer):x(e._fullLayout._shapeLowerLayer))}function M(e,t,r){var n=(r.xref+r.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");f.setClipUrl(e,n?"clip"+t._fullLayout._uid+n:null,t)}function A(e,t,r,n){if(n.selectAll(".shape-label").remove(),r.label.text||r.label.texttemplate){var i;if(r.label.texttemplate){var l={};if("path"!==r.type){var u=o.getFromId(e,r.xref),c=o.getFromId(e,r.yref);for(var d in x){var h=x[d](r,u,c);void 0!==h&&(l[d]=h)}}i=a.texttemplateStringForShapes(r.label.texttemplate,{},e._fullLayout._d3locale,l)}else i=r.label.text;var p,m,_,w,k={"data-index":t},T=r.label.font,M=n.append("g").attr(k).classed("shape-label",!0).append("text").attr({"data-notex":1}).classed("shape-label-text",!0).text(i);if(r.path){var A=y(e,r),S=s(A,e);p=1/0,_=1/0,m=-1/0,w=-1/0;for(var E=0;E=e?t-n:n-t,-180/Math.PI*Math.atan2(i,a)}(p,_,m,w):0),M.call((function(t){return t.call(f.font,T).attr({}),v.convertToTspans(t,e),t}));var U=function(e,t,r,n,i,a,o){var s,l,u,c,f=i.label.textposition,d=i.label.textangle,h=i.label.padding,p=i.type,v=Math.PI/180*a,m=Math.sin(v),g=Math.cos(v),y=i.label.xanchor,x=i.label.yanchor;if("line"===p){"start"===f?(s=e,l=t):"end"===f?(s=r,l=n):(s=(e+r)/2,l=(t+n)/2),"auto"===y&&(y="start"===f?"auto"===d?r>e?"left":re?"right":re?"right":re?"left":r=s||(a[n]?e=t(e):o[n]&&(e=r(e)),n++),e}))}))}function E(e){k(e)&&e._fullLayout._activeShapeIndex>=0&&(u(e),delete e._fullLayout._activeShapeIndex,_(e))}e.exports={draw:_,drawOne:T,eraseActiveShape:function(e){if(k(e)){u(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t0&&lh&&(e="X"),e}));return a>h&&(p=p.replace(/[\s,]*X.*/,""),i.log("Ignoring extra params in segment "+e)),c+p}))}(r,s,u);if("pixel"===r.xsizemode){var b=s(r.xanchor);c=b+r.x0,f=b+r.x1}else c=s(r.x0),f=s(r.x1);if("pixel"===r.ysizemode){var _=u(r.yanchor);d=_-r.y0,h=_-r.y1}else d=u(r.y0),h=u(r.y1);if("line"===p)return"M"+c+","+d+"L"+f+","+h;if("rect"===p)return"M"+c+","+d+"H"+f+"V"+h+"H"+c+"Z";var w=(c+f)/2,k=(d+h)/2,T=Math.abs(w-c),M=Math.abs(k-d),A="A"+T+","+M,S=w+T+","+k;return"M"+S+A+" 0 1,1 "+w+","+(k-M)+A+" 0 0,1 "+S+"Z"}},89853:function(e,t,r){"use strict";var n=r(34031);e.exports={moduleType:"component",name:"shapes",layoutAttributes:r(89827),supplyLayoutDefaults:r(84726),supplyDrawNewShapeDefaults:r(45547),includeBasePlot:r(76325)("shapes"),calcAutorange:r(5627),draw:n.draw,drawOne:n.drawOne}},37281:function(e){"use strict";function t(e,t){return t?t.d2l(e):e}function r(e,t){return t?t.l2d(e):e}function n(e,r){return t(e.x1,r)-t(e.x0,r)}function i(e,r,n){return t(e.y1,n)-t(e.y0,n)}e.exports={x0:function(e){return e.x0},x1:function(e){return e.x1},y0:function(e){return e.y0},y1:function(e){return e.y1},slope:function(e,t,r){return"line"!==e.type?void 0:i(e,0,r)/n(e,t)},dx:n,dy:i,width:function(e,t){return Math.abs(n(e,t))},height:function(e,t,r){return Math.abs(i(e,0,r))},length:function(e,t,r){return"line"!==e.type?void 0:Math.sqrt(Math.pow(n(e,t),2)+Math.pow(i(e,0,r),2))},xcenter:function(e,n){return r((t(e.x1,n)+t(e.x0,n))/2,n)},ycenter:function(e,n,i){return r((t(e.y1,i)+t(e.y0,i))/2,i)}}},75067:function(e,t,r){"use strict";var n=r(41940),i=r(35025),a=r(1426).extendDeepAll,o=r(30962).overrideAll,s=r(85594),l=r(44467).templatedArray,u=r(98292),c=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}});e.exports=o(l("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:c,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:n({})},font:n({}),activebgcolor:{valType:"color",dflt:u.gripBgActiveColor},bgcolor:{valType:"color",dflt:u.railBgColor},bordercolor:{valType:"color",dflt:u.railBorderColor},borderwidth:{valType:"number",min:0,dflt:u.railBorderWidth},ticklen:{valType:"number",min:0,dflt:u.tickLength},tickcolor:{valType:"color",dflt:u.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:u.minorTickLength}}),"arraydraw","from-root")},98292:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(85501),a=r(75067),o=r(98292).name,s=a.steps;function l(e,t,r){function o(r,i){return n.coerce(e,t,a,r,i)}for(var s=i(e,t,{name:"steps",handleItemDefaults:u}),l=0,c=0;c0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",l(o-.5*f.gripWidth,t._dims.currentValueTotalHeight))}}function E(e,t){var r=e._dims;return r.inputAreaStart+f.stepInset+(r.inputAreaLength-2*f.stepInset)*Math.min(1,Math.max(0,t))}function C(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-f.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*f.stepInset-2*r.inputAreaStart)))}function L(e,t,r){var n=r._dims,i=s.ensureSingle(e,"rect",f.railTouchRectClass,(function(n){n.call(M,t,e,r).style("pointer-events","all")}));i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,f.tickOffset+r.ticklen+n.labelHeight)}).call(a.fill,r.bgcolor).attr("opacity",0),o.setTranslate(i,0,n.currentValueTotalHeight)}function P(e,t){var r=t._dims,n=r.inputAreaLength-2*f.railInset,i=s.ensureSingle(e,"rect",f.railRectClass);i.attr({width:n,height:f.railWidth,rx:f.railRadius,ry:f.railRadius,"shape-rendering":"crispEdges"}).call(a.stroke,t.bordercolor).call(a.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),o.setTranslate(i,f.railInset,.5*(r.inputAreaWidth-f.railWidth)+r.currentValueTotalHeight)}e.exports=function(e){var t=e._context.staticPlot,r=e._fullLayout,a=function(e,t){for(var r=e[f.name],n=[],i=0;i0?[0]:[]);function l(t){t._commandObserver&&(t._commandObserver.remove(),delete t._commandObserver),i.autoMargin(e,m(t))}if(s.enter().append("g").classed(f.containerClassName,!0).style("cursor",t?null:"ew-resize"),s.exit().each((function(){n.select(this).selectAll("g."+f.groupClassName).each(l)})).remove(),0!==a.length){var u=s.selectAll("g."+f.groupClassName).data(a,g);u.enter().append("g").classed(f.groupClassName,!0),u.exit().each(l).remove();for(var c=0;c0||_<0){var A={left:[-w,0],right:[w,0],top:[0,-w],bottom:[0,w]}[b.side];r.attr("transform",l(A[0],A[1]))}}}return z.call(F),I&&(E?z.on(".opacity",null):(M=0,A=!0,z.text(y).on("mouseover.opacity",(function(){n.select(this).transition().duration(d.SHOW_PLACEHOLDER).style("opacity",1)})).on("mouseout.opacity",(function(){n.select(this).transition().duration(d.HIDE_PLACEHOLDER).style("opacity",0)}))),z.call(f.makeEditable,{gd:e}).on("edit",(function(t){void 0!==x?o.call("_guiRestyle",e,g,t,x):o.call("_guiRelayout",e,g,t)})).on("cancel",(function(){this.text(this.attr("data-unformatted")).call(F)})).on("input",(function(e){this.text(e||" ").call(f.positionText,_.x,_.y)}))),z.classed("js-placeholder",A),k}}},7163:function(e,t,r){"use strict";var n=r(41940),i=r(22399),a=r(1426).extendFlat,o=r(30962).overrideAll,s=r(35025),l=r(44467).templatedArray,u=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}});e.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:u,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:n({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:i.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")},75909:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(85501),a=r(7163),o=r(75909).name,s=a.buttons;function l(e,t,r){function o(r,i){return n.coerce(e,t,a,r,i)}o("visible",i(e,t,{name:"buttons",handleItemDefaults:u}).length>0)&&(o("active"),o("direction"),o("type"),o("showactive"),o("x"),o("y"),n.noneOrAll(e,t,["x","y"]),o("xanchor"),o("yanchor"),o("pad.t"),o("pad.r"),o("pad.b"),o("pad.l"),n.coerceFont(o,"font",r.font),o("bgcolor",r.paper_bgcolor),o("bordercolor"),o("borderwidth"))}function u(e,t){function r(r,i){return n.coerce(e,t,s,r,i)}r("visible","skip"===e.method||Array.isArray(e.args))&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}e.exports=function(e,t){i(e,t,{name:o,handleItemDefaults:l})}},13689:function(e,t,r){"use strict";var n=r(39898),i=r(74875),a=r(7901),o=r(91424),s=r(71828),l=r(63893),u=r(44467).arrayEditor,c=r(18783).LINE_SPACING,f=r(75909),d=r(25849);function h(e){return e._index}function p(e,t){return+e.attr(f.menuIndexAttrName)===t._index}function v(e,t,r,n,i,a,o,s){t.active=o,u(e.layout,f.name,t).applyUpdate("active",o),"buttons"===t.type?g(e,n,null,null,t):"dropdown"===t.type&&(i.attr(f.menuIndexAttrName,"-1"),m(e,n,i,a,t),s||g(e,n,i,a,t))}function m(e,t,r,n,i){var a=s.ensureSingle(t,"g",f.headerClassName,(function(e){e.style("pointer-events","all")})),l=i._dims,u=i.active,c=i.buttons[u]||f.blankHeaderOpts,d={y:i.pad.t,yPad:0,x:i.pad.l,xPad:0,index:0},h={width:l.headerWidth,height:l.headerHeight};a.call(y,i,c,e).call(A,i,d,h),s.ensureSingle(t,"text",f.headerArrowClassName,(function(e){e.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(){r.call(S,String(p(r,i)?-1:i._index)),g(e,t,r,n,i)})),a.on("mouseover",(function(){a.call(w)})),a.on("mouseout",(function(){a.call(k,i)})),o.setTranslate(t,l.lx,l.ly)}function g(e,t,r,a,o){r||(r=t).attr("pointer-events","all");var l=function(e){return-1===+e.attr(f.menuIndexAttrName)}(r)&&"buttons"!==o.type?[]:o.buttons,u="dropdown"===o.type?f.dropdownButtonClassName:f.buttonClassName,c=r.selectAll("g."+u).data(s.filterVisible(l)),d=c.enter().append("g").classed(u,!0),h=c.exit();"dropdown"===o.type?(d.attr("opacity","0").transition().attr("opacity","1"),h.transition().attr("opacity","0").remove()):h.remove();var p=0,m=0,g=o._dims,x=-1!==["up","down"].indexOf(o.direction);"dropdown"===o.type&&(x?m=g.headerHeight+f.gapButtonHeader:p=g.headerWidth+f.gapButtonHeader),"dropdown"===o.type&&"up"===o.direction&&(m=-f.gapButtonHeader+f.gapButton-g.openHeight),"dropdown"===o.type&&"left"===o.direction&&(p=-f.gapButtonHeader+f.gapButton-g.openWidth);var b={x:g.lx+p+o.pad.l,y:g.ly+m+o.pad.t,yPad:f.gapButton,xPad:f.gapButton,index:0},T={l:b.x+o.borderwidth,t:b.y+o.borderwidth};c.each((function(s,l){var u=n.select(this);u.call(y,o,s,e).call(A,o,b),u.on("click",(function(){n.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(v(e,o,0,t,r,a,-1),i.executeAPICommand(e,s.method,s.args2)):(v(e,o,0,t,r,a,l),i.executeAPICommand(e,s.method,s.args))),e.emit("plotly_buttonclicked",{menu:o,button:s,active:o.active}))})),u.on("mouseover",(function(){u.call(w)})),u.on("mouseout",(function(){u.call(k,o),c.call(_,o)}))})),c.call(_,o),x?(T.w=Math.max(g.openWidth,g.headerWidth),T.h=b.y-T.t):(T.w=b.x-T.l,T.h=Math.max(g.openHeight,g.headerHeight)),T.direction=o.direction,a&&(c.size()?function(e,t,r,n,i,a){var o,s,l,u=i.direction,c="up"===u||"down"===u,d=i._dims,h=i.active;if(c)for(s=0,l=0;l0?[0]:[]);if(o.enter().append("g").classed(f.containerClassName,!0).style("cursor","pointer"),o.exit().each((function(){n.select(this).selectAll("g."+f.headerGroupClassName).each(a)})).remove(),0!==r.length){var l=o.selectAll("g."+f.headerGroupClassName).data(r,h);l.enter().append("g").classed(f.headerGroupClassName,!0);for(var u=s.ensureSingle(o,"g",f.dropdownButtonGroupClassName,(function(e){e.style("pointer-events","all")})),c=0;cw,M=s.barLength+2*s.barPad,A=s.barWidth+2*s.barPad,S=p,E=m+g;E+A>u&&(E=u-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=w-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var L=g>k,P=s.barWidth+2*s.barPad,O=s.barLength+2*s.barPad,I=p+v,D=m;I+P>l&&(I=l-P);var R=this.container.selectAll("rect.scrollbar-vertical").data(L?[0]:[]);R.exit().on(".drag",null).remove(),R.enter().append("rect").classed("scrollbar-vertical",!0).call(i.fill,s.barColor),L?(this.vbar=R.attr({rx:s.barRadius,ry:s.barRadius,x:I,y:D,width:P,height:O}),this._vbarYMin=D+O/2,this._vbarTranslateMax=k-O):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var z=this.id,F=c-.5,N=L?f+P+.5:f+.5,B=d-.5,j=T?h+A+.5:h+.5,U=o._topdefs.selectAll("#"+z).data(T||L?[0]:[]);if(U.exit().remove(),U.enter().append("clipPath").attr("id",z).append("rect"),T||L?(this._clipRect=U.select("rect").attr({x:Math.floor(F),y:Math.floor(B),width:Math.ceil(N)-Math.floor(F),height:Math.ceil(j)-Math.floor(B)}),this.container.call(a.setClipUrl,z,this.gd),this.bg.attr({x:p,y:m,width:v,height:g})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(a.setClipUrl,null),delete this._clipRect),T||L){var V=n.behavior.drag().on("dragstart",(function(){n.event.sourceEvent.preventDefault()})).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(V);var H=n.behavior.drag().on("dragstart",(function(){n.event.sourceEvent.preventDefault(),n.event.sourceEvent.stopPropagation()})).on("drag",this._onBarDrag.bind(this));T&&this.hbar.on(".drag",null).call(H),L&&this.vbar.on(".drag",null).call(H)}this.setTranslate(t,r)},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 e=this.translateX,t=this.translateY;this.hbar&&(e-=n.event.dx),this.vbar&&(t-=n.event.dy),this.setTranslate(e,t)},s.prototype._onBoxWheel=function(){var e=this.translateX,t=this.translateY;this.hbar&&(e+=n.event.deltaY),this.vbar&&(t+=n.event.deltaY),this.setTranslate(e,t)},s.prototype._onBarDrag=function(){var e=this.translateX,t=this.translateY;if(this.hbar){var r=e+this._hbarXMin,i=r+this._hbarTranslateMax;e=(o.constrain(n.event.x,r,i)-r)/(i-r)*(this.position.w-this._box.w)}if(this.vbar){var a=t+this._vbarYMin,s=a+this._vbarTranslateMax;t=(o.constrain(n.event.y,a,s)-a)/(s-a)*(this.position.h-this._box.h)}this.setTranslate(e,t)},s.prototype.setTranslate=function(e,t){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(e=o.constrain(e||0,0,r),t=o.constrain(t||0,0,n),this.translateX=e,this.translateY=t,this.container.call(a.setTranslate,this._box.l-this.position.l-e,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+e-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=e/r;this.hbar.call(a.setTranslate,e+i*this._hbarTranslateMax,t)}if(this.vbar){var s=t/n;this.vbar.call(a.setTranslate,e,t+s*this._vbarTranslateMax)}}},18783:function(e){"use strict";e.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(e){"use strict";e.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}},22372:function(e){"use strict";e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25b2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25bc"}}},31562:function(e){"use strict";e.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(e){"use strict";e.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}},29659:function(e){"use strict";e.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}},87381:function(e){"use strict";e.exports={circle:"\u25cf","circle-open":"\u25cb",square:"\u25a0","square-open":"\u25a1",diamond:"\u25c6","diamond-open":"\u25c7",cross:"+",x:"\u274c"}},37822:function(e){"use strict";e.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},50606:function(e){"use strict";e.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(e,t){"use strict";t.xmlns="http://www.w3.org/2000/xmlns/",t.svg="http://www.w3.org/2000/svg",t.xlink="http://www.w3.org/1999/xlink",t.svgAttrs={xmlns:t.svg,"xmlns:xlink":t.xlink}},8729:function(e,t,r){"use strict";t.version=r(11506).version,r(7417),r(98847);for(var n=r(73972),i=t.register=n.register,a=r(10641),o=Object.keys(a),s=0;s",""," ",""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}},99863:function(e,t){"use strict";t.isLeftAnchor=function(e){return"left"===e.xanchor||"auto"===e.xanchor&&e.x<=1/3},t.isCenterAnchor=function(e){return"center"===e.xanchor||"auto"===e.xanchor&&e.x>1/3&&e.x<2/3},t.isRightAnchor=function(e){return"right"===e.xanchor||"auto"===e.xanchor&&e.x>=2/3},t.isTopAnchor=function(e){return"top"===e.yanchor||"auto"===e.yanchor&&e.y>=2/3},t.isMiddleAnchor=function(e){return"middle"===e.yanchor||"auto"===e.yanchor&&e.y>1/3&&e.y<2/3},t.isBottomAnchor=function(e){return"bottom"===e.yanchor||"auto"===e.yanchor&&e.y<=1/3}},26348:function(e,t,r){"use strict";var n=r(64872),i=n.mod,a=n.modHalf,o=Math.PI,s=2*o;function l(e){return Math.abs(e[1]-e[0])>s-1e-14}function u(e,t){return a(t-e,s)}function c(e,t){if(l(t))return!0;var r,n;t[0](n=i(n,s))&&(n+=s);var a=i(e,s),o=a+s;return a>=r&&a<=n||o>=r&&o<=n}function f(e,t,r,n,i,a,u){i=i||0,a=a||0;var c,f,d,h,p,v=l([r,n]);function m(e,t){return[e*Math.cos(t)+i,a-e*Math.sin(t)]}v?(c=0,f=o,d=s):r=i&&e<=a);var i,a},pathArc:function(e,t,r,n,i){return f(null,e,t,r,n,i,0)},pathSector:function(e,t,r,n,i){return f(null,e,t,r,n,i,1)},pathAnnulus:function(e,t,r,n,i,a){return f(e,t,r,n,i,a,1)}}},73627:function(e,t){"use strict";var r=Array.isArray,n=ArrayBuffer,i=DataView;function a(e){return n.isView(e)&&!(e instanceof i)}function o(e){return r(e)||a(e)}function s(e,t,r){if(o(e)){if(o(e[0])){for(var n=r,i=0;ii.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,i){e%1||!n(e)||void 0!==i.min&&ei.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if("string"!==typeof e){var i="number"===typeof e;!0!==n.strict&&i?t.set(String(e)):t.set(r)}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){i(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){Array.isArray(e)&&e.length&&e.every((function(e){return i(e).isValid()}))?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(o.get(e,r))}},angle:{coerceFunction:function(e,t,r){"auto"===e?t.set("auto"):n(e)?t.set(f(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||c(r);"string"===typeof e&&i.test(e)?t.set(e):t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r||"string"===typeof e&&!!c(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if(-1===(n.extras||[]).indexOf(e))if("string"===typeof e){for(var i=e.split("+"),a=0;a=n&&e<=i?e:c}if("string"!==typeof e&&"number"!==typeof e)return c;e=String(e);var u=_(r),g=e.charAt(0);!u||"G"!==g&&"g"!==g||(e=e.substr(1),r="");var w=u&&"chinese"===r.substr(0,7),k=e.match(w?x:y);if(!k)return c;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(u){if(2===T.length)return c;var L;T=Number(T);try{var P=m.getComponentMethod("calendars","getCal")(r);if(w){var O="i"===M.charAt(M.length-1);M=parseInt(M,10),L=P.newDate(T,P.toMonthIndex(T,M,O),A)}else L=P.newDate(T,Number(M),A)}catch(D){return c}return L?(L.toJD()-v)*f+S*d+E*h+C*p:c}T=2===T.length?(Number(T)+2e3-b)%100+b: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?c:I.getTime()+C*p},n=t.MIN_MS=t.dateTime2ms("-9999"),i=t.MAX_MS=t.dateTime2ms("9999-12-31 23:59:59.9999"),t.isDateTime=function(e,r){return t.dateTime2ms(e,r)!==c};var k=90*f,T=3*d,M=5*h;function A(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+w(t,2)+":"+w(r,2),(n||i)&&(e+=":"+w(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+w(i,a)}return e}t.ms2DateTime=function(e,t,r){if("number"!==typeof e||!(e>=n&&e<=i))return c;t||(t=0);var a,o,s,u,y,x,b=Math.floor(10*l(e+.05,1)),w=Math.round(e-b/10);if(_(r)){var S=Math.floor(w/f)+v,E=Math.floor(l(e,f));try{a=m.getComponentMethod("calendars","getCal")(r).fromJD(S).formatDate("yyyy-mm-dd")}catch(C){a=g("G%Y-%m-%d")(new Date(w))}if("-"===a.charAt(0))for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=n+f&&e<=i-f))return c;var t=Math.floor(10*l(e+.05,1)),r=new Date(Math.round(e-t/10));return A(a("%Y-%m-%d")(r),r.getHours(),r.getMinutes(),r.getSeconds(),10*r.getUTCMilliseconds()+t)},t.cleanDate=function(e,r,n){if(e===c)return r;if(t.isJSDate(e)||"number"===typeof e&&isFinite(e)){if(_(n))return s.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(!(e=t.ms2DateTimeLocal(+e))&&void 0!==r)return r}else if(!t.isDateTime(e,n))return s.error("unrecognized date",e),r;return e};var S=/%\d?f/g,E=/%h/g,C={1:"1",2:"1",3:"2",4:"2"};function L(e,t,r,n){e=e.replace(S,(function(e){var r=Math.min(+e.charAt(1)||6,6);return(t/1e3%1+2).toFixed(r).substr(2).replace(/0+$/,"")||"0"}));var i=new Date(Math.floor(t+.05));if(e=e.replace(E,(function(){return C[r("%q")(i)]})),_(n))try{e=m.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var P=[59,59.9,59.99,59.999,59.9999];t.formatDate=function(e,t,r,n,i,a){if(i=_(i)&&i,!t)if("y"===r)t=a.year;else if("m"===r)t=a.month;else{if("d"!==r)return function(e,t){var r=l(e+.05,f),n=w(Math.floor(r/d),2)+":"+w(l(Math.floor(r/h),60),2);if("M"!==t){o(t)||(t=0);var i=(100+Math.min(l(e/p,60),P[t])).toFixed(t).substr(1);t>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+i}return n}(e,r)+"\n"+L(a.dayMonthYear,e,n,i);t=a.dayMonth+"\n"+a.year}return L(t,e,n,i)};var O=3*f;t.incrementMonth=function(e,t,r){r=_(r)&&r;var n=l(e,f);if(e=Math.round(e-n),r)try{var i=Math.round(e/f)+v,a=m.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-v)*f+n}catch(c){s.error("invalid ms "+e+" in calendar "+r)}var u=new Date(e+O);return u.setUTCMonth(u.getUTCMonth()+t)+n-O},t.findExactDates=function(e,t){for(var r,n,i=0,a=0,s=0,l=0,u=_(t)&&m.getComponentMethod("calendars","getCal")(t),c=0;c0&&e[t+1][0]<0)return t;return null}switch(t="RUS"===s||"FJI"===s?function(e){var t;if(null===u(e))t=e;else for(t=new Array(e.length),i=0;it?r[n++]=[e[i][0]+360,e[i][1]]:i===t?(r[n++]=e[i],r[n++]=[e[i][0],-90]):r[n++]=e[i];var a=d.tester(r);a.pts.pop(),l.push(a)}:function(e){l.push(d.tester(e))},a.type){case"MultiPolygon":for(r=0;ri&&(i=u,t=l)}else t=r;return o.default(t).geometry.coordinates}(c),n.fIn=e,n.fOut=c,s.push(c)}else u.log(["Location",n.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete i[r]}switch(r.type){case"FeatureCollection":var d=r.features;for(n=0;n100?(clearInterval(a),n("Unexpected error while fetching from "+e)):void i++}),50)}))}for(var o=0;o0&&(r.push(i),i=[])}return i.length>0&&r.push(i),r},t.makeLine=function(e){return 1===e.length?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}},t.makePolygon=function(e){if(1===e.length)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r1||v<0||v>1?null:{x:e+l*v,y:t+f*v}}function l(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}var l=n*t-i*e;return l*l/r}t.segmentsIntersect=s,t.segmentDistance=function(e,t,r,n,i,a,o,u){if(s(e,t,r,n,i,a,o,u))return 0;var c=r-e,f=n-t,d=o-i,h=u-a,p=c*c+f*f,v=d*d+h*h,m=Math.min(l(c,f,p,i-e,a-t),l(c,f,p,o-e,u-t),l(d,h,v,e-i,t-a),l(d,h,v,r-i,n-a));return Math.sqrt(m)},t.getTextLocation=function(e,t,r,s){if(e===i&&s===a||(n={},i=e,a=s),n[r])return n[r];var l=e.getPointAtLength(o(r-s/2,t)),u=e.getPointAtLength(o(r+s/2,t)),c=Math.atan((u.y-l.y)/(u.x-l.x)),f=e.getPointAtLength(o(r,t)),d={x:(4*f.x+l.x+u.x)/6,y:(4*f.y+l.y+u.y)/6,theta:c};return n[r]=d,d},t.clearLocationCache=function(){i=null},t.getVisibleSegment=function(e,t,r){var n,i,a=t.left,o=t.right,s=t.top,l=t.bottom,u=0,c=e.getTotalLength(),f=c;function d(t){var r=e.getPointAtLength(t);0===t?n=r:t===c&&(i=r);var u=r.xo?r.x-o:0,f=r.yl?r.y-l:0;return Math.sqrt(u*u+f*f)}for(var h=d(u);h;){if((u+=h+r)>f)return;h=d(u)}for(h=d(f);h;){if(u>(f-=h+r))return;h=d(f)}return{min:u,max:f,len:f-u,total:c,isClosed:0===u&&f===c&&Math.abs(n.x-i.x)<.1&&Math.abs(n.y-i.y)<.1}},t.findPointOnPath=function(e,t,r,n){for(var i,a,o,s=(n=n||{}).pathLength||e.getTotalLength(),l=n.tolerance||.001,u=n.iterationLimit||30,c=e.getPointAtLength(0)[r]>e.getPointAtLength(s)[r]?-1:1,f=0,d=0,h=s;f0?h=i:d=i,f++}return a}},81697:function(e,t,r){"use strict";var n=r(92770),i=r(84267),a=r(25075),o=r(21081),s=r(22399).defaultLine,l=r(73627).isArrayOrTypedArray,u=a(s),c=1;function f(e,t){var r=e;return r[3]*=t,r}function d(e){if(n(e))return u;var t=a(e);return t.length?t:u}function h(e){return n(e)?e:c}e.exports={formatColor:function(e,t,r){var n,i,s,p,v,m=e.color,g=l(m),y=l(t),x=o.extractOpts(e),b=[];if(n=void 0!==x.colorscale?o.makeColorScaleFuncFromTrace(e):d,i=g?function(e,t){return void 0===e[t]?u:a(n(e[t]))}:d,s=y?function(e,t){return void 0===e[t]?c:h(e[t])}:h,g||y)for(var _=0;_1?(r*e+r*t)/r:e+t,i=String(n).length;if(i>16){var a=String(t).length;if(i>=String(e).length+a){var o=parseFloat(n).toPrecision(12);-1===o.indexOf("e+")&&(n=+o)}}return n}},71828:function(e,t,r){"use strict";var n=r(39898),i=r(84096).g0,a=r(60721).WU,o=r(92770),s=r(50606),l=s.FP_SAFE,u=-l,c=s.BADNUM,f=e.exports={};f.adjustFormat=function(e){return!e||/^\d[.]\df/.test(e)||/[.]\d%/.test(e)?e:"0.f"===e?"~f":/^\d%/.test(e)?"~%":/^\ds/.test(e)?"~s":!/^[~,.0$]/.test(e)&&/[&fps]/.test(e)?"~"+e:e};var d={};f.warnBadFormat=function(e){var t=String(e);d[t]||(d[t]=1,f.warn('encountered bad format: "'+t+'"'))},f.noFormat=function(e){return String(e)},f.numberFormat=function(e){var t;try{t=a(f.adjustFormat(e))}catch(r){return f.warnBadFormat(e),f.noFormat}return t},f.nestedProperty=r(65487),f.keyedContainer=r(66636),f.relativeAttr=r(6962),f.isPlainObject=r(41965),f.toLogRange=r(58163),f.relinkPrivateKeys=r(51332);var h=r(73627);f.isTypedArray=h.isTypedArray,f.isArrayOrTypedArray=h.isArrayOrTypedArray,f.isArray1D=h.isArray1D,f.ensureArray=h.ensureArray,f.concat=h.concat,f.maxRowLength=h.maxRowLength,f.minRowLength=h.minRowLength;var p=r(64872);f.mod=p.mod,f.modHalf=p.modHalf;var v=r(96554);f.valObjectMeta=v.valObjectMeta,f.coerce=v.coerce,f.coerce2=v.coerce2,f.coerceFont=v.coerceFont,f.coercePattern=v.coercePattern,f.coerceHoverinfo=v.coerceHoverinfo,f.coerceSelectionMarkerOpacity=v.coerceSelectionMarkerOpacity,f.validate=v.validate;var m=r(41631);f.dateTime2ms=m.dateTime2ms,f.isDateTime=m.isDateTime,f.ms2DateTime=m.ms2DateTime,f.ms2DateTimeLocal=m.ms2DateTimeLocal,f.cleanDate=m.cleanDate,f.isJSDate=m.isJSDate,f.formatDate=m.formatDate,f.incrementMonth=m.incrementMonth,f.dateTick0=m.dateTick0,f.dfltRange=m.dfltRange,f.findExactDates=m.findExactDates,f.MIN_MS=m.MIN_MS,f.MAX_MS=m.MAX_MS;var g=r(65888);f.findBin=g.findBin,f.sorterAsc=g.sorterAsc,f.sorterDes=g.sorterDes,f.distinctVals=g.distinctVals,f.roundUp=g.roundUp,f.sort=g.sort,f.findIndexOfMin=g.findIndexOfMin,f.sortObjectKeys=r(78607);var y=r(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 x=r(35657);f.init2dArray=x.init2dArray,f.transposeRagged=x.transposeRagged,f.dot=x.dot,f.translationMatrix=x.translationMatrix,f.rotationMatrix=x.rotationMatrix,f.rotationXYMatrix=x.rotationXYMatrix,f.apply3DTransform=x.apply3DTransform,f.apply2DTransform=x.apply2DTransform,f.apply2DTransform2=x.apply2DTransform2,f.convertCssMatrix=x.convertCssMatrix,f.inverseTransformMatrix=x.inverseTransformMatrix;var b=r(26348);f.deg2rad=b.deg2rad,f.rad2deg=b.rad2deg,f.angleDelta=b.angleDelta,f.angleDist=b.angleDist,f.isFullCircle=b.isFullCircle,f.isAngleInsideSector=b.isAngleInsideSector,f.isPtInsideSector=b.isPtInsideSector,f.pathArc=b.pathArc,f.pathSector=b.pathSector,f.pathAnnulus=b.pathAnnulus;var _=r(99863);f.isLeftAnchor=_.isLeftAnchor,f.isCenterAnchor=_.isCenterAnchor,f.isRightAnchor=_.isRightAnchor,f.isTopAnchor=_.isTopAnchor,f.isMiddleAnchor=_.isMiddleAnchor,f.isBottomAnchor=_.isBottomAnchor;var w=r(87642);f.segmentsIntersect=w.segmentsIntersect,f.segmentDistance=w.segmentDistance,f.getTextLocation=w.getTextLocation,f.clearLocationCache=w.clearLocationCache,f.getVisibleSegment=w.getVisibleSegment,f.findPointOnPath=w.findPointOnPath;var k=r(1426);f.extendFlat=k.extendFlat,f.extendDeep=k.extendDeep,f.extendDeepAll=k.extendDeepAll,f.extendDeepNoArrays=k.extendDeepNoArrays;var T=r(47769);f.log=T.log,f.warn=T.warn,f.error=T.error;var M=r(30587);f.counterRegex=M.counter;var A=r(79990);f.throttle=A.throttle,f.throttleDone=A.done,f.clearThrottle=A.clear;var S=r(24401);function E(e){var t={};for(var r in e)for(var n=e[r],i=0;il||e=t)&&o(e)&&e>=0&&e%1===0},f.noop=r(64213),f.identity=r(23389),f.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))},f.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r},f.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(f.warn("randstr failed uniqueness"),l):e(t,r,n,(i||0)+1):l},f.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={optionList:[],_newoption:function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)}};return r["_"+t]=e,r},f.smooth=function(e,t){if((t=Math.round(t)||0)<2)return e;var r,n,i,a,o=e.length,s=2*o,l=2*t-1,u=new Array(l),c=new Array(o);for(r=0;r=s&&(i-=s*Math.floor(i/s)),i<0?i=-1-i:i>=o&&(i=s-1-i),a+=e[i]*u[n];c[r]=a}return c},f.syncOrAsync=function(e,t,r){var n;function i(){return f.syncOrAsync(e,t,r)}for(;e.length;)if((n=(0,e.splice(0,1)[0])(t))&&n.then)return n.then(i);return r&&r(t)},f.stripTrailingSlash=function(e){return"/"===e.substr(-1)?e.substr(0,e.length-1):e},f.noneOrAll=function(e,t,r){if(e){var n,i,a=!1,o=!0;for(n=0;n0?t:0}))},f.fillArray=function(e,t,r,n){if(n=n||f.identity,f.isArrayOrTypedArray(e))for(var i=0;i1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l},f.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var D=/^\w*$/;f.templateString=function(e,t){var r={};return e.replace(f.TEMPLATE_STRING_REGEX,(function(e,n){var i;return D.test(n)?i=t[n]:(r[n]=r[n]||f.nestedProperty(t,n).get,i=r[n]()),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 F=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/,N={max:10,count:0,name:"texttemplate",parseMultDiv:!0};f.texttemplateStringForShapes=function(){return j.apply(N,arguments)};var B=/^[:|\|]/;function j(e,t,r){var n=this,a=arguments;t||(t={});var o={};return e.replace(f.TEMPLATE_STRING_REGEX,(function(e,s,l){var u="_xother"===s||"_yother"===s,c="_xother_"===s||"_yother_"===s,d="xother_"===s||"yother_"===s,h="xother"===s||"yother"===s||u||d||c,p=s;(u||c)&&(p=p.substring(1)),(d||c)&&(p=p.substring(0,p.length-1));var v,m,g,y=null,x=null;if(n.parseMultDiv){var b=function(e){var t=e.match(F);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}(p);p=b.key,y=b.op,x=b.number}if(h){if(void 0===(v=t[p]))return""}else for(g=3;g=48&&o<=57,u=s>=48&&s<=57;if(l&&(n=10*n+o-48),u&&(i=10*i+s-48),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var U=2e9;f.seedPseudoRandom=function(){U=2e9},f.pseudoRandom=function(){var e=U;return U=(69069*U+1)%4294967296,Math.abs(U-e)<429496729?f.pseudoRandom():U/4294967296},f.fillText=function(e,t,r){var n=Array.isArray(r)?function(e){r.push(e)}:function(e){r.text=e},i=f.extractOption(e,t,"htx","hovertext");if(f.isValidTextValue(i))return n(i);var a=f.extractOption(e,t,"tx","text");return f.isValidTextValue(a)?n(a):void 0},f.isValidTextValue=function(e){return e||0===e},f.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(u=1):u=0,f.strTranslate(i-u*(r+o),a-u*(n+s))+f.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")},f.setTransormAndDisplay=function(e,t){e.attr("transform",f.getTextTransform(t)),e.style("display",t.scale?null:"none")},f.ensureUniformFontSize=function(e,t){var r=f.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r},f.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)},f.bigFont=function(e){return Math.round(1.2*e)};var V=f.getFirefoxVersion(),H=null!==V&&V<86;f.getPositionFromD3Event=function(){return H?[n.event.layerX,n.event.layerY]:[n.event.offsetX,n.event.offsetY]}},41965:function(e){"use strict";e.exports=function(e){return window&&window.process&&window.process.versions?"[object Object]"===Object.prototype.toString.call(e):"[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e).hasOwnProperty("hasOwnProperty")}},66636:function(e,t,r){"use strict";var n=r(65487),i=/^\w*$/;e.exports=function(e,t,r,a){var o,s,l;r=r||"name",a=a||"value";var u={};t&&t.length?(l=n(e,t),s=l.get()):s=e,t=t||"";var c={};if(s)for(o=0;o2)return u[t]=2|u[t],d.set(e,null);if(f){for(o=t;o1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}},a.warn=function(){var e;if(n.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}},a.error=function(){var e;if(n.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}},77310:function(e,t,r){"use strict";var n=r(39898);e.exports=function(e,t,r){var i=e.selectAll("g."+r.replace(/\s/g,".")).data(t,(function(e){return e[0].trace.uid}));i.exit().remove(),i.enter().append("g").attr("class",r),i.order();var a=e.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each((function(e){e[0][a]=n.select(this)})),i}},35657:function(e,t,r){"use strict";var n=r(79576);t.init2dArray=function(e,t){for(var r=new Array(e),n=0;nt/2?e-Math.round(e/t)*t:e}}},65487:function(e,t,r){"use strict";var n=r(92770),i=r(73627).isArrayOrTypedArray;function a(e,t){return function(){var r,n,o,s,l,u=e;for(s=0;s/g),l=0;la||u===i||us)&&(!t||!l(e))}:function(e,t){var l=e[0],u=e[1];if(l===i||la||u===i||us)return!1;var c,f,d,h,p,v=r.length,m=r[0][0],g=r[0][1],y=0;for(c=1;cMath.max(f,m)||u>Math.max(d,g)))if(uc||Math.abs(n(o,d))>i)return!0;return!1},a.filter=function(e,t){var r=[e[0]],n=0,i=0;function o(o){e.push(o);var s=r.length,l=n;r.splice(i+1);for(var u=l+1;u1&&o(e.pop()),{addPt:o,raw:e,filtered:r}}},79749:function(e,t,r){"use strict";var n=r(58617),i=r(98580);e.exports=function(e,t,a){var o=e._fullLayout,s=!0;return o._glcanvas.each((function(n){if(n.regl)n.regl.preloadCachedCode(a);else if(!n.pick||o._has("parcoords")){try{n.regl=i({canvas:this,attributes:{antialias:!n.pick,preserveDrawingBuffer:!0},pixelRatio:e._context.plotGlPixelRatio||r.g.devicePixelRatio,extensions:t||[],cachedCode:a||{}})}catch(l){s=!1}n.regl||(s=!1),s&&this.addEventListener("webglcontextlost",(function(t){e&&e.emit&&e.emit("plotly_webglcontextlost",{event:t,layer:n.key})}),!1)}})),s||n({container:o._glcontainer.node()}),s}},45142:function(e,t,r){"use strict";var n=r(92770),i=r(35791);e.exports=function(e){var t;if("string"!==typeof(t=e&&e.hasOwnProperty("userAgent")?e.userAgent:function(){var e;return"undefined"!==typeof navigator&&(e=navigator.userAgent),e&&e.headers&&"string"===typeof e.headers["user-agent"]&&(e=e.headers["user-agent"]),e}()))return!0;var r=i({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var a=t.split(" "),o=1;o-1;s--){var l=a[s];if("Version/"===l.substr(0,8)){var u=l.substr(8).split(".")[0];if(n(u)&&(u=+u),u>=13)return!0}}return r}},75138:function(e){"use strict";e.exports=function(e,t){if(t instanceof RegExp){for(var r=t.toString(),n=0;ni.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--))},startSequence:function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},stopSequence:function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},undo:function(e){var t,r;if(!(void 0===e.undoQueue||isNaN(e.undoQueue.index)||e.undoQueue.index<=0)){for(e.undoQueue.index--,t=e.undoQueue.queue[e.undoQueue.index],e.undoQueue.inSequence=!0,r=0;r=e.undoQueue.queue.length)){for(t=e.undoQueue.queue[e.undoQueue.index],e.undoQueue.inSequence=!0,r=0;rt}function f(e,t){return e>=t}t.findBin=function(e,t,r){if(n(t.start))return r?Math.ceil((e-t.start)/t.size-s)-1:Math.floor((e-t.start)/t.size+s);var a,o,d=0,h=t.length,p=0,v=h>1?(t[h-1]-t[0])/(h-1):1;for(o=v>=0?r?l:u:r?f:c,e+=v*s*(r?-1:1)*(v>=0?1:-1);d90&&i.log("Long binary search..."),d-1},t.sorterAsc=function(e,t){return e-t},t.sorterDes=function(e,t){return t-e},t.distinctVals=function(e){var r,n=e.slice();for(n.sort(t.sorterAsc),r=n.length-1;r>-1&&n[r]===o;r--);for(var i,a=n[r]-n[0]||1,s=a/(r||1)/1e4,l=[],u=0;u<=r;u++){var c=n[u],f=c-i;void 0===i?(l.push(c),i=c):f>s&&(a=Math.min(a,f),l.push(c),i=c)}return{vals:l,minDiff:a}},t.roundUp=function(e,t,r){for(var n,i=0,a=t.length-1,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;i0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()},t.findIndexOfMin=function(e,t){t=t||a;for(var r,n=1/0,i=0;ia.length)&&(o=a.length),n(r)||(r=!1),i(a[0])){for(l=new Array(o),s=0;se.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}},78614:function(e,t,r){"use strict";var n=r(25075);e.exports=function(e){return e?n(e):[0,0,0,1]}},63893:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.strTranslate,o=r(77922),s=r(18783).LINE_SPACING,l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;t.convertToTspans=function(e,r,m){var S=e.text(),E=!e.attr("data-notex")&&r&&r._context.typesetMath&&"undefined"!==typeof MathJax&&S.match(l),P=n.select(e.node().parentNode);if(!P.empty()){var O=e.attr("class")?e.attr("class").split(" ")[0]:"text";return O+="-math",P.selectAll("svg."+O).remove(),P.selectAll("g."+O+"-group").remove(),e.style("display",null).attr({"data-unformatted":S,"data-math":"N"}),E?(r&&r._promises||[]).push(new Promise((function(t){e.style("display","none");var r=parseInt(e.node().style.fontSize,10),o={fontSize:r};!function(e,t,r){var a,o,s,l,d=parseInt((MathJax.version||"").split(".")[0]);if(2===d||3===d){var h=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},v=function(){if("SVG"!==(a=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer("SVG")},m=function(){"svg"!==(a=MathJax.config.startup.output)&&(MathJax.config.startup.output="svg")},g=function(){var r="math-output-"+i.randstr({},64),a=(l=n.select("body").append("div").attr({id:r}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(e.replace(u,"\\lt ").replace(c,"\\gt "))).node();return 2===d?MathJax.Hub.Typeset(a):MathJax.typeset([a])},y=function(){var t=l.select(2===d?".MathJax_SVG":".MathJax"),a=!t.empty()&&l.select("svg").node();if(a){var o,s=a.getBoundingClientRect();o=2===d?n.select("body").select("#MathJax_SVG_glyphs"):t.select("defs"),r(t,o,s)}else i.log("There was an error in the tex syntax.",e),r();l.remove()},x=function(){if("SVG"!==a)return MathJax.Hub.setRenderer(a)},b=function(){"svg"!==a&&(MathJax.config.startup.output=a)},_=function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)},w=function(){MathJax.config=o};2===d?MathJax.Hub.Queue(h,v,g,y,x,_):3===d&&(p(),m(),MathJax.startup.defaultReady(),MathJax.startup.promise.then((function(){g(),y(),b(),w()})))}else i.warn("No MathJax version:",MathJax.version)}(E[2],o,(function(n,i,o){P.selectAll("svg."+O).remove(),P.selectAll("g."+O+"-group").remove();var s=n&&n.select("svg");if(!s||!s.node())return I(),void t();var l=P.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 u=o.width,c=o.height;s.attr({class:O,height:c,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var f=e.node().style.fill||"black",d=s.select("g");d.attr({fill:f,stroke:f});var h=d.node().getBoundingClientRect(),p=h.width,v=h.height;(p>u||v>c)&&(s.style("overflow","hidden"),p=(h=s.node().getBoundingClientRect()).width,v=h.height);var g=+e.attr("x"),y=+e.attr("y"),x=-(r||e.node().getBoundingClientRect().height)/4;if("y"===O[0])l.attr({transform:"rotate("+[-90,g,y]+")"+a(-p/2,x-v/2)});else if("l"===O[0])y=x-v/2;else if("a"===O[0]&&0!==O.indexOf("atitle"))g=0,y=x;else{var b=e.attr("text-anchor");g-=p*("middle"===b?.5:"end"===b?1:0),y=y+x-v/2}s.attr({x:g,y:y}),m&&m.call(e,l),t(l)}))}))):I(),e}function I(){P.empty()||(O=e.attr("class")+"-math",P.select("svg."+O).remove()),e.text("").style("white-space","pre");var r=function(e,t){t=t.replace(g," ");var r,a=!1,l=[],u=-1;function c(){u++;var t=document.createElementNS(o.svg,"tspan");n.select(t).attr({class:"line",dy:u*s+"em"}),e.appendChild(t),r=t;var i=l;if(l=[{node:t}],i.length>1)for(var a=1;a doesnt match end tag <"+e+">. Pretending it did match.",t),r=l[l.length-1].node}else i.log("Ignoring unexpected end tag .",t)}var E=b.test(t);E?c():(r=e,l=[{node:e}]);for(var P=t.split(y),O=0;O|>|>)/g,f=[["$","$"],["\\(","\\)"]],d={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"},h={sub:"0.3em",sup:"-0.6em"},p={sub:"-0.21em",sup:"0.42em"},v="\u200b",m=["http:","https:","mailto:","",void 0,":"],g=t.NEWLINES=/(\r\n?|\n)/g,y=/(<[^<>]*>)/,x=/<(\/?)([^ >]*)(\s+(.*))?>/i,b=//i;t.BR_TAG_ALL=//gi;var _=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,w=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,k=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,T=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function M(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&C(n)}var A=/(^|;)\s*color:/;t.plainText=function(e,t){for(var r=void 0!==(t=t||{}).len&&-1!==t.len?t.len:1/0,n=void 0!==t.allowedTags?t.allowedTags:["br"],i=e.split(y),a=[],o="",s=0,l=0;l3?a.push(u.substr(0,h-3)+"..."):a.push(u.substr(0,h));break}o=""}}return a.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(e){return e.replace(E,(function(e,t){return("#"===t.charAt(0)?function(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r(55232+(e>>10),e%1024+56320)}}("x"===t.charAt(1)?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):S[t])||e}))}function L(e){var t=encodeURI(decodeURI(e)),r=document.createElement("a"),n=document.createElement("a");r.href=e,n.href=t;var i=r.protocol,a=n.protocol;return-1!==m.indexOf(i)&&-1!==m.indexOf(a)?t:""}function P(e,t,r){var n,a,o,s=r.horizontalAlign,l=r.verticalAlign||"top",u=e.node().getBoundingClientRect(),c=t.node().getBoundingClientRect();return a="bottom"===l?function(){return u.bottom-n.height}:"middle"===l?function(){return u.top+(u.height-n.height)/2}:function(){return u.top},o="right"===s?function(){return u.right-n.width}:"center"===s?function(){return u.left+(u.width-n.width)/2}:function(){return u.left},function(){n=this.node().getBoundingClientRect();var e=o()-c.left,t=a()-c.top,s=r.gd||{};if(r.gd){s._fullLayout._calcInverseTransform(s);var l=i.apply3DTransform(s._fullLayout._invTransform)(e,t);e=l[0],t=l[1]}return this.style({top:t+"px",left:e+"px","z-index":1e3}),this}}t.convertEntities=C,t.sanitizeHTML=function(e){e=e.replace(g," ");for(var t=document.createElement("p"),r=t,i=[],a=e.split(y),o=0;oa.ts+t?l():a.timer=setTimeout((function(){l(),a.timer=null}),t)},t.done=function(e){var t=r[e];return t&&t.timer?new Promise((function(e){var r=t.onDone;t.onDone=function(){r&&r(),e(),t.onDone=null}})):Promise.resolve()},t.clear=function(e){if(e)n(r[e]),delete r[e];else for(var i in r)t.clear(i)}},58163:function(e,t,r){"use strict";var n=r(92770);e.exports=function(e,t){if(e>0)return Math.log(e)/Math.LN10;var r=Math.log(Math.min(t[0],t[1]))/Math.LN10;return n(r)||(r=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),r}},90973:function(e,t,r){"use strict";var n=e.exports={},i=r(78776).locationmodeToLayer,a=r(96892).zL;n.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")},n.getTopojsonPath=function(e,t){return e+t+".json"},n.getTopojsonFeatures=function(e,t){var r=i[e.locationmode],n=t.objects[r];return a(t,n).features}},37815:function(e){"use strict";e.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}},92177:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(73972);e.exports=function(e){for(var t,r,i=n.layoutArrayContainers,a=n.layoutArrayRegexes,o=e.split("[")[0],s=0;s0&&o.log("Clearing previous rejected promises from queue."),e._promises=[]},t.cleanLayout=function(e){var r,n;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,f=(s.subplotsRegistry.ternary||{}).attrRegex,d=(s.subplotsRegistry.gl3d||{}).attrRegex,v=Object.keys(e);for(r=0;r3?(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(e),"rotate"===e.dragmode&&(e.dragmode="orbit"),u.clean(e),e.template&&e.template.layout&&t.cleanLayout(e.template.layout),e},t.cleanData=function(e){for(var r=0;r0)return e.substr(0,t)}t.hasParent=function(e,t){for(var r=b(t);r;){if(r in e)return!0;r=b(r)}return!1};var _=["x","y","z"];t.clearAxisTypes=function(e,t,r){for(var n=0;n1&&a.warn("Full array edits are incompatible with other edits",f);var y=r[""][""];if(u(y))t.set(null);else{if(!Array.isArray(y))return a.warn("Unrecognized full array edit value",f,y),!0;t.set(y)}return!v&&(d(m,g),h(e),!0)}var x,b,_,w,k,T,M,A,S=Object.keys(r).map(Number).sort(o),E=t.get(),C=E||[],L=c(g,f).get(),P=[],O=-1,I=C.length;for(x=0;xC.length-(M?0:1))a.warn("index out of range",f,_);else if(void 0!==T)k.length>1&&a.warn("Insertion & removal are incompatible with edits to the same index.",f,_),u(T)?P.push(_):M?("add"===T&&(T={}),C.splice(_,0,T),L&&L.splice(_,0,{})):a.warn("Unrecognized full object edit value",f,_,T),-1===O&&(O=_);else for(b=0;b=0;x--)C.splice(P[x],1),L&&L.splice(P[x],1);if(C.length?E||t.set(C):t.set(null),v)return!1;if(d(m,g),p!==i){var D;if(-1===O)D=S;else{for(I=Math.max(C.length,I),D=[],x=0;x=O);x++)D.push(_);for(x=O;x=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function O(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if("undefined"===typeof t)throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),P(e,t,"currentIndices"),"undefined"===typeof r||Array.isArray(r)||(r=[r]),"undefined"!==typeof r&&P(e,r,"newIndices"),"undefined"!==typeof r&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function I(e,t,r,n,a){!function(e,t,r,n){var i=o.isPlainObject(n);if(!Array.isArray(e.data))throw new Error("gd.data must be an array");if(!o.isPlainObject(t))throw new Error("update must be a key:value object");if("undefined"===typeof r)throw new Error("indices must be an integer or array of integers");for(var a in P(e,r,"indices"),t){if(!Array.isArray(t[a])||t[a].length!==r.length)throw new Error("attribute "+a+" must be an array of length equal to indices array length");if(i&&(!(a in n)||!Array.isArray(n[a])||n[a].length!==t[a].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}(e,t,r,n);for(var l=function(e,t,r,n){var a,l,u,c,f,d=o.isPlainObject(n),h=[];for(var p in Array.isArray(r)||(r=[r]),r=L(r,e.data.length-1),t)for(var v=0;v-1&&-1===r.indexOf("grouptitlefont")?l(r,r.replace("titlefont","title.font")):r.indexOf("titleposition")>-1?l(r,r.replace("titleposition","title.position")):r.indexOf("titleside")>-1?l(r,r.replace("titleside","title.side")):r.indexOf("titleoffset")>-1&&l(r,r.replace("titleoffset","title.offset")):l(r,r.replace("title","title.text"));function l(t,r){e[r]=e[t],delete e[t]}}function U(e,t,r){e=o.getGraphDiv(e),_.clearPromiseQueue(e);var n={};if("string"===typeof t)n[t]=r;else{if(!o.isPlainObject(t))return o.warn("Relayout fail.",t,r),Promise.reject();n=o.extendFlat({},t)}Object.keys(n).length&&(e.changed=!0);var i=Y(e,n),a=i.flags;a.calc&&(e.calcdata=void 0);var s=[d.previousPromises];a.layoutReplot?s.push(w.layoutReplot):Object.keys(n).length&&(V(e,a,i)||d.supplyDefaults(e),a.legend&&s.push(w.doLegend),a.layoutstyle&&s.push(w.layoutStyles),a.axrange&&H(s,i.rangesAltered),a.ticks&&s.push(w.doTicksRelayout),a.modebar&&s.push(w.doModeBar),a.camera&&s.push(w.doCamera),a.colorbars&&s.push(w.doColorBars),s.push(A)),s.push(d.rehover,d.redrag,d.reselect),u.add(e,U,[e,i.undoit],U,[e,i.redoit]);var l=o.syncOrAsync(s,e);return l&&l.then||(l=Promise.resolve(e)),l.then((function(){return e.emit("plotly_relayout",i.eventData),e}))}function V(e,t,r){var n=e._fullLayout;if(!t.axrange)return!1;for(var i in t)if("axrange"!==i&&t[i])return!1;for(var a in r.rangesAltered){var o=h.id2name(a),s=e.layout[o],l=n[o];if(l.autorange=s.autorange,s.range&&(l.range=s.range.slice()),l.cleanRange(),l._matchGroup)for(var u in l._matchGroup)if(u!==a){var c=n[h.id2name(u)];c.autorange=l.autorange,c.range=l.range.slice(),c._input.range=l.range.slice()}}return!0}function H(e,t){var r=t?function(e){var r=[];for(var n in t){var i=h.getFromId(e,n);if(r.push(n),-1!==(i.ticklabelposition||"").indexOf("inside")&&i._anchorAxis&&r.push(i._anchorAxis._id),i._matchGroup)for(var a in i._matchGroup)t[a]||r.push(a)}return h.draw(e,r,{skipTitle:!0})}:function(e){return h.draw(e,"redraw")};e.push(y,w.doAutoRangeAndConstraints,r,w.drawData,w.finalDraw)}var q=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,W=/^[xyz]axis[0-9]*\.autorange$/,G=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function Y(e,t){var r,n,i,a=e.layout,l=e._fullLayout,u=l._guiEditing,d=F(l._preGUI,u),p=Object.keys(t),v=h.list(e),m=o.extendDeepAll({},t),g={};for(j(t),p=Object.keys(t),n=0;n0&&"string"!==typeof I.parts[R];)R--;var N=I.parts[R],B=I.parts[R-1]+"."+N,U=I.parts.slice(0,R).join("."),V=s(e.layout,U).get(),H=s(l,U).get(),Y=I.get();if(void 0!==D){A[O]=D,S[O]="reverse"===N?D:z(Y);var X=f.getLayoutValObject(l,I.parts);if(X&&X.impliedEdits&&null!==D)for(var K in X.impliedEdits)E(o.relativeAttr(O,K),X.impliedEdits[K]);if(-1!==["width","height"].indexOf(O))if(D){E("autosize",null);var $="height"===O?"width":"height";E($,l[$])}else l[O]=e._initialAutoSize[O];else if("autosize"===O)E("width",D?null:l.width),E("height",D?null:l.height);else if(B.match(q))P(B),s(l,U+"._inputRange").set(null);else if(B.match(W)){P(B),s(l,U+"._inputRange").set(null);var J=s(l,U).get();J._inputDomain&&(J._input.domain=J._inputDomain.slice())}else B.match(G)&&s(l,U+"._inputDomain").set(null);if("type"===N){C=V;var Q="linear"===H.type&&"log"===D,ee="log"===H.type&&"linear"===D;if(Q||ee){if(C&&C.range)if(H.autorange)Q&&(C.range=C.range[1]>C.range[0]?[1,2]:[2,1]);else{var te=C.range[0],re=C.range[1];Q?(te<=0&&re<=0&&E(U+".autorange",!0),te<=0?te=re/1e6:re<=0&&(re=te/1e6),E(U+".range[0]",Math.log(te)/Math.LN10),E(U+".range[1]",Math.log(re)/Math.LN10)):(E(U+".range[0]",Math.pow(10,te)),E(U+".range[1]",Math.pow(10,re)))}else E(U+".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"],c.getComponentMethod("annotations","convertCoords")(e,H,D,E),c.getComponentMethod("images","convertCoords")(e,H,D,E)}else E(U+".autorange",!0),E(U+".range",null);s(l,U+"._inputRange").set(null)}else if(N.match(T)){var ne=s(l,O).get(),ie=(D||{}).type;ie&&"-"!==ie||(ie="linear"),c.getComponentMethod("annotations","convertCoords")(e,ne,ie,E),c.getComponentMethod("images","convertCoords")(e,ne,ie,E)}var ae=b.containerArrayMatch(O);if(ae){r=ae.array,n=ae.index;var oe=ae.property,se=X||{editType:"calc"};""!==n&&""===oe&&(b.isAddVal(D)?S[O]=null:b.isRemoveVal(D)?S[O]=(s(a,r).get()||[])[n]:o.warn("unrecognized full object value",t)),k.update(M,se),g[r]||(g[r]={});var le=g[r][n];le||(le=g[r][n]={}),le[oe]=D,delete t[O]}else"reverse"===N?(V.range?V.range.reverse():(E(U+".autorange",!0),V.range=[1,0]),H.autorange?M.calc=!0:M.plot=!0):("dragmode"===O&&(!1===D&&!1!==Y||!1!==D&&!1===Y)||l._has("scatter-like")&&l._has("regl")&&"dragmode"===O&&("lasso"===D||"select"===D)&&"lasso"!==Y&&"select"!==Y||l._has("gl2d")?M.plot=!0:X?k.update(M,X):M.calc=!0,I.set(D))}}for(r in g)b.applyContainerArrayChanges(e,d(a,r),g[r],M,d)||(M.plot=!0);for(var ue in L){var ce=(C=h.getFromId(e,ue))&&C._constraintGroup;if(ce)for(var fe in M.calc=!0,ce)L[fe]||(h.getFromId(e,fe)._constraintShrinkable=!0)}return(Z(e)||t.height||t.width)&&(M.plot=!0),(M.plot||M.calc)&&(M.layoutReplot=!0),{flags:M,rangesAltered:L,undoit:S,redoit:A,eventData:m}}function Z(e){var t=e._fullLayout,r=t.width,n=t.height;return e.layout.autosize&&d.plotAutoSize(e,e.layout,t),t.width!==r||t.height!==n}function X(e,r,n,i){e=o.getGraphDiv(e),_.clearPromiseQueue(e),o.isPlainObject(r)||(r={}),o.isPlainObject(n)||(n={}),Object.keys(r).length&&(e.changed=!0),Object.keys(n).length&&(e.changed=!0);var a=_.coerceTraceIndices(e,i),s=B(e,o.extendFlat({},r),a),l=s.flags,c=Y(e,o.extendFlat({},n)),f=c.flags;(l.calc||f.calc)&&(e.calcdata=void 0),l.clearAxisTypes&&_.clearAxisTypes(e,a,n);var h=[];f.layoutReplot?h.push(w.layoutReplot):l.fullReplot?h.push(t._doPlot):(h.push(d.previousPromises),V(e,f,c)||d.supplyDefaults(e),l.style&&h.push(w.doTraceStyle),(l.colorbars||f.colorbars)&&h.push(w.doColorBars),f.legend&&h.push(w.doLegend),f.layoutstyle&&h.push(w.layoutStyles),f.axrange&&H(h,c.rangesAltered),f.ticks&&h.push(w.doTicksRelayout),f.modebar&&h.push(w.doModeBar),f.camera&&h.push(w.doCamera),h.push(A)),h.push(d.rehover,d.redrag,d.reselect),u.add(e,X,[e,s.undoit,c.undoit,s.traces],X,[e,s.redoit,c.redoit,s.traces]);var p=o.syncOrAsync(h,e);return p&&p.then||(p=Promise.resolve(e)),p.then((function(){return e.emit("plotly_update",{data:s.eventData,layout:c.eventData}),e}))}function K(e){return function(t){t._fullLayout._guiEditing=!0;var r=e.apply(null,arguments);return t._fullLayout._guiEditing=!1,r}}var $=[{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"}],J=[{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 Q(e,t){for(var r=0;r1;)if(n.pop(),void 0!==(r=s(t,n.join(".")+".uirevision").get()))return r;return t.uirevision}function te(e,t){for(var r=0;r=i.length?i[0]:i[e]:i}function l(e){return Array.isArray(a)?e>=a.length?a[0]:a[e]:a}function u(e,t){var r=0;return function(){if(e&&++r===t)return e()}}return void 0===n._frameWaitingCnt&&(n._frameWaitingCnt=0),new Promise((function(a,c){function f(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var t=n._currentFrame=n._frameQueue.shift();if(t){var r=t.name?t.name.toString():null;e._fullLayout._currentFrame=r,n._lastFrameAt=Date.now(),n._timeToNext=t.frameOpts.duration,d.transition(e,t.frame.data,t.frame.layout,_.coerceTraceIndices(e,t.frame.traces),t.frameOpts,t.transitionOpts).then((function(){t.onComplete&&t.onComplete()})),e.emit("plotly_animatingframe",{name:r,frame:t.frame,animation:{frame:t.frameOpts,transition:t.transitionOpts}})}else e.emit("plotly_animated"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}function h(){e.emit("plotly_animating"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null,function e(){n._animationRaf=window.requestAnimationFrame(e),Date.now()-n._lastFrameAt>n._timeToNext&&f()}()}var p,v,m=0;function g(e){return Array.isArray(i)?m>=i.length?e.transitionOpts=i[m]:e.transitionOpts=i[0]:e.transitionOpts=i,m++,e}var y=[],x=void 0===t||null===t,b=Array.isArray(t);if(x||b||!o.isPlainObject(t)){if(x||-1!==["string","number"].indexOf(typeof t))for(p=0;p0&&TT)&&M.push(v);y=M}}y.length>0?function(t){if(0!==t.length){for(var i=0;i=0;n--)if(o.isPlainObject(t[n])){var v=t[n].name,m=(c[v]||p[v]||{}).name,g=t[n].name,y=c[m]||p[m];m&&g&&"number"===typeof g&&y&&M<5&&(M++,o.warn('addFrames: overwriting frame "'+(c[m]||p[m]).name+'" with a frame whose name of type "number" also equates to "'+m+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===M&&o.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),p[v]={name:v},h.push({frame:d.supplyFrameDefaults(t[n]),index:r&&void 0!==r[n]&&null!==r[n]?r[n]:f+n})}h.sort((function(e,t){return e.index>t.index?-1:e.index=0;n--){if("number"===typeof(i=h[n].frame).name&&o.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;c[i.name="frame "+e._transitionData._counter++];);if(c[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),s.unshift({type:"insert",index:n,value:i[n]});var l=d.modifyFrames,c=d.modifyFrames,f=[e,s],h=[e,a];return u&&u.add(e,l,f,c,h),d.modifyFrames(e,a)},t.addTraces=function e(r,n,i){r=o.getGraphDiv(r);var a,s,l=[],c=t.deleteTraces,f=e,d=[r,l],h=[r,n];for(function(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if("undefined"===typeof t)throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n=0&&r=0&&r=a.length)return!1;if(2===e.dimensions){if(r++,t.length===r)return e;var o=t[r];if(!_(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function _(e){return e===Math.round(e)&&e>=0}function w(){var e,t,r={};for(e in f(r,o),n.subplotsRegistry)if((t=n.subplotsRegistry[e]).layoutAttributes)if(Array.isArray(t.attr))for(var i=0;i=l.length)return!1;i=(r=(n.transformsRegistry[l[u].type]||{}).attributes)&&r[t[2]],s=3}else{var c=e._module;if(c||(c=(n.modules[e.type||a.type.dflt]||{})._module),!c)return!1;if(!(i=(r=c.attributes)&&r[o])){var f=c.basePlotModule;f&&f.attributes&&(i=f.attributes[o])}i||(i=a[o])}return b(i,t,s)},t.getLayoutValObject=function(e,t){var r=function(e,t){var r,i,a,s,l=e._basePlotModules;if(l){var u;for(r=0;r=i&&(r._input||{})._templateitemname;s&&(o=i);var l,u=t+"["+o+"]";function c(){l={},s&&(l[u]={},l[u][a]=s)}function f(e,t){s?n.nestedProperty(l[u],e).set(t):l[u+"."+e]=t}function d(){var e=l;return c(),e}return c(),{modifyBase:function(e,t){l[e]=t},modifyItem:f,getUpdateObj:d,applyUpdate:function(t,r){t&&f(t,r);var i=d();for(var a in i)n.nestedProperty(e,a).set(i[a])}}}},61549:function(e,t,r){"use strict";var n=r(39898),i=r(73972),a=r(74875),o=r(71828),s=r(63893),l=r(33306),u=r(7901),c=r(91424),f=r(92998),d=r(64168),h=r(89298),p=r(18783),v=r(99082),m=v.enforce,g=v.clean,y=r(71739).doAutoRange,x="start",b="middle",_="end";function w(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function k(e){var r,i,s,l,f,v,m=e._fullLayout,g=m._size,y=g.p,x=h.list(e,"",!0);if(m._paperdiv.style({width:e._context.responsive&&m.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":m.width+"px",height:e._context.responsive&&m.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":m.height+"px"}).selectAll(".main-svg").call(c.setSize,m.width,m.height),e._context.setBackground(e,m.paper_bgcolor),t.drawMainTitle(e),d.manage(e),!m._has("cartesian"))return a.previousPromises(e);function b(e,t,r){var n=e._lw/2;return"x"===e._id.charAt(0)?t?"top"===r?t._offset-y-n:t._offset+t._length+y+n:g.t+g.h*(1-(e.position||0))+n%1:t?"right"===r?t._offset+t._length+y+n:t._offset-y-n:g.l+g.w*(e.position||0)+n%1}for(r=0;r.5?"t":"b",o=e._fullLayout.margin[a],s=0;return"paper"===t.yref?s=r+t.pad.t+t.pad.b:"container"===t.yref&&(s=function(e,t,r,n,i){var a=0;return"middle"===r&&(a+=i/2),"t"===e?("top"===r&&(a+=i),a+=n-t*n):("bottom"===r&&(a+=i),a+=t*n),a}(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}(e,r,m);g>0&&(function(e,t,r,n){var i="title.automargin",s=e._fullLayout.title,l=s.y>.5?"t":"b",u={x:s.x,y:s.y,t:0,b:0},c={};"paper"===s.yref&&function(e,t,r,n,i){var a="paper"===t.yref?e._fullLayout._size.h:e._fullLayout.height,s=o.isTopAnchor(t)?n:n-i,l="b"===r?a-s:s;return!(o.isTopAnchor(t)&&"t"===r||o.isBottomAnchor(t)&&"b"===r)&&lk?c.push({code:"unused",traceType:y,templateCount:w,dataCount:k}):k>w&&c.push({code:"reused",traceType:y,templateCount:w,dataCount:k})}}else c.push({code:"data"});if(function e(t,r){for(var n in t)if("_"!==n.charAt(0)){var a=t[n],o=v(t,n,r);i(a)?(Array.isArray(t)&&!1===a._template&&a.templateitemname&&c.push({code:"missing",path:o,templateitemname:a.templateitemname}),e(a,o)):Array.isArray(a)&&m(a)&&e(a,o)}}({data:h,layout:d},""),c.length)return c.map(g)}},403:function(e,t,r){"use strict";var n=r(92770),i=r(72391),a=r(74875),o=r(71828),s=r(25095),l=r(5900),u=r(70942),c=r(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}};e.exports=function(e,t){var r,d,h,p;function v(e){return!(e in t)||o.validate(t[e],f[e])}if(t=t||{},o.isPlainObject(e)?(r=e.data||[],d=e.layout||{},h=e.config||{},p={}):(e=o.getGraphDiv(e),r=o.extendDeep([],e.data),d=o.extendDeep({},e.layout),h=e._context,p=e._fullLayout||{}),!v("width")&&null!==t.width||!v("height")&&null!==t.height)throw new Error("Height and width should be pixel values.");if(!v("format"))throw new Error("Export format is not "+o.join2(f.format.values,", "," or ")+".");var m={};function g(e,r){return o.coerce(t,m,f,e,r)}var y=g("format"),x=g("width"),b=g("height"),_=g("scale"),w=g("setBackground"),k=g("imageDataOnly"),T=document.createElement("div");T.style.position="absolute",T.style.left="-5000px",document.body.appendChild(T);var M=o.extendFlat({},d);x?M.width=x:null===t.width&&n(p.width)&&(M.width=p.width),b?M.height=b:null===t.height&&n(p.height)&&(M.height=p.height);var A=o.extendFlat({},h,{_exportedPlot:!0,staticPlot:!0,setBackground:w}),S=s.getRedrawFunc(T);function E(){return new Promise((function(e){setTimeout(e,s.getDelay(T._fullLayout))}))}function C(){return new Promise((function(e,t){var r=l(T,y,_),n=T._fullLayout.width,f=T._fullLayout.height;function d(){i.purge(T),document.body.removeChild(T)}if("full-json"===y){var h=a.graphJson(T,!1,"keepdata","object",!0,!0);return h.version=c,h=JSON.stringify(h),d(),e(k?h:s.encodeJSON(h))}if(d(),"svg"===y)return e(k?r:s.encodeSVG(r));var p=document.createElement("canvas");p.id=o.randstr(),u({format:y,width:n,height:f,scale:_,canvas:p,svg:r,promise:!0}).then(e).catch(t)}))}return new Promise((function(e,t){i.newPlot(T,r,M,A).then(S).then(E).then(C).then((function(t){e(function(e){return k?e.replace(s.IMAGE_URL_PREFIX,""):e}(t))})).catch((function(e){t(e)}))}))}},84936:function(e,t,r){"use strict";var n=r(71828),i=r(74875),a=r(86281),o=r(72075).dfltConfig,s=n.isPlainObject,l=Array.isArray,u=n.isArrayOrTypedArray;function c(e,t,r,i,a,o){o=o||[];for(var f=Object.keys(e),d=0;dx.length&&i.push(h("unused",a,g.concat(x.length)));var M,A,S,E,C,L=x.length,P=Array.isArray(T);if(P&&(L=Math.min(L,T.length)),2===b.dimensions)for(A=0;Ax[A].length&&i.push(h("unused",a,g.concat(A,x[A].length)));var O=x[A].length;for(M=0;M<(P?Math.min(O,T[A].length):O);M++)S=P?T[A][M]:T,E=y[A][M],C=x[A][M],n.validate(E,S)?C!==E&&C!==+E&&i.push(h("dynamic",a,g.concat(A,M),E,C)):i.push(h("value",a,g.concat(A,M),E))}else i.push(h("array",a,g.concat(A),y[A]));else for(A=0;A1&&d.push(h("object","layout"))),i.supplyDefaults(p);for(var v=p._fullData,m=r.length,g=0;g0&&Math.round(f)===f))return{vals:i};u=f}for(var d=t.calendar,h="start"===l,p="end"===l,v=e[r+"period0"],m=a(v,d)||0,g=[],y=[],x=[],b=i.length,_=0;_M;)T=o(T,-u,d);for(;T<=M;)T=o(T,u,d);k=o(T,-u,d)}else{for(T=m+(w=Math.round((M-m)/c))*c;T>M;)T-=c;for(;T<=M;)T+=c;k=T-c}g[_]=h?k:p?T:(k+T)/2,y[_]=k,x[_]=T}return{vals:g,starts:y,ends:x}}},89502:function(e){"use strict";e.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}},71739:function(e,t,r){"use strict";var n=r(39898),i=r(92770),a=r(71828),o=r(50606).FP_SAFE,s=r(73972),l=r(91424),u=r(41675),c=u.getFromId,f=u.isLinked;function d(e,t){var r,n,i=[],o=e._fullLayout,s=p(o,t,0),l=p(o,t,1),u=m(e,t),c=u.min,f=u.max;if(0===c.length||0===f.length)return a.simpleMap(t.range,t.r2l);var d=c[0].val,v=f[0].val;for(r=1;r0&&((k=E-s(x)-l(b))>C?T/k>L&&(_=x,w=b,L=T/k):T/E>L&&(_={val:x.val,nopad:1},w={val:b.val,nopad:1},L=T/E));if(d===v){var P=d-1,O=d+1;if(A)if(0===d)i=[0,1];else{var I=(d>0?f:c).reduce((function(e,t){return Math.max(e,l(t))}),0),D=d/(1-Math.min(.5,I/E));i=d>0?[0,D]:[D,0]}else i=S?[Math.max(0,P),Math.max(1,O)]:[P,O]}else A?(_.val>=0&&(_={val:0,nopad:1}),w.val<=0&&(w={val:0,nopad:1})):S&&(_.val-L*s(_)<0&&(_={val:0,nopad:1}),w.val<=0&&(w={val:1,nopad:1})),L=(w.val-_.val-h(t,x.val,b.val))/(E-s(_)-l(w)),i=[_.val-L*s(_),w.val+L*l(w)];return g&&i.reverse(),a.simpleMap(i,t.l2r||Number)}function h(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),S=M((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=M(r.vpadplus||r.vpad),C=M(r.vpadminus||r.vpad);if(!k){if(d=1/0,h=-1/0,w)for(n=0;n0&&(d=a),a>h&&a-o&&(d=a),a>h&&a=O;n--)P(n);return{min:p,max:v,opts:r}},concatExtremes:m};var v=3;function m(e,t,r){var n,i,a,o=t._id,s=e._fullData,l=e._fullLayout,u=[],f=[];function d(e,t){for(n=0;n=r&&(u.extrapad||!o)){s=!1;break}i(t,u.val)&&u.pad<=r&&(o||!u.extrapad)&&(e.splice(l,1),l--)}if(s){var c=a&&0===t;e.push({val:t,pad:c?0:r,extrapad:!c&&o})}}function b(e){return i(e)&&Math.abs(e)=t}},89298:function(e,t,r){"use strict";var n=r(39898),i=r(92770),a=r(74875),o=r(73972),s=r(71828),l=s.strTranslate,u=r(63893),c=r(92998),f=r(7901),d=r(91424),h=r(13838),p=r(66287),v=r(50606),m=v.ONEMAXYEAR,g=v.ONEAVGYEAR,y=v.ONEMINYEAR,x=v.ONEMAXQUARTER,b=v.ONEAVGQUARTER,_=v.ONEMINQUARTER,w=v.ONEMAXMONTH,k=v.ONEAVGMONTH,T=v.ONEMINMONTH,M=v.ONEWEEK,A=v.ONEDAY,S=A/2,E=v.ONEHOUR,C=v.ONEMIN,L=v.ONESEC,P=v.MINUS_SIGN,O=v.BADNUM,I={K:"zeroline"},D={K:"gridline",L:"path"},R={K:"minor-gridline",L:"path"},z={K:"tick",L:"path"},F={K:"tick",L:"text"},N={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},B=r(18783),j=B.MID_SHIFT,U=B.CAP_SHIFT,V=B.LINE_SPACING,H=B.OPPOSITE_SIDE,q=3,W=e.exports={};W.setConvert=r(21994);var G=r(4322),Y=r(41675),Z=Y.idSort,X=Y.isLinked;W.id2name=Y.id2name,W.name2id=Y.name2id,W.cleanId=Y.cleanId,W.list=Y.list,W.listIds=Y.listIds,W.getFromId=Y.getFromId,W.getFromTrace=Y.getFromTrace;var K=r(71739);W.getAutoRange=K.getAutoRange,W.findExtremes=K.findExtremes;var $=1e-4;function J(e){var t=(e[1]-e[0])*$;return[e[0]-t,e[1]+t]}W.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),l=r._fullLayout._subplots[o+"axis"],u=n+"ref",c={};return i||(i=l[0]||("string"===typeof a?a:a[0])),a||(a=i),l=l.concat(l.map((function(e){return e+" domain"}))),c[u]={valType:"enumerated",values:l.concat(a?"string"===typeof a?[a]:a:[]),dflt:i},s.coerce(e,t,c,u)},W.getRefType=function(e){return void 0===e?e:"paper"===e?"paper":"pixel"===e?"pixel":/( domain)$/.test(e)?"domain":"range"},W.coercePosition=function(e,t,r,n,i,a){var o,l;if("range"!==W.getRefType(n))o=s.ensureNumber,l=r(i,a);else{var u=W.getFromId(t,n);l=r(i,a=u.fraction2r(a)),o=u.cleanPos}e[i]=o(l)},W.cleanPosition=function(e,t,r){return("paper"===r||"pixel"===r?s.ensureNumber:W.getFromId(t,r).cleanPos)(e)},W.redrawComponents=function(e,t){t=t||W.listIds(e);var r=e._fullLayout;function n(n,i,a,s){for(var l=o.getComponentMethod(n,i),u={},c=0;cr&&f2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0)):e._minDtick=0},W.saveRangeInitial=function(e,t){for(var r=W.list(e,"",!0),n=!1,i=0;i.3*d||c(n)||c(a))){var h=r.dtick/2;e+=e+ho){var l=Number(r.substr(1));a.exactYears>o&&l%12===0?e=W.tickIncrement(e,"M6","reverse")+1.5*A:a.exactMonths>o?e=W.tickIncrement(e,"M1","reverse")+15.5*A:e-=S;var u=W.tickIncrement(e,r);if(u<=n)return u}return e}(y,e,g,u,a)),m=y;m<=c;)m=W.tickIncrement(m,g,!1,a);return{start:t.c2r(y,0,a),end:t.c2r(m,0,a),size:g,_dataSpan:c-u}},W.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n,a=t.dtick&&i(t._tmin);if(a){var o=W.tickIncrement(t._tmin,t.dtick,!0);n=[t._tmin,.99*o+.01*t._tmin]}else{var l=s.simpleMap(t.range,t.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(e.range=s.simpleMap(n,t.l2r),e._isMinor=!0,W.prepTicks(e,r),a){var u=i(t.dtick),c=i(e.dtick),f=u?t.dtick:+t.dtick.substring(1),d=c?e.dtick:+e.dtick.substring(1);u&&c?re(f,d)?f===2*M&&d===2*A&&(e.dtick=M):f===2*M&&d===3*A?e.dtick=M:f!==M||(t._input.minor||{}).nticks?ne(f/d,2.5)?e.dtick=f/2:e.dtick=f:e.dtick=A:"M"===String(t.dtick).charAt(0)?c?e.dtick="M1":re(f,d)?f>=12&&2===d&&(e.dtick="M3"):e.dtick=t.dtick:"L"===String(e.dtick).charAt(0)?"L"===String(t.dtick).charAt(0)?re(f,d)||(e.dtick=ne(f/d,2.5)?t.dtick/2:t.dtick):e.dtick="D1":"D2"===e.dtick&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}void 0===t.minor._tick0Init&&(e.tick0=t.tick0)},W.prepTicks=function(e,t){var r=s.simpleMap(e.range,e.r2l,void 0,void 0,t);if("auto"===e.tickmode||!e.dtick){var n,a=e.nticks;a||("category"===e.type||"multicategory"===e.type?(n=e.tickfont?s.bigFont(e.tickfont.size||12):15,a=e._length/n):(n="y"===e._id.charAt(0)?40:80,a=s.constrain(e._length/n,4,9)+1),"radialaxis"===e._name&&(a*=2)),e.minor&&"array"!==e.minor.tickmode||"array"===e.tickmode&&(a*=100),e._roughDTick=Math.abs(r[1]-r[0])/a,W.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick<2*e._minDtick&&(e.dtick=e._minDtick,e.tick0=e.l2r(e._forceTick0))}"period"===e.ticklabelmode&&function(e){var t;function r(){return!(i(e.dtick)||"M"!==e.dtick.charAt(0))}var n=r(),a=W.getTickFormat(e);if(a){var o=e._dtickInit!==e.dtick;/%[fLQsSMX]/.test(a)||(/%[HI]/.test(a)?(t=E,o&&!n&&e.dtick=(I?0:1);D--){var R=!D;D?(e._dtickInit=e.dtick,e._tick0Init=e.tick0):(e.minor._dtickInit=e.minor.dtick,e.minor._tick0Init=e.minor.tick0);var z=D?e:s.extendFlat({},e,e.minor);if(R?W.prepMinorTicks(z,e,t):W.prepTicks(z,t),"array"!==z.tickmode)if("sync"!==z.tickmode){var F=J(c),N=F[0],B=F[1],j=i(z.dtick),U="log"===a&&!(j||"L"===z.dtick.charAt(0)),V=W.tickFirst(z,t);if(D){if(e._tmin=V,V=B:Y<=B;Y=W.tickIncrement(Y,Z,f,o)){if(D&&H++,z.rangebreaks&&!f){if(Y=h)break}if(L.length>p||Y===G)break;G=Y;var X={value:Y};D?(U&&Y!==(0|Y)&&(X.simpleLabel=!0),l>1&&H%l&&(X.skipLabel=!0),L.push(X)):(X.minor=!0,P.push(X))}}else L=[],v=oe(e);else D?(L=[],v=se(e)):(P=[],C=se(e))}if(I&&!("inside"===e.minor.ticks&&"outside"===e.ticks||"outside"===e.minor.ticks&&"inside"===e.ticks)){for(var K=L.map((function(e){return e.value})),$=[],Q=0;Q0?(a=n-1,o=n):(a=n,o=n);var s,l=e[a].value,u=e[o].value,c=Math.abs(u-l),f=r||c,d=0;f>=y?d=c>=y&&c<=m?c:g:r===b&&f>=_?d=c>=_&&c<=x?c:b:f>=T?d=c>=T&&c<=w?c:k:r===M&&f>=M?d=M:f>=A?d=A:r===S&&f>=S?d=S:r===E&&f>=E&&(d=E),d>=c&&(d=c,s=!0);var h=i+d;if(t.rangebreaks&&d>0){for(var p=0,v=0;v<84;v++){var C=(v+.5)/84;t.maskBreaks(i*(1-C)+C*h)!==O&&p++}(d*=p/84)||(e[n].drop=!0),s&&c>M&&(d=c)}(d>0||0===n)&&(e[n].periodX=i+d/2)}}(L,e,e._definedDelta),e.rangebreaks){var ie="y"===e._id.charAt(0),ae=1;"auto"===e.tickmode&&(ae=e.tickfont?e.tickfont.size:12);var le=NaN;for(r=L.length-1;r>-1;r--)if(L[r].drop)L.splice(r,1);else{L[r].value=ze(L[r].value,e);var ue=e.c2p(L[r].value);(ie?le>ue-ae:leh||feh&&(ce.periodX=h),fe10||"01-01"!==n.substr(5)?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=A&&a<=10||t>=15*A)e._tickround="d";else if(t>=C&&a<=16||t>=E)e._tickround="M";else if(t>=L&&a<=19||t>=C)e._tickround="S";else{var o=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(a,o)-20,e._tickround<0&&(e._tickround=4)}}else if(i(t)||"L"===t.charAt(0)){var s=e.range.map(e.r2d||Number);i(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),u=Math.floor(Math.log(l)/Math.LN10+.01),c=void 0===e.minexponent?3:e.minexponent;Math.abs(u)>c&&(xe(e.exponentformat)&&!be(u)?e._tickexponent=3*Math.round((u-1)/3):e._tickexponent=u)}else e._tickround=null}function ge(e,t,r){var n=e.tickfont||{};return{x:t,dx:0,dy:0,text:r||"",fontSize:n.size,font:n.family,fontColor:n.color}}W.autoTicks=function(e,t,r){var n;function a(e){return Math.pow(e,Math.floor(Math.log(t)/Math.LN10))}if("date"===e.type){e.tick0=s.dateTick0(e.calendar,0);var o=2*t;if(o>g)t/=g,n=a(10),e.dtick="M"+12*ve(t,n,le);else if(o>k)t/=k,e.dtick="M"+ve(t,1,ue);else if(o>A){if(e.dtick=ve(t,A,e._hasDayOfWeekBreaks?[1,2,7,14]:fe),!r){var l=W.getTickFormat(e),u="period"===e.ticklabelmode;u&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=s.dateTick0(e.calendar,2):e.tick0=s.dateTick0(e.calendar,1),u&&(e._dowTick0=e.tick0)}}else o>E?e.dtick=ve(t,E,ue):o>C?e.dtick=ve(t,C,ce):o>L?e.dtick=ve(t,L,ce):(n=a(10),e.dtick=ve(t,n,le))}else if("log"===e.type){e.tick0=0;var c=s.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(c[1]-c[0])<1){var f=1.5*Math.abs((c[1]-c[0])/t);t=Math.abs(Math.pow(10,c[1])-Math.pow(10,c[0]))/f,n=a(10),e.dtick="L"+ve(t,n,le)}else e.dtick=t>.3?"D2":"D1"}else"category"===e.type||"multicategory"===e.type?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):Re(e)?(e.tick0=0,n=1,e.dtick=ve(t,n,pe)):(e.tick0=0,n=a(10),e.dtick=ve(t,n,le));if(0===e.dtick&&(e.dtick=1),!i(e.dtick)&&"string"!==typeof e.dtick){var d=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(d)}},W.tickIncrement=function(e,t,r,a){var o=r?-1:1;if(i(t))return s.increment(e,o*t);var l=t.charAt(0),u=o*Number(t.substr(1));if("M"===l)return s.incrementMonth(e,u,a);if("L"===l)return Math.log(Math.pow(10,e)+u)/Math.LN10;if("D"===l){var c="D2"===t?he:de,f=e+.01*o,d=s.roundUp(s.mod(f,1),c,r);return Math.floor(f)+Math.log(n.round(Math.pow(10,d),1))/Math.LN10}throw"unrecognized dtick "+String(t)},W.tickFirst=function(e,t){var r=e.r2l||Number,a=s.simpleMap(e.range,r,void 0,void 0,t),o=a[1] ")}else e._prevDateHead=l,u+="
"+l;t.text=u}(e,o,r,u):"log"===c?function(e,t,r,n,a){var o=e.dtick,l=t.x,u=e.tickformat,c="string"===typeof o&&o.charAt(0);if("never"===a&&(a=""),n&&"L"!==c&&(o="L3",c="L"),u||"L"===c)t.text=_e(Math.pow(10,l),e,a,n);else if(i(o)||"D"===c&&s.mod(l+.01,1)<.1){var f=Math.round(l),d=Math.abs(f),h=e.exponentformat;"power"===h||xe(h)&&be(f)?(t.text=0===f?1:1===f?"10":"10"+(f>1?"":P)+d+"",t.fontSize*=1.25):("e"===h||"E"===h)&&d>2?t.text="1"+h+(f>0?"+":P)+d:(t.text=_e(Math.pow(10,l),e,"","fakehover"),"D1"===o&&"y"===e._id.charAt(0)&&(t.dy-=t.fontSize/6))}else{if("D"!==c)throw"unrecognized dtick "+String(o);t.text=String(Math.round(Math.pow(10,s.mod(l,1)))),t.fontSize*=.75}if("D1"===e.dtick){var p=String(t.text).charAt(0);"0"!==p&&"1"!==p||("y"===e._id.charAt(0)?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(l<0?.5:.25)))}}(e,o,0,u,v):"category"===c?function(e,t){var r=e._categories[Math.round(t.x)];void 0===r&&(r=""),t.text=String(r)}(e,o):"multicategory"===c?function(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=void 0===i[1]?"":String(i[1]),o=void 0===i[0]?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}(e,o,r):Re(e)?function(e,t,r,n,i){if("radians"!==e.thetaunit||r)t.text=_e(t.x,e,i,n);else{var a=t.x/180;if(0===a)t.text="0";else{var o=function(e){function t(e,t){return Math.abs(e-t)<=1e-6}function r(e,n){return t(n,0)?e:r(n,e%n)}function n(e){for(var r=1;!t(Math.round(e*r)/r,e);)r*=10;return r}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}(a);if(o[1]>=100)t.text=_e(s.deg2rad(t.x),e,i,n);else{var l=t.x<0;1===o[1]?1===o[0]?t.text="\u03c0":t.text=o[0]+"\u03c0":t.text=["",o[0],"","\u2044","",o[1],"","\u03c0"].join(""),l&&(t.text=P+t.text)}}}}(e,o,r,u,v):function(e,t,r,n,i){"never"===i?i="":"all"===e.showexponent&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=_e(t.x,e,i,n)}(e,o,0,u,v),n||(e.tickprefix&&!p(e.showtickprefix)&&(o.text=e.tickprefix+o.text),e.ticksuffix&&!p(e.showticksuffix)&&(o.text+=e.ticksuffix)),e.labelalias&&e.labelalias.hasOwnProperty(o.text)){var m=e.labelalias[o.text];"string"===typeof m&&(o.text=m)}if("boundaries"===e.tickson||e.showdividers){var g=function(t){var r=e.l2p(t);return r>=0&&r<=e._length?t:null};o.xbnd=[g(o.x-.5),g(o.x+e.dtick-.5)]}return o},W.hoverLabelText=function(e,t,r){r&&(e=s.extendFlat({},e,{hoverformat:r}));var n=Array.isArray(t)?t[0]:t,i=Array.isArray(t)?t[1]:void 0;if(void 0!==i&&i!==n)return W.hoverLabelText(e,n,r)+" - "+W.hoverLabelText(e,i,r);var a="log"===e.type&&n<=0,o=W.tickText(e,e.c2l(a?-n:n),"hover").text;return a?0===n?"0":P+o:o};var ye=["f","p","n","\u03bc","m","","k","M","G","T"];function xe(e){return"SI"===e||"B"===e}function be(e){return e>14||e<-15}function _e(e,t,r,n){var a=e<0,o=t._tickround,l=r||t.exponentformat||"B",u=t._tickexponent,c=W.getTickFormat(t),f=t.separatethousands;if(n){var d={exponentformat:l,minexponent:t.minexponent,dtick:"none"===t.showexponent?t.dtick:i(e)&&Math.abs(e)||1,range:"none"===t.showexponent?t.range.map(t.r2d):[0,e||1]};me(d),o=(Number(d._tickround)||0)+4,u=d._tickexponent,t.hoverformat&&(c=t.hoverformat)}if(c)return t._numFormat(c)(e).replace(/-/g,P);var h,p=Math.pow(10,-o)/2;if("none"===l&&(u=0),(e=Math.abs(e))"+h+"":"B"===l&&9===u?e+="B":xe(l)&&(e+=ye[u/3+5])),a?P+e:e}function we(e,t){if(e){var r=Object.keys(N).reduce((function(e,r){return-1!==t.indexOf(r)&&N[r].forEach((function(t){e[t]=1})),e}),{});Object.keys(e).forEach((function(t){r[t]||(1===t.length?e[t]=0:delete e[t])}))}}function ke(e,t){for(var r=[],n={},i=0;i1&&r=i.min&&e=n(e))}function s(e,t){var r=null===t[0],n=null===t[1],i=a(e,t[0])>=0,o=a(e,t[1])<=0;return(r||i)&&(n||o)}if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":for(t=0;t=0&&i.unshift(i.splice(n,1).shift())}}));var o={false:{left:0,right:0}};return s.syncOrAsync(i.map((function(t){return function(){if(t){var n=W.getFromId(e,t);r||(r={}),r.axShifts=o,r.overlayingShiftedAx=a;var i=W.drawOne(e,n,r);return n._shiftPusher&&Be(n,n._fullDepth||0,o,!0),n._r=n.range.slice(),n._rl=s.simpleMap(n._r,n.r2l),i}}})))},W.drawOne=function(e,t,r){var n,i,l,u=(r=r||{}).axShifts||{},h=r.overlayingShiftedAx||[];t.setScale();var p=e._fullLayout,v=t._id,m=v.charAt(0),g=W.counterLetter(v),y=p._plots[t._mainSubplot];if(y){if(t._shiftPusher=t.autoshift||-1!==h.indexOf(t._id)||-1!==h.indexOf(t.overlaying),t._shiftPusher&"free"===t.anchor){var x=t.linewidth/2||0;"inside"===t.ticks&&(x+=t.ticklen),Be(t,x,u,!0),Be(t,t.shift||0,u,!1)}!0===r.skipTitle&&void 0!==t._shift||(t._shift=function(e,t){return e.autoshift?t[e.overlaying][e.side]:e.shift||0}(t,u));var b=y[m+"axislayer"],_=t._mainLinePosition,w=_+=t._shift,k=t._mainMirrorPosition,T=t._vals=W.calcTicks(t),M=[t.mirror,w,k].join("_");for(n=0;n0?r.bottom-c:0,f))));var d=0,h=0;if(t._shiftPusher&&(d=Math.max(f,r.height>0?"l"===l?c-r.left:r.right-c:0),t.title.text!==p._dfltTitle[m]&&(h=(t._titleStandoff||0)+(t._titleScoot||0),"l"===l&&(h+=Ae(t))),t._fullDepth=Math.max(d,h)),t.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var v=[0,1],y="number"===typeof t._shift?t._shift:0;if("x"===m){if("b"===l?n[l]=t._depth:(n[l]=t._depth=Math.max(r.width>0?c-r.top:0,f),v.reverse()),r.width>0){var x=r.right-(t._offset+t._length);x>0&&(n.xr=1,n.r=x);var b=t._offset-r.left;b>0&&(n.xl=0,n.l=b)}}else if("l"===l?(t._depth=Math.max(r.height>0?c-r.left:0,f),n[l]=t._depth-y):(t._depth=Math.max(r.height>0?r.right-c:0,f),n[l]=t._depth+y,v.reverse()),r.height>0){var _=r.bottom-(t._offset+t._length);_>0&&(n.yb=0,n.b=_);var w=t._offset-r.top;w>0&&(n.yt=1,n.t=w)}n[g]="free"===t.anchor?t.position:t._anchorAxis.domain[v[0]],t.title.text!==p._dfltTitle[m]&&(n[l]+=Ae(t)+(t.title.standoff||0)),t.mirror&&"free"!==t.anchor&&((i={x:0,y:0,r:0,l:0,t:0,b:0})[u]=t.linewidth,t.mirror&&!0!==t.mirror&&(i[u]+=f),!0===t.mirror||"ticks"===t.mirror?i[g]=t._anchorAxis.domain[v[1]]:"all"!==t.mirror&&"allticks"!==t.mirror||(i[g]=[t._counterDomainMin,t._counterDomainMax][v[1]]))}le&&(s=o.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),"string"===typeof t.automargin&&(we(n,t.automargin),we(i,t.automargin)),a.autoMargin(e,Ce(t),n),a.autoMargin(e,Le(t),i),a.autoMargin(e,Pe(t),s)})),s.syncOrAsync(oe)}}function ue(e){var r=v+(e||"tick");return A[r]||(A[r]=function(e,t){var r,n,i,a;return e._selections[t].size()?(r=1/0,n=-1/0,i=1/0,a=-1/0,e._selections[t].each((function(){var e=Ee(this),t=d.bBox(e.node().parentNode);r=Math.min(r,t.top),n=Math.max(n,t.bottom),i=Math.min(i,t.left),a=Math.max(a,t.right)}))):(r=0,n=0,i=0,a=0),{top:r,bottom:n,left:i,right:a,height:n-r,width:a-i}}(t,r)),A[r]}},W.getTickSigns=function(e,t){var r=e._id.charAt(0),n={x:"top",y:"right"}[r],i=e.side===n?1:-1,a=[-1,1,i,-i];return"inside"!==(t?(e.minor||{}).ticks:e.ticks)===("x"===r)&&(a=a.map((function(e){return-e}))),e.side&&a.push({l:-1,t:-1,r:1,b:1}[e.side.charAt(0)]),a},W.makeTransTickFn=function(e){return"x"===e._id.charAt(0)?function(t){return l(e._offset+e.l2p(t.x),0)}:function(t){return l(0,e._offset+e.l2p(t.x))}},W.makeTransTickLabelFn=function(e){var t=function(e){var t=e.ticklabelposition||"",r=function(e){return-1!==t.indexOf(e)},n=r("top"),i=r("left"),a=r("right"),o=r("bottom"),s=r("inside"),l=o||i||n||a;if(!l&&!s)return[0,0];var u=e.side,c=l?(e.tickwidth||0)/2:0,f=q,d=e.tickfont?e.tickfont.size:12;return(o||n)&&(c+=d*U,f+=(e.linewidth||0)/2),(i||a)&&(c+=(e.linewidth||0)/2,f+=q),s&&"top"===u&&(f-=d*(1-U)),(i||n)&&(c=-c),"bottom"!==u&&"right"!==u||(f=-f),[l?c:0,s?f:0]}(e),r=t[0],n=t[1];return"x"===e._id.charAt(0)?function(t){return l(r+e._offset+e.l2p(Te(t)),n)}:function(t){return l(n,r+e._offset+e.l2p(Te(t)))}},W.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=void 0!==n.len?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return"x"===o?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r},W.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",a=function(e){return-1!==n.indexOf(e)},o=a("top"),l=a("left"),u=a("right"),c=a("bottom")||l||o||u,f=a("inside"),d="inside"===n&&"inside"===e.ticks||!f&&"outside"===e.ticks&&"boundaries"!==e.tickson,h=0,p=0,v=d?e.ticklen:0;if(f?v*=-1:c&&(v=0),d&&(h+=v,r)){var m=s.deg2rad(r);h=v*Math.cos(m)+1,p=v*Math.sin(m)}e.showticklabels&&(d||e.showline)&&(h+=.2*e.tickfont.size);var g,y,x,b,_,w={labelStandoff:h+=(e.linewidth||1)/2*(f?-1:1),labelShift:p},k=0,T=e.side,M=e._id.charAt(0),A=e.tickangle;if("x"===M)b=(_=!f&&"bottom"===T||f&&"top"===T)?1:-1,f&&(b*=-1),g=p*b,y=t+h*b,x=_?1:-.2,90===Math.abs(A)&&(f?x+=j:x=-90===A&&"bottom"===T?U:90===A&&"top"===T?j:.5,k=j/2*(A/90)),w.xFn=function(e){return e.dx+g+k*e.fontSize},w.yFn=function(e){return e.dy+y+e.fontSize*x},w.anchorFn=function(e,t){if(c){if(l)return"end";if(u)return"start"}return i(t)&&0!==t&&180!==t?t*b<0!==f?"end":"start":"middle"},w.heightFn=function(t,r,n){return r<-60||r>60?-.5*n:"top"===e.side!==f?-n:0};else if("y"===M){if(b=(_=!f&&"left"===T||f&&"right"===T)?1:-1,f&&(b*=-1),g=h,y=p*b,x=0,f||90!==Math.abs(A)||(x=-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*b,x=0}}w.xFn=function(e){return e.dx+t-(g+e.fontSize*x)*b+k*e.fontSize},w.yFn=function(e){return e.dy+y+e.fontSize*j},w.anchorFn=function(e,t){return i(t)&&90===Math.abs(t)?"middle":_?"end":"start"},w.heightFn=function(t,r,n){return"right"===e.side&&(r*=-1),r<-30?-n:r<30?-.5*n:0}}return w},W.drawTicks=function(e,t,r){r=r||{};var i=t._id+"tick",a=[].concat(t.minor&&t.minor.ticks?r.vals.filter((function(e){return e.minor&&!e.noTick})):[]).concat(t.ticks?r.vals.filter((function(e){return!e.minor&&!e.noTick})):[]),o=r.layer.selectAll("path."+i).data(a,Me);o.exit().remove(),o.enter().append("path").classed(i,1).classed("ticks",1).classed("crisp",!1!==r.crisp).each((function(e){return f.stroke(n.select(this),e.minor?t.minor.tickcolor:t.tickcolor)})).style("stroke-width",(function(r){return d.crispRound(e,r.minor?t.minor.tickwidth:t.tickwidth,1)+"px"})).attr("d",r.path).style("display",null),Ne(t,[z]),o.attr("transform",r.transFn)},W.drawGrid=function(e,t,r){if(r=r||{},"sync"!==t.tickmode){var i=t._id+"grid",a=t.minor&&t.minor.showgrid,o=a?r.vals.filter((function(e){return e.minor})):[],s=t.showgrid?r.vals.filter((function(e){return!e.minor})):[],l=r.counterAxis;if(l&&W.shouldShowZeroLine(e,t,l))for(var u="array"===t.tickmode,c=0;c=0;g--){var y=g?v:m;if(y){var x=y.selectAll("path."+i).data(g?s:o,Me);x.exit().remove(),x.enter().append("path").classed(i,1).classed("crisp",!1!==r.crisp),x.attr("transform",r.transFn).attr("d",r.path).each((function(e){return f.stroke(n.select(this),e.minor?t.minor.gridcolor:t.gridcolor||"#ddd")})).style("stroke-dasharray",(function(e){return d.dashStyle(e.minor?t.minor.griddash:t.griddash,e.minor?t.minor.gridwidth:t.gridwidth)})).style("stroke-width",(function(e){return(e.minor?p:t._gw)+"px"})).style("display",null),"function"===typeof r.path&&x.attr("d",r.path)}}Ne(t,[D,R])}},W.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=W.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",!1!==r.crisp).each((function(){r.layer.selectAll("path").sort((function(e,t){return Z(e.id,t.id)}))})),a.attr("transform",r.transFn).attr("d",r.path).call(f.stroke,t.zerolinecolor||f.defaultLine).style("stroke-width",d.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),Ne(t,[I])},W.drawLabels=function(e,t,r){r=r||{};var a=e._fullLayout,o=t._id,c=o.charAt(0),f=r.cls||o+"tick",h=r.vals.filter((function(e){return e.text})),p=r.labelFns,v=r.secondary?0:t.tickangle,m=(t._prevTickAngles||{})[f],g=r.layer.selectAll("g."+f).data(t.showticklabels?h:[],Me),y=[];function x(e,a){e.each((function(e){var o=n.select(this),s=o.select(".text-math-group"),c=p.anchorFn(e,a),f=r.transFn.call(o.node(),e)+(i(a)&&0!==+a?" rotate("+a+","+p.xFn(e)+","+(p.yFn(e)-e.fontSize/2)+")":""),h=u.lineCount(o),v=V*e.fontSize,m=p.heightFn(e,i(a)?+a:0,(h-1)*v);if(m&&(f+=l(0,m)),s.empty()){var g=o.select("text");g.attr({transform:f,"text-anchor":c}),g.style("opacity",1),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var y=d.bBox(s.node()).width*{end:-.5,start:.5}[c];s.attr("transform",f+l(y,0))}}))}g.enter().append("g").classed(f,1).append("text").attr("text-anchor","middle").each((function(t){var r=n.select(this),i=e._promises.length;r.call(u.positionText,p.xFn(t),p.yFn(t)).call(d.font,t.font,t.fontSize,t.fontColor).text(t.text).call(u.convertToTspans,e),e._promises[i]?y.push(e._promises.pop().then((function(){x(r,v)}))):x(r,v)})),Ne(t,[F]),g.exit().remove(),r.repositionOnUpdate&&g.each((function(e){n.select(this).select("text").call(u.positionText,p.xFn(e),p.yFn(e))})),t._adjustTickLabelsOverflow=function(){var r=t.ticklabeloverflow;if(r&&"allow"!==r){var i=-1!==r.indexOf("hide"),o="x"===t._id.charAt(0),l=0,u=o?e._fullLayout.width:e._fullLayout.height;if(-1!==r.indexOf("domain")){var c=s.simpleMap(t.range,t.r2l);l=t.l2p(c[0])+t._offset,u=t.l2p(c[1])+t._offset}var f=Math.min(l,u),h=Math.max(l,u),p=t.side,v=1/0,m=-1/0;for(var y in g.each((function(e){var r=n.select(this);if(r.select(".text-math-group").empty()){var a=d.bBox(r.node()),s=0;o?(a.right>h||a.lefth||a.top+(t.tickangle?0:e.fontSize/4)t["_visibleLabelMin_"+r._id]?l.style("display","none"):"tick"!==e.K||i||l.style("display",null)}))}))}))}))},x(g,m+1?m:v);var b=null;t._selections&&(t._selections[f]=g);var _=[function(){return y.length&&Promise.all(y)}];t.automargin&&a._redrawFromAutoMarginCount&&90===m?(b=90,_.push((function(){x(g,m)}))):_.push((function(){if(x(g,v),h.length&&"x"===c&&!i(v)&&("log"!==t.type||"D"!==String(t.dtick).charAt(0))){b=0;var e,n=0,a=[];if(g.each((function(e){n=Math.max(n,e.fontSize);var r=t.l2p(e.x),i=Ee(this),o=d.bBox(i.node());a.push({top:0,bottom:10,height:10,left:r-o.width/2,right:r+o.width/2+2,width:o.width+2})})),"boundaries"!==t.tickson&&!t.showdividers||r.secondary){var o=h.length,l=Math.abs((h[o-1].x-h[0].x)*t._m)/(o-1),u=t.ticklabelposition||"",f=function(e){return-1!==u.indexOf(e)},p=f("top"),m=f("left"),y=f("right"),_=f("bottom")||m||p||y?(t.tickwidth||0)+2*q:0,w=l<2.5*n||"multicategory"===t.type||"realaxis"===t._name;for(e=0;e1)for(n=1;n2*o}(i,t))return"date";var m="strict"!==r.autotypenumbers;return function(e,t){for(var r=e.length,n=f(r),i=0,o=0,s={},c=0;c2*i}(i,m)?"category":function(e,t){for(var r=e.length,n=0;n=2){var s,u,c="";if(2===o.length)for(s=0;s<2;s++)if(u=b(o[s])){c=m;break}var f=i("pattern",c);if(f===m)for(s=0;s<2;s++)(u=b(o[s]))&&(t.bounds[s]=o[s]=u-1);if(f)for(s=0;s<2;s++)switch(u=o[s],f){case m:if(!n(u))return void(t.enabled=!1);if((u=+u)!==Math.floor(u)||u<0||u>=7)return void(t.enabled=!1);t.bounds[s]=o[s]=u;break;case g:if(!n(u))return void(t.enabled=!1);if((u=+u)<0||u>24)return void(t.enabled=!1);t.bounds[s]=o[s]=u}if(!1===r.autorange){var d=r.range;if(d[0]d[1])return void(t.enabled=!1)}else if(o[0]>d[0]&&o[1]n?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)},t.ref2id=function(e){return!!/^[xyz]/.test(e)&&e.split(" ")[0]},t.isLinked=function(e,t){return a(t,e._axisMatchGroups)||a(t,e._axisConstraintGroups)}},15258:function(e){"use strict";e.exports=function(e,t,r,n){if("category"===t.type){var i,a=e.categoryarray,o=Array.isArray(a)&&a.length>0;o&&(i="array");var s,l=r("categoryorder",i);"array"===l&&(s=r("categoryarray")),o||"array"!==l||(l=t.categoryorder="trace"),"trace"===l?t._initialCategories=[]:"array"===l?t._initialCategories=s.slice():(s=function(e,t){var r,n,i,a=t.dataAttr||e._id.charAt(0),o={};if(t.axData)r=t.axData;else for(r=[],n=0;nn?i.substr(n):a.substr(r))+o:i+a+e*t:o}function m(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;ou*x)||k)for(r=0;rI&&FP&&(P=F);d/=(P-L)/(2*O),L=l.l2r(L),P=l.l2r(P),l.range=l._input.range=S=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function B(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",u(r,n)).attr("d",i+"Z")}function j(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:f.background,stroke:f.defaultLine,"stroke-width":1,opacity:0}).attr("transform",u(t,r)).attr("d","M0,0Z")}function U(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),V(e,t,i,a)}function V(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function H(e){n.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function q(e){O&&e.data&&e._context.showTips&&(i.notifier(i._(e,"Double-click to zoom back out"),"long"),O=!1)}function W(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,P)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function G(e,t,r,n,a){for(var o,s,l,u,c=!1,f={},d={},h=(a||{}).xaHash,p=(a||{}).yaHash,v=0;v=0)i._fullLayout._deactivateShape(i);else{var o=i._fullLayout.clickmode;if(H(i),2!==e||ge||qe(),me)o.indexOf("select")>-1&&S(r,i,K,$,t.id,Pe),o.indexOf("event")>-1&&h.click(i,r,t.id);else if(1===e&&ge){var s=v?I:O,u="s"===v||"w"===g?0:1,f=s._name+".range["+u+"]",d=function(e,t){var r,n=e.range[t],i=Math.abs(n-e.range[1-t]);return"date"===e.type?n:"log"===e.type?(r=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,a("."+r+"g")(Math.pow(10,n))):(r=Math.floor(Math.log(Math.abs(n))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,a("."+String(r)+"g")(n))}(s,u),p="left",m="middle";if(s.fixedrange)return;v?(m="n"===v?"top":"bottom","right"===s.side&&(p="right")):"e"===g&&(p="right"),i._context.showAxisRangeEntryBoxes&&n.select(be).call(c.makeEditable,{gd:i,immediate:!0,background:i._fullLayout.paper_bgcolor,text:String(d),fill:s.tickfont?s.tickfont.color:"#444",horizontalAlign:p,verticalAlign:m}).on("edit",(function(e){var t=s.d2r(e);void 0!==t&&l.call("_guiRelayout",i,f,t)}))}}}function De(t,r){if(e._transitioningWithDuration)return!1;var n=Math.max(0,Math.min(ee,he*t+_e)),i=Math.max(0,Math.min(te,pe*r+we)),a=Math.abs(n-_e),o=Math.abs(i-we);function s(){Se="",ke.r=ke.l,ke.t=ke.b,Ce.attr("d","M0,0Z")}if(ke.l=Math.min(_e,n),ke.r=Math.max(_e,n),ke.t=Math.min(we,i),ke.b=Math.max(we,i),re.isSubplotConstrained)a>P||o>P?(Se="xy",a/ee>o/te?(o=a*te/ee,we>i?ke.t=we-o:ke.b=we+o):(a=o*ee/te,_e>n?ke.l=_e-a:ke.r=_e+a),Ce.attr("d",W(ke))):s();else if(ne.isSubplotConstrained)if(a>P||o>P){Se="xy";var l=Math.min(ke.l/ee,(te-ke.b)/te),u=Math.max(ke.r/ee,(te-ke.t)/te);ke.l=l*ee,ke.r=u*ee,ke.b=(1-l)*te,ke.t=(1-u)*te,Ce.attr("d",W(ke))}else s();else!ae||o0){var c;if(ne.isSubplotConstrained||!ie&&1===ae.length){for(c=0;cb[1]-1/4096&&(t.domain=s),i.noneOrAll(e.domain,t.domain,s),"sync"===t.tickmode&&(t.tickmode="auto")}return r("layer"),t}},89426:function(e,t,r){"use strict";var n=r(59652);e.exports=function(e,t,r,i,a){a||(a={});var o=a.tickSuffixDflt,s=n(e);r("tickprefix")&&r("showtickprefix",s),r("ticksuffix",o)&&r("showticksuffix",s)}},42449:function(e,t,r){"use strict";var n=r(18783).FROM_BL;e.exports=function(e,t,r){void 0===r&&(r=n[e.constraintoward||"center"]);var i=[e.r2l(e.range[0]),e.r2l(e.range[1])],a=i[0]+(i[1]-i[0])*r;e.range=e._input.range=[e.l2r(a+(i[0]-a)*t),e.l2r(a+(i[1]-a)*t)],e.setScale()}},21994:function(e,t,r){"use strict";var n=r(39898),i=r(84096).g0,a=r(71828),o=a.numberFormat,s=r(92770),l=a.cleanNumber,u=a.ms2DateTime,c=a.dateTime2ms,f=a.ensureNumber,d=a.isArrayOrTypedArray,h=r(50606),p=h.FP_SAFE,v=h.BADNUM,m=h.LOG_CLIP,g=h.ONEWEEK,y=h.ONEDAY,x=h.ONEHOUR,b=h.ONEMIN,_=h.ONESEC,w=r(41675),k=r(85555),T=k.HOUR_PATTERN,M=k.WEEKDAY_PATTERN;function A(e){return Math.pow(10,e)}function S(e){return null!==e&&void 0!==e}e.exports=function(e,t){t=t||{};var r=e._id||"x",h=r.charAt(0);function E(t,r){if(t>0)return Math.log(t)/Math.LN10;if(t<=0&&r&&e.range&&2===e.range.length){var n=e.range[0],i=e.range[1];return.5*(n+i-2*m*Math.abs(n-i))}return v}function C(t,r,n,i){if((i||{}).msUTC&&s(t))return+t;var o=c(t,n||e.calendar);if(o===v){if(!s(t))return v;t=+t;var l=Math.floor(10*a.mod(t+.05,1)),u=Math.round(t-l/10);o=c(new Date(u))+l/10}return o}function L(t,r,n){return u(t,r,n||e.calendar)}function P(t){return e._categories[Math.round(t)]}function O(t){if(S(t)){if(void 0===e._categoriesMap&&(e._categoriesMap={}),void 0!==e._categoriesMap[t])return e._categoriesMap[t];e._categories.push("number"===typeof t?String(t):t);var r=e._categories.length-1;return e._categoriesMap[t]=r,r}return v}function I(t){if(e._categoriesMap)return e._categoriesMap[t]}function D(e){var t=I(e);return void 0!==t?t:s(e)?+e:void 0}function R(e){return s(e)?+e:I(e)}function z(e,t,r){return n.round(r+t*e,2)}function F(e,t,r){return(e-r)/t}var N=function(t){return s(t)?z(t,e._m,e._b):v},B=function(t){return F(t,e._m,e._b)};if(e.rangebreaks){var j="y"===h;N=function(t){if(!s(t))return v;var r=e._rangebreaks.length;if(!r)return z(t,e._m,e._b);var n=j;e.range[0]>e.range[1]&&(n=!n);for(var i=n?-1:1,a=i*t,o=0,l=0;lc)){o=a<(u+c)/2?l:l+1;break}o=l+1}var f=e._B[o]||0;return isFinite(f)?z(t,e._m2,f):0},B=function(t){var r=e._rangebreaks.length;if(!r)return F(t,e._m,e._b);for(var n=0,i=0;ie._rangebreaks[i].pmax&&(n=i+1);return F(t,e._m2,e._B[n])}}e.c2l="log"===e.type?E:f,e.l2c="log"===e.type?A:f,e.l2p=N,e.p2l=B,e.c2p="log"===e.type?function(e,t){return N(E(e,t))}:N,e.p2c="log"===e.type?function(e){return A(B(e))}:B,-1!==["linear","-"].indexOf(e.type)?(e.d2r=e.r2d=e.d2c=e.r2c=e.d2l=e.r2l=l,e.c2d=e.c2r=e.l2d=e.l2r=f,e.d2p=e.r2p=function(t){return e.l2p(l(t))},e.p2d=e.p2r=B,e.cleanPos=f):"log"===e.type?(e.d2r=e.d2l=function(e,t){return E(l(e),t)},e.r2d=e.r2c=function(e){return A(l(e))},e.d2c=e.r2l=l,e.c2d=e.l2r=f,e.c2r=E,e.l2d=A,e.d2p=function(t,r){return e.l2p(e.d2r(t,r))},e.p2d=function(e){return A(B(e))},e.r2p=function(t){return e.l2p(l(t))},e.p2r=B,e.cleanPos=f):"date"===e.type?(e.d2r=e.r2d=a.identity,e.d2c=e.r2c=e.d2l=e.r2l=C,e.c2d=e.c2r=e.l2d=e.l2r=L,e.d2p=e.r2p=function(t,r,n){return e.l2p(C(t,0,n))},e.p2d=e.p2r=function(e,t,r){return L(B(e),t,r)},e.cleanPos=function(t){return a.cleanDate(t,v,e.calendar)}):"category"===e.type?(e.d2c=e.d2l=O,e.r2d=e.c2d=e.l2d=P,e.d2r=e.d2l_noadd=D,e.r2c=function(t){var r=R(t);return void 0!==r?r:e.fraction2r(.5)},e.l2r=e.c2r=f,e.r2l=R,e.d2p=function(t){return e.l2p(e.r2c(t))},e.p2d=function(e){return P(B(e))},e.r2p=e.d2p,e.p2r=B,e.cleanPos=function(e){return"string"===typeof e&&""!==e?e:f(e)}):"multicategory"===e.type&&(e.r2d=e.c2d=e.l2d=P,e.d2r=e.d2l_noadd=D,e.r2c=function(t){var r=D(t);return void 0!==r?r:e.fraction2r(.5)},e.r2c_just_indices=I,e.l2r=e.c2r=f,e.r2l=D,e.d2p=function(t){return e.l2p(e.r2c(t))},e.p2d=function(e){return P(B(e))},e.r2p=e.d2p,e.p2r=B,e.cleanPos=function(e){return Array.isArray(e)||"string"===typeof e&&""!==e?e:f(e)},e.setupMultiCategory=function(n){var i,o,s=e._traceIndices,l=e._matchGroup;if(l&&0===e._categories.length)for(var u in l)if(u!==r){var c=t[w.id2name(u)];s=s.concat(c._traceIndices)}var f=[[0,{}],[0,{}]],p=[];for(i=0;ip&&(o[n]=p),o[0]===o[1]){var u=Math.max(1,Math.abs(1e-6*o[0]));o[0]-=u,o[1]+=u}}else a.nestedProperty(e,t).set(i)},e.setScale=function(r){var n=t._size;if(e.overlaying){var i=w.getFromId({_fullLayout:t},e.overlaying);e.domain=i.domain}var a=r&&e._r?"_r":"range",o=e.calendar;e.cleanRange(a);var s,l,u=e.r2l(e[a][0],o),c=e.r2l(e[a][1],o),f="y"===h;if(f?(e._offset=n.t+(1-e.domain[1])*n.h,e._length=n.h*(e.domain[1]-e.domain[0]),e._m=e._length/(u-c),e._b=-e._m*c):(e._offset=n.l+e.domain[0]*n.w,e._length=n.w*(e.domain[1]-e.domain[0]),e._m=e._length/(c-u),e._b=-e._m*u),e._rangebreaks=[],e._lBreaks=0,e._m2=0,e._B=[],e.rangebreaks&&(e._rangebreaks=e.locateBreaks(Math.min(u,c),Math.max(u,c)),e._rangebreaks.length)){for(s=0;sc&&(d=!d),d&&e._rangebreaks.reverse();var p=d?-1:1;for(e._m2=p*e._length/(Math.abs(c-u)-e._lBreaks),e._B.push(-e._m2*(f?c:u)),s=0;si&&(i+=7,oi&&(i+=24,o=n&&o=n&&t=s.min&&(es.max&&(s.max=n),i=!1)}i&&u.push({min:e,max:n})}};for(n=0;nr.duration?(function(){for(var r={},n=0;n rect").call(o.setTranslate,0,0).call(o.setScale,1,1),e.plot.call(o.setTranslate,t._offset,r._offset).call(o.setScale,1,1);var n=e.plot.selectAll(".scatterlayer .trace");n.selectAll(".point").call(o.setPointGroupScale,1,1),n.selectAll(".textpoint").call(o.setTextPointsScale,1,1),n.call(o.hideOutsideRangePoints,e)}function m(t,r){var n=t.plotinfo,i=n.xaxis,l=n.yaxis,u=i._length,c=l._length,f=!!t.xr1,d=!!t.yr1,h=[];if(f){var p=a.simpleMap(t.xr0,i.r2l),v=a.simpleMap(t.xr1,i.r2l),m=p[1]-p[0],g=v[1]-v[0];h[0]=(p[0]*(1-r)+r*v[0]-p[0])/(p[1]-p[0])*u,h[2]=u*(1-r+r*g/m),i.range[0]=i.l2r(p[0]*(1-r)+r*v[0]),i.range[1]=i.l2r(p[1]*(1-r)+r*v[1])}else h[0]=0,h[2]=u;if(d){var y=a.simpleMap(t.yr0,l.r2l),x=a.simpleMap(t.yr1,l.r2l),b=y[1]-y[0],_=x[1]-x[0];h[1]=(y[1]*(1-r)+r*x[1]-y[1])/(y[0]-y[1])*c,h[3]=c*(1-r+r*_/b),l.range[0]=i.l2r(y[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(y[1]*(1-r)+r*x[1])}else h[1]=0,h[3]=c;s.drawOne(e,i,{skipTitle:!0}),s.drawOne(e,l,{skipTitle:!0}),s.redrawComponents(e,[i._id,l._id]);var w=f?u/h[2]:1,k=d?c/h[3]:1,T=f?h[0]:0,M=d?h[1]:0,A=f?h[0]/h[2]*u:0,S=d?h[1]/h[3]*c:0,E=i._offset-A,C=l._offset-S;n.clipRect.call(o.setTranslate,T,M).call(o.setScale,1/w,1/k),n.plot.call(o.setTranslate,E,C).call(o.setScale,w,k),o.setPointGroupScale(n.zoomScalePts,1/w,1/k),o.setTextPointsScale(n.zoomScaleTxt,1/w,1/k)}s.redrawComponents(e)}},951:function(e,t,r){"use strict";var n=r(73972).traceIs,i=r(4322);function a(e){return{v:"x",h:"y"}[e.orientation||"v"]}function o(e,t){var r=a(e),i=n(e,"box-violin"),o=n(e._fullInput||{},"candlestick");return i&&!o&&t===r&&void 0===e[r]&&void 0===e[r+"0"]}e.exports=function(e,t,r,s){r("autotypenumbers",s.autotypenumbersDflt),"-"===r("type",(s.splomStash||{}).type)&&(function(e,t){if("-"===e.type){var r,s=e._id,l=s.charAt(0);-1!==s.indexOf("scene")&&(s=l);var u=function(e,t,r){for(var n=0;n0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(o(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}(t,s,l);if(u)if("histogram"!==u.type||l!=={v:"y",h:"x"}[u.orientation||"v"]){var c=l+"calendar",f=u[c],d={noMultiCategory:!n(u,"cartesian")||n(u,"noMultiCategory")};if("box"===u.type&&u._hasPreCompStats&&l==={h:"x",v:"y"}[u.orientation||"v"]&&(d.noMultiCategory=!0),d.autotypenumbers=e.autotypenumbers,o(u,l)){var h=a(u),p=[];for(r=0;r0?".":"")+a;i.isPlainObject(o)?l(o,t,s,n+1):t(s,a,o)}}))}t.manageCommandObserver=function(e,r,n,o){var s={},l=!0;r&&r._commandObserver&&(s=r._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var u=t.hasSimpleAPICommandBindings(e,n,s.lookupTable);if(r&&r._commandObserver){if(u)return s;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,s}if(u){a(e,u,s.cache),s.check=function(){if(l){var t=a(e,u,s.cache);return t.changed&&o&&void 0!==s.lookupTable[t.value]&&(s.disable(),Promise.resolve(o({value:t.value,type:u.type,prop:u.prop,traces:u.traces,index:s.lookupTable[t.value]})).then(s.enable,s.enable)),t.changed}};for(var c=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],f=0;f0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}e.exports=function(e){return new A(e)},S.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in w.layerNameToAdjective)if("frame"!==l&&a["show"+l]){s=!0;break}for(var u=!1,c=0;c0&&o._module.calcGeoJSON(a,t)}if(!r){if(this.updateProjection(e,t))return;this.viewInitial&&this.scope===n.scope||this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),p.generalUpdatePerTraceModule(this.graphDiv,this,e,n);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(e,t){var r=this.graphDiv,n=t[this.id],l=t._size,c=n.domain,f=n.projection,d=n.lonaxis,h=n.lataxis,p=d._ax,v=h._ax,g=this.projection=function(e){var t=e.projection,r=t.type,n=w.projNames[r];n="geo"+u.titleCase(n);for(var l=(i[n]||s[n])(),c=e._isSatellite?180*Math.acos(1/t.distance)/Math.PI:e._isClipped?w.lonaxisSpan[r]/2:null,f=["center","rotate","parallels","clipExtent"],d=function(e){return e?l:[]},h=0;hc*Math.PI/180}return!1},l.getPath=function(){return a().projection(l)},l.getBounds=function(e){return l.getPath().bounds(e)},l.precision(w.precision),e._isSatellite&&l.tilt(t.tilt).distance(t.distance),c&&l.clipAngle(c-w.clipPad),l}(n),y=[[l.l+l.w*c.x[0],l.t+l.h*(1-c.y[1])],[l.l+l.w*c.x[1],l.t+l.h*(1-c.y[0])]],x=n.center||{},b=f.rotation||{},_=d.range||[],k=h.range||[];if(n.fitbounds){p._length=y[1][0]-y[0][0],v._length=y[1][1]-y[0][1],p.range=m(r,p),v.range=m(r,v);var T=(p.range[0]+p.range[1])/2,M=(v.range[0]+v.range[1])/2;if(n._isScoped)x={lon:T,lat:M};else if(n._isClipped){x={lon:T,lat:M},b={lon:T,lat:M,roll:b.roll};var A=f.type,S=w.lonaxisSpan[A]/2||180,C=w.lataxisSpan[A]/2||90;_=[T-S,T+S],k=[M-C,M+C]}else x={lon:T,lat:M},b={lon:T,lat:b.lat,roll:b.roll}}g.center([x.lon-b.lon,x.lat-b.lat]).rotate([-b.lon,-b.lat,b.roll]).parallels(f.parallels);var L=E(_,k);g.fitExtent(y,L);var P=this.bounds=g.getBounds(L),O=this.fitScale=g.scale(),I=g.translate();if(n.fitbounds){var D=g.getBounds(E(p.range,v.range)),R=Math.min((P[1][0]-P[0][0])/(D[1][0]-D[0][0]),(P[1][1]-P[0][1])/(D[1][1]-D[0][1]));isFinite(R)?g.scale(R*O):u.warn("Something went wrong during"+this.id+"fitbounds computations.")}else g.scale(f.scale*O);var z=this.midPt=[(P[0][0]+P[1][0])/2,(P[0][1]+P[1][1])/2];if(g.translate([I[0]+(z[0]-I[0]),I[1]+(z[1]-I[1])]).clipExtent(P),n._isAlbersUsa){var F=g([x.lon,x.lat]),N=g.translate();g.translate([N[0]-(F[0]-N[0]),N[1]-(F[1]-N[1])])}},S.updateBaseLayers=function(e,t){var r=this,i=r.topojson,a=r.layers,o=r.basePaths;function s(e){return"lonaxis"===e||"lataxis"===e}function l(e){return Boolean(w.lineLayers[e])}function u(e){return Boolean(w.fillLayers[e])}var c=(this.hasChoropleth?w.layersForChoropleth:w.layers).filter((function(e){return l(e)||u(e)?t["show"+e]:!s(e)||t[e].showgrid})),h=r.framework.selectAll(".layer").data(c,String);h.exit().each((function(e){delete a[e],delete o[e],n.select(this).remove()})),h.enter().append("g").attr("class",(function(e){return"layer "+e})).each((function(e){var t=a[e]=n.select(this);"bg"===e?r.bgRect=t.append("rect").style("pointer-events","all"):s(e)?o[e]=t.append("path").style("fill","none"):"backplot"===e?t.append("g").classed("choroplethlayer",!0):"frontplot"===e?t.append("g").classed("scatterlayer",!0):l(e)?o[e]=t.append("path").style("fill","none").style("stroke-miterlimit",2):u(e)&&(o[e]=t.append("path").style("stroke","none"))})),h.order(),h.each((function(r){var n=o[r],a=w.layerNameToAdjective[r];"frame"===r?n.datum(w.sphereSVG):l(r)||u(r)?n.datum(M(i,i.objects[r])):s(r)&&n.datum(function(e,t,r){var n,i,a,o=1e-6,s=2.5,l=t[e],u=w.scopeDefaults[t.scope];"lonaxis"===e?(n=u.lonaxisRange,i=u.lataxisRange,a=function(e,t){return[e,t]}):"lataxis"===e&&(n=u.lataxisRange,i=u.lonaxisRange,a=function(e,t){return[t,e]});var c={type:"linear",range:[n[0],n[1]-o],tick0:l.tick0,dtick:l.dtick};v.setConvert(c,r);var f=v.calcTicks(c);t.isScoped||"lonaxis"!==e||f.pop();for(var d=f.length,h=new Array(d),p=0;p-1&&b(n.event,i,[r.xaxis],[r.yaxis],r.id,c),s.indexOf("event")>-1&&h.click(i,n.event))}))}function f(e){return r.projection.invert([e[0]+r.xaxis._offset,e[1]+r.yaxis._offset])}},S.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,i="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",i),e.clipRect=e.clipDef.append("rect"),e.framework=n.select(e.container).append("g").attr("class","geo "+e.id).call(d.setClipUrl,i,t),e.project=function(t){var r=e.projection(t);return r?[r[0]-e.xaxis._offset,r[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(t){return e.project(t)[0]}},e.yaxis={_id:"y",c2p:function(t){return e.project(t)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},v.setConvert(e.mockAxis,r)},S.saveViewInitial=function(e){var t,r=e.center||{},n=e.projection,i=n.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":n.scale},t=e._isScoped?{"center.lon":r.lon,"center.lat":r.lat}:e._isClipped?{"projection.rotation.lon":i.lon,"projection.rotation.lat":i.lat}:{"center.lon":r.lon,"center.lat":r.lat,"projection.rotation.lon":i.lon},u.extendFlat(this.viewInitial,t)},S.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},S._render=function(){var e,t=this.projection,r=t.getPath();function n(e){var r=t(e.lonlat);return r?c(r[0],r[1]):null}function i(e){return t.isLonLatOverEdges(e.lonlat)?"none":null}for(e in this.basePaths)this.basePaths[e].attr("d",r);for(e in this.dataPaths)this.dataPaths[e].attr("d",(function(e){return r(e.geojson)}));for(e in this.dataPoints)this.dataPoints[e].attr("display",i).attr("transform",n)}},44622:function(e,t,r){"use strict";var n=r(27659).AU,i=r(71828).counterRegex,a=r(69082),o="geo",s=i(o),l={};l[o]={valType:"subplotid",dflt:o,editType:"calc"},e.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:r(77519),supplyLayoutDefaults:r(82161),plot:function(e){for(var t=e._fullLayout,r=e.calcdata,i=t._subplots[o],s=0;s0&&P<0&&(P+=360);var O,I,D,R=(L+P)/2;if(!h){var z=p?f.projRotate:[R,0,0];O=r("projection.rotation.lon",z[0]),r("projection.rotation.lat",z[1]),r("projection.rotation.roll",z[2]),r("showcoastlines",!p&&x)&&(r("coastlinecolor"),r("coastlinewidth")),r("showocean",!!x&&void 0)&&r("oceancolor")}h?(I=-96.6,D=38.7):(I=p?R:O,D=(C[0]+C[1])/2),r("center.lon",I),r("center.lat",D),v&&(r("projection.tilt"),r("projection.distance")),m&&r("projection.parallels",f.projParallels||[0,60]),r("projection.scale"),r("showland",!!x&&void 0)&&r("landcolor"),r("showlakes",!!x&&void 0)&&r("lakecolor"),r("showrivers",!!x&&void 0)&&(r("rivercolor"),r("riverwidth")),r("showcountries",p&&"usa"!==c&&x)&&(r("countrycolor"),r("countrywidth")),("usa"===c||"north america"===c&&50===u)&&(r("showsubunits",x),r("subunitcolor"),r("subunitwidth")),p||r("showframe",x)&&(r("framecolor"),r("framewidth")),r("bgcolor"),r("fitbounds")&&(delete t.projection.scale,p?(delete t.center.lon,delete t.center.lat):g?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}e.exports=function(e,t,r){i(e,t,r,{type:"geo",attributes:s,handleDefaults:u,fullData:r,partition:"y"})}},74455:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(73972),o=Math.PI/180,s=180/Math.PI,l={cursor:"pointer"},u={cursor:"auto"};function c(e,t){return n.behavior.zoom().translate(t.translate()).scale(t.scale())}function f(e,t,r){var n=e.id,o=e.graphDiv,s=o.layout,l=s[n],u=o._fullLayout,c=u[n],f={},d={};function h(e,t){f[n+"."+e]=i.nestedProperty(l,e).get(),a.call("_storeDirectGUIEdit",s,u._preGUI,f);var r=i.nestedProperty(c,e);r.get()!==t&&(r.set(t),i.nestedProperty(l,e).set(t),d[n+"."+e]=t)}r(h),h("projection.scale",t.scale()/e.fitScale),h("fitbounds",!1),o.emit("plotly_relayout",d)}function d(e,t){var r=c(0,t);function i(r){var n=t.invert(e.midPt);r("center.lon",n[0]),r("center.lat",n[1])}return r.on("zoomstart",(function(){n.select(this).style(l)})).on("zoom",(function(){t.scale(n.event.scale).translate(n.event.translate),e.render(!0);var r=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":r[0],"geo.center.lat":r[1]})})).on("zoomend",(function(){n.select(this).style(u),f(e,t,i)})),r}function h(e,t){var r,i,a,o,s,d,h,p,v,m=c(0,t),g=2;function y(e){return t.invert(e)}function x(r){var n=t.rotate(),i=t.invert(e.midPt);r("projection.rotation.lon",-n[0]),r("center.lon",i[0]),r("center.lat",i[1])}return m.on("zoomstart",(function(){n.select(this).style(l),r=n.mouse(this),i=t.rotate(),a=t.translate(),o=i,s=y(r)})).on("zoom",(function(){if(d=n.mouse(this),function(e){var r=y(e);if(!r)return!0;var n=t(r);return Math.abs(n[0]-e[0])>g||Math.abs(n[1]-e[1])>g}(r))return m.scale(t.scale()),void m.translate(t.translate());t.scale(n.event.scale),t.translate([a[0],n.event.translate[1]]),s?y(d)&&(p=y(d),h=[o[0]+(p[0]-s[0]),i[1],i[2]],t.rotate(h),o=h):s=y(r=d),v=!0,e.render(!0);var l=t.rotate(),u=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":u[0],"geo.center.lat":u[1],"geo.projection.rotation.lon":-l[0]})})).on("zoomend",(function(){n.select(this).style(u),v&&f(e,t,x)})),m}function p(e,t){var r,i={r:t.rotate(),k:t.scale()},a=c(0,t),d=function(e){for(var t=0,r=arguments.length,i=[];++tp?(a=(f>0?90:-90)-h,i=0):(a=Math.asin(f/p)*s-h,i=Math.sqrt(p*p-f*f));var v=180-a-2*h,g=(Math.atan2(d,c)-Math.atan2(u,i))*s,x=(Math.atan2(d,c)-Math.atan2(u,-i))*s,b=m(r[0],r[1],a,g),_=m(r[0],r[1],v,x);return b<=_?[a,g,r[2]]:[v,x,r[2]]}(l,r,f);isFinite(h[0])&&isFinite(h[1])&&isFinite(h[2])||(h=f),t.rotate(h),f=h}}else r=v(t,u=e);d.of(this,arguments)({type:"zoom"})})),e=d.of(this,arguments),h++||e({type:"zoomstart"})})).on("zoomend",(function(){var r;n.select(this).style(u),p.call(a,"zoom",null),r=d.of(this,arguments),--h||r({type:"zoomend"}),f(e,t,g)})).on("zoom.redraw",(function(){e.render(!0);var r=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-r[0],"geo.projection.rotation.lat":-r[1]})})),n.rebind(a,d,"on")}function v(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&function(e){var t=e[0]*o,r=e[1]*o,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}(r)}function m(e,t,r,n){var i=g(r-e),a=g(n-t);return Math.sqrt(i*i+a*a)}function g(e){return(e%360+540)%360-180}function y(e,t,r){var n=r*o,i=e.slice(),a=0===t?1:0,s=2===t?1:2,l=Math.cos(n),u=Math.sin(n);return i[a]=e[a]*l-e[s]*u,i[s]=e[s]*l+e[a]*u,i}function x(e,t){for(var r=0,n=0,i=e.length;nMath.abs(s)?(u.boxEnd[1]=u.boxStart[1]+Math.abs(a)*_*(s>=0?1:-1),u.boxEnd[1]l[3]&&(u.boxEnd[1]=l[3],u.boxEnd[0]=u.boxStart[0]+(l[3]-u.boxStart[1])/Math.abs(_))):(u.boxEnd[0]=u.boxStart[0]+Math.abs(s)/_*(a>=0?1:-1),u.boxEnd[0]l[2]&&(u.boxEnd[0]=l[2],u.boxEnd[1]=u.boxStart[1]+(l[2]-u.boxStart[0])*Math.abs(_)))}}else u.boxEnabled?(a=u.boxStart[0]!==u.boxEnd[0],s=u.boxStart[1]!==u.boxEnd[1],a||s?(a&&(m(0,u.boxStart[0],u.boxEnd[0]),e.xaxis.autorange=!1),s&&(m(1,u.boxStart[1],u.boxEnd[1]),e.yaxis.autorange=!1),e.relayoutCallback()):e.glplot.setDirty(),u.boxEnabled=!1,u.boxInited=!1):u.boxInited&&(u.boxInited=!1);break;case"pan":u.boxEnabled=!1,u.boxInited=!1,t?(u.panning||(u.dragStart[0]=n,u.dragStart[1]=i),Math.abs(u.dragStart[0]-n).999&&(m="turntable"):m="turntable")}else m="turntable";r("dragmode",m),r("hovermode",n.getDfltFromLayout("hovermode"))}e.exports=function(e,t,r){var i=t._basePlotModules.length>1;o(e,t,r,{type:c,attributes:l,handleDefaults:f,fullLayout:t,font:t.font,fullData:r,getDfltFromLayout:function(t){if(!i)return n.validate(e[t],l[t])?e[t]:void 0},autotypenumbersDflt:t.autotypenumbers,paper_bgcolor:t.paper_bgcolor,calendar:t.calendar})}},65500:function(e,t,r){"use strict";var n=r(77894),i=r(27670).Y,a=r(1426).extendFlat,o=r(71828).counterRegex;function s(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}e.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:n,yaxis:n,zaxis:n,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(e,t,r){"use strict";var n=r(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(e){for(var t=0;t<3;++t){var r=e[i[t]];r.visible?(this.enabled[t]=r.showspikes,this.colors[t]=n(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness):(this.enabled[t]=!1,this.drawSides[t]=!1)}},e.exports=function(e){var t=new a;return t.merge(e),t}},96085:function(e,t,r){"use strict";e.exports=function(e){for(var t=e.axesOptions,r=e.glplot.axesPixels,s=e.fullSceneLayout,l=[[],[],[]],u=0;u<3;++u){var c=s[a[u]];if(c._length=(r[u].hi-r[u].lo)*r[u].pixelsPerDataUnit/e.dataScale[u],Math.abs(c._length)===1/0||isNaN(c._length))l[u]=[];else{c._input_range=c.range.slice(),c.range[0]=r[u].lo/e.dataScale[u],c.range[1]=r[u].hi/e.dataScale[u],c._m=1/(e.dataScale[u]*r[u].pixelsPerDataUnit),c.range[0]===c.range[1]&&(c.range[0]-=1,c.range[1]+=1);var f=c.tickmode;if("auto"===c.tickmode){c.tickmode="linear";var d=c.nticks||i.constrain(c._length/40,4,9);n.autoTicks(c,Math.abs(c.range[1]-c.range[0])/d)}for(var h=n.calcTicks(c,{msUTC:!0}),p=0;p/g," "));l[u]=h,c.tickmode=f}}for(t.ticks=l,u=0;u<3;++u)for(o[u]=.5*(e.glplot.bounds[0][u]+e.glplot.bounds[1][u]),p=0;p<2;++p)t.bounds[p][u]=e.glplot.bounds[p][u];e.contourLevels=function(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;ar.deltaY?1.1:1/1.1,a=e.glplot.getAspectratio();e.glplot.setAspectratio({x:n*a.x,y:n*a.y,z:n*a.z})}i(e)}}),!!u&&{passive:!1}),e.glplot.canvas.addEventListener("mousemove",(function(){if(!1!==e.fullSceneLayout.dragmode&&0!==e.camera.mouseListener.buttons){var t=n();e.graphDiv.emit("plotly_relayouting",t)}})),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",(function(r){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:r,layer:e.id})}),!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0},k.render=function(){var e,t=this,r=t.graphDiv,n=t.svgContainer,i=t.container.getBoundingClientRect();r._fullLayout._calcInverseTransform(r);var a=r._fullLayout._invScaleX,o=r._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),b(t),t.glplot.axes.update(t.axesOptions);for(var u=Object.keys(t.traces),c=null,d=t.glplot.selection,v=0;v")):"isosurface"===e.type||"volume"===e.type?(T.valueLabel=h.hoverLabelText(t._mockAxis,t._mockAxis.d2l(d.traceCoordinate[3]),e.valuehoverformat),E.push("value: "+T.valueLabel),d.textLabel&&E.push(d.textLabel),x=E.join("
")):x=d.textLabel;var C={x:d.traceCoordinate[0],y:d.traceCoordinate[1],z:d.traceCoordinate[2],data:w._input,fullData:w,curveNumber:w.index,pointNumber:k};p.appendArrayPointValue(C,w,k),e._module.eventData&&(C=w._module.eventData(C,d,w,{},k));var L={points:[C]};if(t.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:T.xLabel,yLabel:T.yLabel,zLabel:T.zLabel,text:x,name:c.name,color:p.castHoverOption(w,k,"bgcolor")||c.color,borderColor:p.castHoverOption(w,k,"bordercolor"),fontFamily:p.castHoverOption(w,k,"font.family"),fontSize:p.castHoverOption(w,k,"font.size"),fontColor:p.castHoverOption(w,k,"font.color"),nameLength:p.castHoverOption(w,k,"namelength"),textAlign:p.castHoverOption(w,k,"align"),hovertemplate:f.castOption(w,k,"hovertemplate"),hovertemplateLabels:f.extendFlat({},C,T),eventData:[C]},{container:n,gd:r,inOut_bbox:P}),C.bbox=P[0]}d.distance<5&&(d.buttons||_)?r.emit("plotly_click",L):r.emit("plotly_hover",L),this.oldEventData=L}else p.loneUnhover(n),this.oldEventData&&r.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;t.drawAnnotations(t)},k.recoverContext=function(){var e=this;e.glplot.dispose(),requestAnimationFrame((function t(){e.glplot.gl.isContextLost()?requestAnimationFrame(t):e.initializeGLPlot()?e.plot.apply(e,e.plotArgs):f.error("Catastrophic and unrecoverable WebGL error. Context lost.")}))};var M=["xaxis","yaxis","zaxis"];function A(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=M[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(f.isArrayOrTypedArray(l))for(var d,h=0;h<(c||l.length);h++)if(f.isArrayOrTypedArray(l[h]))for(var p=0;pg[1][o])g[0][o]=-1,g[1][o]=1;else{var L=g[1][o]-g[0][o];g[0][o]-=L/32,g[1][o]+=L/32}if("reversed"===l.autorange){var P=g[0][o];g[0][o]=g[1][o],g[1][o]=P}}else{var O=l.range;g[0][o]=l.r2l(O[0]),g[1][o]=l.r2l(O[1])}g[0][o]===g[1][o]&&(g[0][o]-=1,g[1][o]+=1),y[o]=g[1][o]-g[0][o],n.glplot.setBounds(o,{min:g[0][o]*h[o],max:g[1][o]*h[o]})}var I=c.aspectmode;if("cube"===I)m=[1,1,1];else if("manual"===I){var D=c.aspectratio;m=[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=x[u=(l=c[M[o]]).type];R[o]=Math.pow(z.acc,1/z.count)/h[o]}m="data"===I||Math.max.apply(null,R)/Math.min.apply(null,R)<=4?R:[1,1,1]}c.aspectratio.x=f.aspectratio.x=m[0],c.aspectratio.y=f.aspectratio.y=m[1],c.aspectratio.z=f.aspectratio.z=m[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var F=c.domain||null,N=t._size||null;if(F&&N){var B=n.container.style;B.position="absolute",B.left=N.l+F.x[0]*N.w+"px",B.top=N.t+(1-F.y[1])*N.h+"px",B.width=N.w*(F.x[1]-F.x[0])+"px",B.height=N.h*(F.y[1]-F.y[0])+"px"}n.glplot.redraw()}},k.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)},k.getCamera=function(){var e,t=this;return t.camera.view.recalcMatrix(t.camera.view.lastT()),{up:{x:(e=t.camera).up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:!0===e._ortho?"orthographic":"perspective"}}},k.setViewport=function(e){var t,r=this,n=e.camera;r.camera.lookAt.apply(this,[[(t=n).eye.x,t.eye.y,t.eye.z],[t.center.x,t.center.y,t.center.z],[t.up.x,t.up.y,t.up.z]]),r.glplot.setAspectratio(e.aspectratio),"orthographic"===n.projection.type!==r.camera._ortho&&(r.glplot.redraw(),r.glplot.clearRGBA(),r.glplot.dispose(),r.initializeGLPlot())},k.isCameraChanged=function(e){var t=this.getCamera(),r=f.nestedProperty(e,this.id+".camera").get();function n(e,t,r,n){var i=["up","center","eye"],a=["x","y","z"];return t[i[r]]&&e[i[r]][a[n]]===t[i[r]][a[n]]}var i=!1;if(void 0===r)i=!0;else{for(var a=0;a<3;a++)for(var o=0;o<3;o++)if(!n(t,r,a,o)){i=!0;break}(!r.projection||t.projection&&t.projection.type!==r.projection.type)&&(i=!0)}return i},k.isAspectChanged=function(e){var t=this.glplot.getAspectratio(),r=f.nestedProperty(e,this.id+".aspectratio").get();return void 0===r||r.x!==t.x||r.y!==t.y||r.z!==t.z},k.saveLayout=function(e){var t,r,n,i,a,o,s=this,l=s.fullLayout,u=s.isCameraChanged(e),d=s.isAspectChanged(e),h=u||d;if(h){var p={};u&&(t=s.getCamera(),n=(r=f.nestedProperty(e,s.id+".camera")).get(),p[s.id+".camera"]=n),d&&(i=s.glplot.getAspectratio(),o=(a=f.nestedProperty(e,s.id+".aspectratio")).get(),p[s.id+".aspectratio"]=o),c.call("_storeDirectGUIEdit",e,l._preGUI,p),u&&(r.set(t),f.nestedProperty(l,s.id+".camera").set(t)),d&&(a.set(i),f.nestedProperty(l,s.id+".aspectratio").set(i),s.glplot.redraw())}return h},k.updateFx=function(e,t){var r=this,n=r.camera;if(n)if("orbit"===e)n.mode="orbit",n.keyBindingMode="rotate";else if("turntable"===e){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var d=r.id+".camera.up",h={x:0,y:0,z:1},p={};p[d]=h;var v=i.layout;c.call("_storeDirectGUIEdit",v,a._preGUI,p),o.up=h,f.nestedProperty(v,d).set(h)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t},k.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(n),t.glplot.redraw();var r=t.glplot.gl,i=r.drawingBufferWidth,a=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var o=new Uint8Array(i*a*4);r.readPixels(0,0,i,a,r.RGBA,r.UNSIGNED_BYTE,o),function(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,l=0;l<3;++l)e[a+l]=Math.min(s*e[a+l],255)}}(o,i,a);var s=document.createElement("canvas");s.width=i,s.height=a;var l,u=s.getContext("2d",{willReadFrequently:!0}),c=u.createImageData(i,a);switch(c.data.set(o),u.putImageData(c,0,0),e){case"jpeg":l=s.toDataURL("image/jpeg");break;case"webp":l=s.toDataURL("image/webp");break;default:l=s.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(n),l},k.setConvert=function(){for(var e=0;e<3;e++){var t=this.fullSceneLayout[M[e]];h.setConvert(t,this.fullLayout),t.setScale=f.noop}},k.make4thDimension=function(){var e=this,t=e.graphDiv._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},h.setConvert(e._mockAxis,t)},e.exports=w},90060:function(e){"use strict";e.exports=function(e,t,r,n){n=n||e.length;for(var i=new Array(n),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}]}},u=n(l);e.exports={requiredVersion:i,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:l,styleValuesNonMapbox:u,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:",u.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(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){var r=e.split(" "),i=r[0],a=r[1],o=n.isArrayOrTypedArray(t)?n.mean(t):t,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s}return{anchor:u[0]&&u[1]?u.join("-"):u[0]?u[0]:u[1]?u[1]:"center",offset:c}}},50101:function(e,t,r){"use strict";var n=r(44517),i=r(71828),a=i.strTranslate,o=i.strScale,s=r(27659).AU,l=r(77922),u=r(39898),c=r(91424),f=r(63893),d=r(10481),h="mapbox",p=t.constants=r(77734);function v(e){return"string"===typeof e&&(-1!==p.styleValuesMapbox.indexOf(e)||0===e.indexOf("mapbox://"))}t.name=h,t.attr="subplot",t.idRoot=h,t.idRegex=t.attrRegex=i.counterRegex(h),t.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},t.layoutAttributes=r(23585),t.supplyLayoutDefaults=r(77882),t.plot=function(e){var t=e._fullLayout,r=e.calcdata,a=t._subplots[h];if(n.version!==p.requiredVersion)throw new Error(p.wrongVersionErrorMsg);var o=function(e,t){var r=e._fullLayout,n=e._context;if(""===n.mapboxAccessToken)return"";for(var a=[],o=[],s=!1,l=!1,u=0;u1&&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(" ")),"")}(e,a);n.accessToken=o;for(var l=0;lw/2){var k=y.split("|").join("
");b.text(k).attr("data-unformatted",k).call(f.convertToTspans,e),_=c.bBox(b.node())}b.attr("transform",a(-3,8-_.height)),x.insert("rect",".static-attribution").attr({x:-_.width-6,y:-_.height-3,width:_.width+6,height:_.height+3,fill:"rgba(255, 255, 255, 0.75)"});var T=1;_.width+6>w&&(T=w/(_.width+6));var M=[n.l+n.w*d.x[1],n.t+n.h*(1-d.y[0])];x.attr("transform",a(M[0],M[1])+o(T))}},t.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[h],n=0;n0){for(var r=0;r0}function c(e){var t={},r={};switch(e.type){case"circle":n.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":n.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":n.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var i=e.symbol,o=a(i.textposition,i.iconsize);n.extendFlat(t,{"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}),n.extendFlat(r,{"icon-color":e.color,"text-color":i.textfont.color,"text-opacity":e.opacity});break;case"raster":n.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity})}return{layout:t,paint:r}}l.update=function(e){this.visible?this.needsNewImage(e)?this.updateImage(e):this.needsNewSource(e)?(this.removeLayer(),this.updateSource(e),this.updateLayer(e)):this.needsNewLayer(e)?this.updateLayer(e):this.updateStyle(e):(this.updateSource(e),this.updateLayer(e)),this.visible=u(e)},l.needsNewImage=function(e){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===e.sourcetype&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))},l.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type},l.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},l.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},l.updateImage=function(e){this.subplot.map.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var t=this.findFollowingMapboxLayerId(this.lookupBelow());null!==t&&this.subplot.map.moveLayer(this.idLayer,t)},l.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,u(e)){var r=function(e){var t,r=e.sourcetype,n=e.source,a={type:r};return"geojson"===r?t="data":"vector"===r?t="string"===typeof n?"url":"tiles":"raster"===r?(t="tiles",a.tileSize=256):"image"===r&&(t="url",a.coordinates=e.coordinates),a[t]=n,e.sourceattribution&&(a.attribution=i(e.sourceattribution)),a}(e);t.addSource(this.idSource,r)}},l.findFollowingMapboxLayerId=function(e){if("traces"===e)for(var t=this.subplot.getMapLayers(),r=0;r1)for(r=0;r-1&&m(t.originalEvent,n,[r.xaxis],[r.yaxis],r.id,e),i.indexOf("event")>-1&&u.click(n,t.originalEvent)}}},b.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(!t.isStatic){var a,o=e.dragmode;a=function(e,r){r.isRect?(e.range={})[t.id]=[u([r.xmin,r.ymin]),u([r.xmax,r.ymax])]:(e.lassoPoints={})[t.id]=r.map(u)};var s=t.dragOptions;t.dragOptions=i.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:a},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),d(o)||f(o)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(e,r,n){h(e,r,n,t.dragOptions,o)},l.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))}function u(e){var r=t.map.unproject(e);return[r.lng,r.lat]}},b.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])},b.updateLayers=function(e){var t,r=e[this.id].layers,n=this.layerList;if(r.length!==n.length){for(t=0;t=t.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=t._paper.attr("width")-7),r.attr(a);var o=r.select(".js-link-to-tool"),s=r.select(".js-link-spacer"),l=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&function(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" "+String.fromCharCode(187));if(e._context.sendData)r.on("click",(function(){_.sendDataToCloud(e)}));else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}(e,o),s.text(o.text()&&l.text()?" - ":"")}},_.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=n.select(e).append("div").attr("id","hiddenform").style("display","none"),i=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"});return i.append("input").attr({type:"text",name:"data"}).node().value=_.graphJson(e,!1,"keepdata"),i.node().submit(),r.remove(),e.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(e,t){var r=e._context.locale;r||(r="en-US");var n=!1,i={};function a(e){for(var r=!0,a=0;a1&&D.length>1){for(s.getComponentMethod("grid","sizeDefaults")(u,l),o=0;o15&&D.length>15&&0===l.shapes.length&&0===l.images.length,_.linkSubplots(d,l,f,n),_.cleanPlot(d,l,f,n);var B=!(!n._has||!n._has("gl2d")),j=!(!l._has||!l._has("gl2d")),U=!(!n._has||!n._has("cartesian"))||B,V=!(!l._has||!l._has("cartesian"))||j;U&&!V?n._bgLayer.remove():V&&!U&&(l._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&p({_fullLayout:n}),function(e,t){var r,n=[];t.meta&&(r=t._meta={meta:t.meta,layout:{meta:t.meta}});for(var i=0;i0){var f=1-2*s;n=Math.round(f*n),i=Math.round(f*i)}}var d=_.layoutAttributes.width.min,h=_.layoutAttributes.height.min;n1,v=!t.height&&Math.abs(r.height-i)>1;(v||p)&&(p&&(r.width=n),v&&(r.height=i)),e._initialAutoSize||(e._initialAutoSize={width:n,height:i}),_.sanitizeMargins(r)},_.supplyLayoutModuleDefaults=function(e,t,r,n){var i,a,o,l=s.componentsRegistry,u=t._basePlotModules,f=s.subplotsRegistry.cartesian;for(i in l)(o=l[i]).includeBasePlot&&o.includeBasePlot(e,t);for(var d in u.length||u.push(f),t._has("cartesian")&&(s.getComponentMethod("grid","contentDefaults")(e,t),f.finalizeSubplots(e,t)),t._subplots)t._subplots[d].sort(c.subplotSort);for(a=0;a1&&(r.l/=g,r.r/=g)}if(h){var y=(r.t+r.b)/h;y>1&&(r.t/=y,r.b/=y)}var x=void 0!==r.xl?r.xl:r.x,b=void 0!==r.xr?r.xr:r.x,w=void 0!==r.yt?r.yt:r.y,k=void 0!==r.yb?r.yb:r.y;p[t]={l:{val:x,size:r.l+m},r:{val:b,size:r.r+m},b:{val:k,size:r.b+m},t:{val:w,size:r.t+m}},v[t]=1}else delete p[t],delete v[t];if(!n._replotting)return _.doAutoMargin(e)}},_.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),P(t);var i=t._size,a=t.margin,l={t:0,b:0,l:0,r:0},u=c.extendFlat({},i),f=e._fullLayout._reservedMargin;for(var d in f)for(var p in f[d]){var v=f[d][p];l[p]=Math.max(l[p],v)}var m=a.l,g=a.r,y=a.t,x=a.b,b=t._pushmargin,w=t._pushmarginIds,k=t.minreducedwidth,T=t.minreducedheight;if(!1!==t.margin.autoexpand){for(var M in b)w[M]||delete b[M];for(var A in b.base={l:{val:0,size:m},r:{val:1,size:g},t:{val:1,size:y},b:{val:0,size:x}},b){var S=b[A].l||{},E=b[A].b||{},C=S.val,L=S.size,O=E.val,I=E.size,D=r-l.r-l.l,R=n-l.t-l.b;for(var z in b){if(o(L)&&b[z].r){var F=b[z].r.val,N=b[z].r.size;if(F>C){var B=(L*F+(N-D)*C)/(F-C),j=(N*(1-C)+(L-D)*(1-F))/(F-C);B+j>m+g&&(m=B,g=j)}}if(o(I)&&b[z].t){var U=b[z].t.val,V=b[z].t.size;if(U>O){var H=(I*U+(V-R)*O)/(U-O),q=(V*(1-O)+(I-R)*(1-U))/(U-O);H+q>x+y&&(x=H,y=q)}}}}}var W=c.constrain(r-a.l-a.r,2,k),G=c.constrain(n-a.t-a.b,2,T),Y=Math.max(0,r-W),Z=Math.max(0,n-G);if(Y){var X=(m+g)/Y;X>1&&(m/=X,g/=X)}if(Z){var K=(x+y)/Z;K>1&&(x/=K,y/=K)}if(i.l=Math.round(m)+l.l,i.r=Math.round(g)+l.r,i.t=Math.round(y)+l.t,i.b=Math.round(x)+l.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(_.didMarginChange(u,i)||function(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=h.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var $=3*(1+Object.keys(w).length);if(t._redrawFromAutoMarginCount<$)return s.call("_doPlot",e);t._size=u,c.warn("Too many auto-margin redraws.")}!function(e){var t=h.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach((function(e){for(var r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&e._transitionData._interruptCallbacks.push((function(){return s.call("redraw",e)})),e._transitionData._interruptCallbacks.push((function(){e.emit("plotly_transitioninterrupted",[])}));var a=0,o=0;function l(){return a++,function(){var t;o++,n||o!==a||(t=i,e._transitionData&&(function(e){if(e)for(;e.length;)e.shift()}(e._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return s.call("redraw",e)})).then((function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])})).then(t)))}}r.runFn(l),setTimeout(l())}))}],a=c.syncOrAsync(i,e);return a&&a.then||(a=Promise.resolve()),a.then((function(){return e}))}_.didMarginChange=function(e,t){for(var r=0;r1)return!0}return!1},_.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&_.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(e,t){if("function"===typeof e)return t?"_function_":null;if(c.isPlainObject(e)){var n,i={};return Object.keys(e).sort().forEach((function(a){if(-1===["_","["].indexOf(a.charAt(0)))if("function"!==typeof e[a]){if("keepdata"===r){if("src"===a.substr(a.length-3))return}else if("keepstream"===r){if("string"===typeof(n=e[a+"src"])&&n.indexOf(":")>0&&!c.isPlainObject(e.stream))return}else if("keepall"!==r&&"string"===typeof(n=e[a+"src"])&&n.indexOf(":")>0)return;i[a]=u(e[a],t)}else t&&(i[a]="_function")})),i}return Array.isArray(e)?e.map((function(e){return u(e,t)})):c.isTypedArray(e)?c.simpleMap(e,c.identity):c.isJSDate(e)?c.ms2DateTimeLocal(+e):e}var f={data:(o||[]).map((function(e){var r=u(e);return t&&delete r.fit,r}))};if(!t&&(f.layout=u(s),i)){var d=s._size;f.layout.computed={margin:{b:d.b,l:d.l,r:d.r,t:d.t}}}return l&&(f.frames=u(l)),a&&(f.config=u(e._context,!0)),"object"===n?f:JSON.stringify(f)},_.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r=0;a--)if(s[a].enabled){r._indexToPoints=s[a]._indexToPoints;break}n&&n.calc&&(o=n.calc(e,r))}Array.isArray(o)&&o[0]||(o=[{x:d,y:d}]),o[0].t||(o[0].t={}),o[0].trace=r,p[t]=o}}for(R(o,u,f),i=0;i1e-10?e:0}function d(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a0?r:1/0})),i=n.mod(r+1,t.length);return[t[r],t[i]]},findIntersectionXY:u,findXYatLength:function(e,t,r,n){var i=-t*r,a=t*t+1,o=2*(t*i-r),s=i*i+r*r-e*e,l=Math.sqrt(o*o-4*a*s),u=(-o+l)/(2*a),c=(-o-l)/(2*a);return[[u,t*u+i+n],[c,t*c+i+n]]},clampTiny:f,pathPolygon:function(e,t,r,n,i,a){return"M"+d(c(e,t,r,n),i,a).join("L")},pathPolygonAnnulus:function(e,t,r,n,i,a,o){var s,l;e=90||l>90&&u>=450?1:f<=0&&h<=0?0:Math.max(f,h),t=l<=180&&u>=180||l>180&&u>=540?-1:c>=0&&d>=0?0:Math.min(c,d),r=l<=270&&u>=270||l>270&&u>=630?-1:f>=0&&h>=0?0:Math.min(f,h),n=u>=360?1:c<=0&&d<=0?0:Math.max(c,d),[t,r,n,i]}(p),_=b[2]-b[0],w=b[3]-b[1],k=h/d,T=Math.abs(w/_);k>T?(v=d,x=(h-(m=d*T))/i.h/2,g=[s[0],s[1]],y=[f[0]+x,f[1]-x]):(m=h,x=(d-(v=h/T))/i.w/2,g=[s[0]+x,s[1]-x],y=[f[0],f[1]]),r.xLength2=v,r.yLength2=m,r.xDomain2=g,r.yDomain2=y;var M,A=r.xOffset2=i.l+i.w*g[0],S=r.yOffset2=i.t+i.h*(1-y[1]),E=r.radius=v/_,C=r.innerRadius=r.getHole(t)*E,L=r.cx=A-E*b[0],P=r.cy=S+E*b[3],O=r.cxx=L-A,I=r.cyy=P-S,D=a.side;"counterclockwise"===D?(M=D,D="top"):"clockwise"===D&&(M=D,D="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:D,_trueSide:M,domain:[C/i.w,E/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:g}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:y});var F=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",F).attr("transform",l(O,I)),n.frontplot.attr("transform",l(A,S)).call(c.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",F).attr("transform",l(L,P)).call(u.fill,t.bgcolor)},B.mockAxis=function(e,t,r,n){var i=o.extendFlat({},r,n);return p(i,t,e),i},B.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,s=o.extendFlat({type:"linear"},r);h(s,e);var l={x:[0,2],y:[1,3]};return s.setRange=function(){var e=n.sectorBBox,r=l[a],i=n.radialAxis._rl,o=(i[1]-i[0])/(1-n.getHole(t));s.range=[e[r[0]]*o,e[r[1]]*o]},s.isPtWithinRange="x"!==a||i?function(){return!0}:function(e){return n.isPtInside(e)},s.setRange(),s.setScale(),s},B.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);v(n,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")]},B.updateRadialAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,c=r.innerRadius,f=r.cx,h=r.cy,p=r.getRadial(t),v=R(r.getSector(t)[0],360),m=r.radialAxis,g=c90&&v<=270&&(m.tickangle=180);var x=y?function(e){var t=I(r,L([e.x,0]));return l(t[0]-f,t[1]-h)}:function(e){return l(m.l2p(e.x)+c,0)},b=y?function(e){return O(r,e.x,-1/0,1/0)}:function(e){return r.pathArc(m.r2p(e.x)+c)},_=j(p);if(r.radialTickLayout!==_&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=_),g){m.setScale();var w=0,k=y?(m.tickvals||[]).filter((function(e){return e>=0})).map((function(e){return d.tickText(m,e,!0,!1)})):d.calcTicks(m),T=y?k:d.clipEnds(m,k),M=d.getTickSigns(m)[2];y&&(("top"===m.ticks&&"bottom"===m.side||"bottom"===m.ticks&&"top"===m.side)&&(M=-M),"top"===m.ticks&&"top"===m.side&&(w=-m.ticklen),"bottom"===m.ticks&&"bottom"===m.side&&(w=m.ticklen)),d.drawTicks(n,m,{vals:k,layer:i["radial-axis"],path:d.makeTickPath(m,0,M),transFn:x,crisp:!1}),d.drawGrid(n,m,{vals:T,layer:i["radial-grid"],path:b,transFn:o.noop,crisp:!1}),d.drawLabels(n,m,{vals:k,layer:i["radial-axis"],transFn:x,labelFns:d.makeLabelFns(m,w)})}var A=r.radialAxisAngle=r.vangles?F(U(z(p.angle),r.vangles)):p.angle,S=l(f,h),E=S+s(-A);V(i["radial-axis"],g&&(p.showticklabels||p.ticks),{transform:E}),V(i["radial-grid"],g&&p.showgrid,{transform:y?"":S}),V(i["radial-line"].select("line"),g&&p.showline,{x1:y?-a:c,y1:0,x2:a,y2:0,transform:E}).attr("stroke-width",p.linewidth).call(u.stroke,p.linecolor)},B.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",f=0;if(l.title){var d=c.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,p=l.side;f="top"===p?h:"counterclockwise"===p?-(d+.4*h):d+.8*h}var v=void 0!==r?r:n.radialAxisAngle,m=z(v),g=Math.cos(m),y=Math.sin(m),b=o+a/2*g+f*y,_=s-a/2*y+f*g;n.layers["radial-axis-title"]=x.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title",placeholder:D(i,"Click to enter radial axis title"),attributes:{x:b,y:_,"text-anchor":"middle"},transform:{rotate:-v}})}},B.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,c=r.innerRadius,f=r.cx,h=r.cy,p=r.getAngular(t),v=r.angularAxis,m=r.isSmith;m||(r.fillViewInitialKey("angularaxis.rotation",p.rotation),v.setGeometry(),v.setScale());var g=m?function(e){var t=I(r,L([0,e.x]));return Math.atan2(t[0]-f,t[1]-h)-Math.PI/2}:function(e){return v.t2g(e.x)};"linear"===v.type&&"radians"===v.thetaunit&&(v.tick0=F(v.tick0),v.dtick=F(v.dtick));var y=function(e){return l(f+a*Math.cos(e),h-a*Math.sin(e))},x=m?function(e){var t=I(r,L([0,e.x]));return l(t[0],t[1])}:function(e){return y(g(e))},b=m?function(e){var t=I(r,L([0,e.x])),n=Math.atan2(t[0]-f,t[1]-h)-Math.PI/2;return l(t[0],t[1])+s(-F(n))}:function(e){var t=g(e);return y(t)+s(-F(t))},_=m?function(e){return P(r,e.x,0,1/0)}:function(e){var t=g(e),r=Math.cos(t),n=Math.sin(t);return"M"+[f+c*r,h-c*n]+"L"+[f+a*r,h-a*n]},w=d.makeLabelFns(v,0).labelStandoff,k={xFn:function(e){var t=g(e);return Math.cos(t)*w},yFn:function(e){var t=g(e),r=Math.sin(t)>0?.2:1;return-Math.sin(t)*(w+e.fontSize*r)+Math.abs(Math.cos(t))*(e.fontSize*A)},anchorFn:function(e){var t=g(e),r=Math.cos(t);return Math.abs(r)<.1?"middle":r>0?"start":"end"},heightFn:function(e,t,r){var n=g(e);return-.5*(1+Math.sin(n))*r}},T=j(p);r.angularTickLayout!==T&&(i["angular-axis"].selectAll("."+v._id+"tick").remove(),r.angularTickLayout=T);var M,S=m?[1/0].concat(v.tickvals||[]).map((function(e){return d.tickText(v,e,!0,!1)})):d.calcTicks(v);if(m&&(S[0].text="\u221e",S[0].fontSize*=1.75),"linear"===t.gridshape?(M=S.map(g),o.angleDelta(M[0],M[1])<0&&(M=M.slice().reverse())):M=null,r.vangles=M,"category"===v.type&&(S=S.filter((function(e){return o.isAngleInsideSector(g(e),r.sectorInRad)}))),v.visible){var E="inside"===v.ticks?-1:1,C=(v.linewidth||1)/2;d.drawTicks(n,v,{vals:S,layer:i["angular-axis"],path:"M"+E*C+",0h"+E*v.ticklen,transFn:b,crisp:!1}),d.drawGrid(n,v,{vals:S,layer:i["angular-grid"],path:_,transFn:o.noop,crisp:!1}),d.drawLabels(n,v,{vals:S,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:x,labelFns:k})}V(i["angular-line"].select("path"),p.showline,{d:r.pathSubplot(),transform:l(f,h)}).attr("stroke-width",p.linewidth).call(u.stroke,p.linecolor)},B.updateFx=function(e,t){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e))},B.updateHoverAndMainDrag=function(e){var t,r,s=this,u=s.isSmith,c=s.gd,f=s.layers,d=e._zoomlayer,h=S.MINZOOM,p=S.OFFEDGE,v=s.radius,x=s.innerRadius,k=s.cx,T=s.cy,M=s.cxx,A=s.cyy,C=s.sectorInRad,L=s.vangles,P=s.radialAxis,O=E.clampTiny,I=E.findXYatLength,D=E.findEnclosingVertexAngles,R=S.cornerHalfWidth,z=S.cornerLen/2,F=m.makeDragger(f,"path","maindrag",!1===e.dragmode?"none":"crosshair");n.select(F).attr("d",s.pathSubplot()).attr("transform",l(k,T)),F.onmousemove=function(e){y.hover(c,e,s.id),c._fullLayout._lasthover=F,c._fullLayout._hoversubplot=s.id},F.onmouseout=function(e){c._dragging||g.unhover(c,e)};var N,B,j,U,V,H,q,W,G,Y={element:F,gd:c,subplot:s.id,plotinfo:{id:s.id,xaxis:s.xaxis,yaxis:s.yaxis},xaxes:[s.xaxis],yaxes:[s.yaxis]};function Z(e,t){return Math.sqrt(e*e+t*t)}function X(e,t){return Z(e-M,t-A)}function K(e,t){return Math.atan2(A-t,e-M)}function $(e,t){return[e*Math.cos(t),e*Math.sin(-t)]}function J(e,t){if(0===e)return s.pathSector(2*R);var r=z/e,n=t-r,i=t+r,a=Math.max(0,Math.min(e,v)),o=a-R,l=a+R;return"M"+$(o,n)+"A"+[o,o]+" 0,0,0 "+$(o,i)+"L"+$(l,i)+"A"+[l,l]+" 0,0,1 "+$(l,n)+"Z"}function Q(e,t,r){if(0===e)return s.pathSector(2*R);var n,i,a=$(e,t),o=$(e,r),l=O((a[0]+o[0])/2),u=O((a[1]+o[1])/2);if(l&&u){var c=u/l,f=-1/c,d=I(R,c,l,u);n=I(z,f,d[0][0],d[0][1]),i=I(z,f,d[1][0],d[1][1])}else{var h,p;u?(h=z,p=R):(h=R,p=z),n=[[l-h,u-p],[l+h,u-p]],i=[[l-h,u+p],[l+h,u+p]]}return"M"+n.join("L")+"L"+i.reverse().join("L")+"Z"}function ee(e,t){return t=Math.max(Math.min(t,v),x),eh?(e-1&&1===e&&_(t,c,[s.xaxis],[s.yaxis],s.id,Y),r.indexOf("event")>-1&&y.click(c,t,s.id)}Y.prepFn=function(e,n,a){var l=c._fullLayout.dragmode,f=F.getBoundingClientRect();c._fullLayout._calcInverseTransform(c);var h=c._fullLayout._invTransform;t=c._fullLayout._invScaleX,r=c._fullLayout._invScaleY;var p=o.apply3DTransform(h)(n-f.left,a-f.top);if(N=p[0],B=p[1],L){var g=E.findPolygonOffset(v,C[0],C[1],L);N+=M+g[0],B+=A+g[1]}switch(l){case"zoom":Y.clickFn=se,u||(Y.moveFn=L?ie:re,Y.doneFn=ae,function(){j=null,U=null,V=s.pathSubplot(),H=!1;var e=c._fullLayout[s.id];q=i(e.bgcolor).getLuminance(),(W=m.makeZoombox(d,q,k,T,V)).attr("fill-rule","evenodd"),G=m.makeCorners(d,k,T),w(c)}());break;case"select":case"lasso":b(e,n,a,Y,l)}},g.init(Y)},B.updateRadialDrag=function(e,t,r){var i=this,u=i.gd,c=i.layers,f=i.radius,d=i.innerRadius,h=i.cx,p=i.cy,v=i.radialAxis,y=S.radialDragBoxSize,x=y/2;if(v.visible){var b,_,k,A=z(i.radialAxisAngle),E=v._rl,C=E[0],L=E[1],P=E[r],O=.75*(E[1]-E[0])/(1-i.getHole(t))/f;r?(b=h+(f+x)*Math.cos(A),_=p-(f+x)*Math.sin(A),k="radialdrag"):(b=h+(d-x)*Math.cos(A),_=p-(d-x)*Math.sin(A),k="radialdrag-inner");var I,D,R,N=m.makeRectDragger(c,k,"crosshair",-x,-x,y,y),B={element:N,gd:u};!1===e.dragmode&&(B.dragmode=!1),V(n.select(N),v.visible&&d0===(r?R>C:Rn?function(e){return e<=0}:function(e){return e>=0};e.c2g=function(r){var n=e.c2l(r)-t;return(s(n)?n:0)+o},e.g2c=function(r){return e.l2c(r+t-o)},e.g2p=function(e){return e*a},e.c2p=function(t){return e.g2p(e.c2g(t))}}}(e,t);break;case"angularaxis":!function(e,t){var r=e.type;if("linear"===r){var i=e.d2c,s=e.c2d;e.d2c=function(e,t){return function(e,t){return"degrees"===t?a(e):e}(i(e),t)},e.c2d=function(e,t){return s(function(e,t){return"degrees"===t?o(e):e}(e,t))}}e.makeCalcdata=function(t,i){var a,o,s=t[i],l=t._length,u=function(r){return e.d2c(r,t.thetaunit)};if(s){if(n.isTypedArray(s)&&"linear"===r){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 r(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function n(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function i(e,t){return t*e.radius}e.exports={smith:r,reactanceArc:function(e,t,a,o){var s=n(e,r([a,t])),l=s[0],u=s[1],c=n(e,r([o,t])),f=c[0],d=c[1];if(0===t)return["M"+l+","+u,"L"+f+","+d].join(" ");var h=i(e,1/Math.abs(t));return["M"+l+","+u,"A"+h+","+h+" 0 0,"+(t<0?1:0)+" "+f+","+d].join(" ")},resistanceArc:function(e,a,o,s){var l=i(e,1/(a+1)),u=n(e,r([a,o])),c=u[0],f=u[1],d=n(e,r([a,s])),h=d[0],p=d[1];if(t(o)!==t(s)){var v=n(e,r([a,0]));return["M"+c+","+f,"A"+l+","+l+" 0 0,"+(00){for(var n=[],i=0;i=c&&(d.min=0,p.min=0,m.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function v(e,t,r,n){var i=d[t._name];function o(r,n){return a.coerce(e,t,i,r,n)}o("uirevision",n.uirevision),t.type="linear";var h=o("color"),p=h!==i.color.dflt?h:r.font.color,v=t._name.charAt(0).toUpperCase(),m="Component "+v,g=o("title.text",m);t._hovertitle=g===m?g:v,a.coerceFont(o,"title.font",{family:r.font.family,size:a.bigFont(r.font.size),color:p}),o("min"),c(e,t,o,"linear"),l(e,t,o,"linear"),s(e,t,o,"linear"),u(e,t,o,{outerTicks:!0}),o("showticklabels")&&(a.coerceFont(o,"tickfont",{family:r.font.family,size:r.font.size,color:p}),o("tickangle"),o("tickformat")),f(e,t,o,{dfltColor:h,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),o("hoverformat"),o("layer")}e.exports=function(e,t,r){o(e,t,r,{type:"ternary",attributes:d,handleDefaults:p,font:t.font,paper_bgcolor:t.paper_bgcolor})}},64380:function(e,t,r){"use strict";var n=r(39898),i=r(84267),a=r(73972),o=r(71828),s=o.strTranslate,l=o._,u=r(7901),c=r(91424),f=r(21994),d=r(1426).extendFlat,h=r(74875),p=r(89298),v=r(28569),m=r(30211),g=r(64505),y=g.freeMode,x=g.rectMode,b=r(92998),_=r(47322).prepSelect,w=r(47322).selectOnClick,k=r(47322).clearOutline,T=r(47322).clearSelectionsCache,M=r(85555);function A(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}e.exports=A;var S=A.prototype;S.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}},S.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;aE*b?i=(a=b)*E:a=(i=x)/E,o=g*i/x,l=y*a/b,r=t.l+t.w*v-i/2,n=t.t+t.h*(1-m)-a/2,h.x0=r,h.y0=n,h.w=i,h.h=a,h.sum=_,h.xaxis={type:"linear",range:[w+2*T-_,_-w-2*k],domain:[v-o/2,v+o/2],_id:"x"},f(h.xaxis,h.graphDiv._fullLayout),h.xaxis.setScale(),h.xaxis.isPtWithinRange=function(e){return e.a>=h.aaxis.range[0]&&e.a<=h.aaxis.range[1]&&e.b>=h.baxis.range[1]&&e.b<=h.baxis.range[0]&&e.c>=h.caxis.range[1]&&e.c<=h.caxis.range[0]},h.yaxis={type:"linear",range:[w,_-k-T],domain:[m-l/2,m+l/2],_id:"y"},f(h.yaxis,h.graphDiv._fullLayout),h.yaxis.setScale(),h.yaxis.isPtWithinRange=function(){return!0};var M=h.yaxis.domain[0],A=h.aaxis=d({},e.aaxis,{range:[w,_-k-T],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(A,h.graphDiv._fullLayout),A.setScale();var S=h.baxis=d({},e.baxis,{range:[_-w-T,k],side:"bottom",domain:h.xaxis.domain,anchor:"free",position:0,_id:"x",_length:i});f(S,h.graphDiv._fullLayout),S.setScale();var C=h.caxis=d({},e.caxis,{range:[_-w-k,T],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(C,h.graphDiv._fullLayout),C.setScale();var L="M"+r+","+(n+a)+"h"+i+"l-"+i/2+",-"+a+"Z";h.clipDef.select("path").attr("d",L),h.layers.plotbg.select("path").attr("d",L);var P="M0,"+a+"h"+i+"l-"+i/2+",-"+a+"Z";h.clipDefRelative.select("path").attr("d",P);var O=s(r,n);h.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",O),h.clipDefRelative.select("path").attr("transform",null);var I=s(r-S._offset,n+a);h.layers.baxis.attr("transform",I),h.layers.bgrid.attr("transform",I);var D=s(r+i/2,n)+"rotate(30)"+s(0,-A._offset);h.layers.aaxis.attr("transform",D),h.layers.agrid.attr("transform",D);var R=s(r+i/2,n)+"rotate(-30)"+s(0,-C._offset);h.layers.caxis.attr("transform",R),h.layers.cgrid.attr("transform",R),h.drawAxes(!0),h.layers.aline.select("path").attr("d",A.showline?"M"+r+","+(n+a)+"l"+i/2+",-"+a:"M0,0").call(u.stroke,A.linecolor||"#000").style("stroke-width",(A.linewidth||0)+"px"),h.layers.bline.select("path").attr("d",S.showline?"M"+r+","+(n+a)+"h"+i:"M0,0").call(u.stroke,S.linecolor||"#000").style("stroke-width",(S.linewidth||0)+"px"),h.layers.cline.select("path").attr("d",C.showline?"M"+(r+i/2)+","+n+"l"+i/2+","+a:"M0,0").call(u.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),h.graphDiv._context.staticPlot||h.initInteractions(),c.setClipUrl(h.layers.frontplot,h._hasClipOnAxisFalse?null:h.clipId,h.graphDiv)},S.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.substr(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var u=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?.75*s.tickfont.size:0)+("outside"===s.ticks?.87*s.ticklen:0)),c=(o.showticklabels?o.tickfont.size:0)+("outside"===o.ticks?o.ticklen:0)+3;i["a-title"]=b.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title",placeholder:l(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-u,"text-anchor":"middle"}}),i["b-title"]=b.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title",placeholder:l(r,"Click to enter Component B title"),attributes:{x:t.x0-c,y:t.y0+t.h+.83*o.title.font.size+c,"text-anchor":"middle"}}),i["c-title"]=b.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title",placeholder:l(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+c,y:t.y0+t.h+.83*s.title.font.size+c,"text-anchor":"middle"}})}},S.drawAx=function(e){var t,r=this,n=r.graphDiv,i=e._name,a=i.charAt(0),s=e._id,l=r.layers[i],u=a+"tickLayout",c=(t=e).ticks+String(t.ticklen)+String(t.showticklabels);r[u]!==c&&(l.selectAll("."+s+"tick").remove(),r[u]=c),e.setScale();var f=p.calcTicks(e),d=p.clipEnds(e,f),h=p.makeTransTickFn(e),v=p.getTickSigns(e)[2],m=o.deg2rad(30),g=v*(e.linewidth||1)/2,y=v*e.ticklen,x=r.w,b=r.h,_="b"===a?"M0,"+g+"l"+Math.sin(m)*y+","+Math.cos(m)*y:"M"+g+",0l"+Math.cos(m)*y+","+-Math.sin(m)*y,w={a:"M0,0l"+b+",-"+x/2,b:"M0,0l-"+x/2+",-"+b,c:"M0,0l-"+b+","+x/2}[a];p.drawTicks(n,e,{vals:"inside"===e.ticks?d:f,layer:l,path:_,transFn:h,crisp:!1}),p.drawGrid(n,e,{vals:d,layer:r.layers[a+"grid"],path:w,transFn:h,crisp:!1}),p.drawLabels(n,e,{vals:f,layer:l,transFn:h,labelFns:p.makeLabelFns(e,0,30)})};var C=M.MINZOOM/2+.87,L="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",P="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(e){n.select(e).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 e,t,r,n,f,d,h,p,g,b,k,T,A=this,S=A.layers.plotbg.select("path").node(),C=A.graphDiv,R=C._fullLayout._zoomlayer;function z(e){var t={};return t[A.id+".aaxis.min"]=e.a,t[A.id+".baxis.min"]=e.b,t[A.id+".caxis.min"]=e.c,t}function F(e,t){var r=C._fullLayout.clickmode;D(C),2===e&&(C.emit("plotly_doubleclick",null),a.call("_guiRelayout",C,z({a:0,b:0,c:0}))),r.indexOf("select")>-1&&1===e&&w(t,C,[A.xaxis],[A.yaxis],A.id,A.dragOptions),r.indexOf("event")>-1&&m.click(C,t,A.id)}function N(e,t){return 1-t/A.h}function B(e,t){return 1-(e+(A.h-t)/Math.sqrt(3))/A.w}function j(e,t){return(e-(A.h-t)/Math.sqrt(3))/A.w}function U(i,a){var o=r+i*e,s=n+a*t,l=Math.max(0,Math.min(1,N(0,n),N(0,s))),u=Math.max(0,Math.min(1,B(r,n),B(o,s))),c=Math.max(0,Math.min(1,j(r,n),j(o,s))),v=(l/2+c)*A.w,m=(1-l/2-u)*A.w,y=(v+m)/2,x=m-v,_=(1-l)*A.h,w=_-x/E;x.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),T.transition().style("opacity",1).duration(200),b=!0),C.emit("plotly_relayouting",z(h))}function V(){D(C),h!==f&&(a.call("_guiRelayout",C,z(h)),I&&C.data&&C._context.showTips&&(o.notifier(l(C,"Double-click to zoom back out"),"long"),I=!1))}function H(e,t){var r=e/A.xaxis._m,n=t/A.yaxis._m,i=[(h={a:f.a-n,b:f.b+(r+n)/2,c:f.c-(r-n)/2}).a,h.b,h.c].sort(o.sorterAsc),a=i.indexOf(h.a),l=i.indexOf(h.b),u=i.indexOf(h.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),h={a:i[a],b:i[l],c:i[u]},t=(f.a-h.a)*A.yaxis._m,e=(f.c-h.c-f.b+h.b)*A.xaxis._m);var d=s(A.x0+e,A.y0+t);A.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",d);var p=s(-e,-t);A.clipDefRelative.select("path").attr("transform",p),A.aaxis.range=[h.a,A.sum-h.b-h.c],A.baxis.range=[A.sum-h.a-h.c,h.b],A.caxis.range=[A.sum-h.a-h.b,h.c],A.drawAxes(!1),A._hasClipOnAxisFalse&&A.plotContainer.select(".scatterlayer").selectAll(".trace").call(c.hideOutsideRangePoints,A),C.emit("plotly_relayouting",z(h))}function q(){a.call("_guiRelayout",C,z(h))}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,c){A.dragOptions.xaxes=[A.xaxis],A.dragOptions.yaxes=[A.yaxis],e=C._fullLayout._invScaleX,t=C._fullLayout._invScaleY;var v=A.dragOptions.dragmode=C._fullLayout.dragmode;y(v)?A.dragOptions.minDrag=1:A.dragOptions.minDrag=void 0,"zoom"===v?(A.dragOptions.moveFn=U,A.dragOptions.clickFn=F,A.dragOptions.doneFn=V,function(e,t,a){var l=S.getBoundingClientRect();r=t-l.left,n=a-l.top,C._fullLayout._calcInverseTransform(C);var c=C._fullLayout._invTransform,v=o.apply3DTransform(c)(r,n);r=v[0],n=v[1],f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},h=f,d=A.aaxis.range[1]-f.a,p=i(A.graphDiv._fullLayout[A.id].bgcolor).getLuminance(),g="M0,"+A.h+"L"+A.w/2+", 0L"+A.w+","+A.h+"Z",b=!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",g),T=R.append("path").attr("class","zoombox-corners").attr("transform",s(A.x0,A.y0)).style({fill:u.background,stroke:u.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),A.clearOutline(C)}(0,l,c)):"pan"===v?(A.dragOptions.moveFn=H,A.dragOptions.clickFn=F,A.dragOptions.doneFn=q,f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},h=f,A.clearOutline(C)):(x(v)||y(v))&&_(a,l,c,A.dragOptions,v)}},S.onmousemove=function(e){m.hover(C,e,A.id),C._fullLayout._lasthover=S,C._fullLayout._hoversubplot=A.id},S.onmouseout=function(e){C._dragging||v.unhover(C,e)},v.init(this.dragOptions)}},73972:function(e,t,r){"use strict";var n=r(47769),i=r(64213),a=r(75138),o=r(41965),s=r(24401).addStyleRule,l=r(1426),u=r(9012),c=r(10820),f=l.extendFlat,d=l.extendDeepAll;function h(e){var r=e.name,i=e.categories,a=e.meta;if(t.modules[r])n.log("Type "+r+" already registered");else{t.subplotsRegistry[e.basePlotModule.name]||function(e){var r=e.name;if(t.subplotsRegistry[r])n.log("Plot type "+r+" already registered.");else for(var i in g(e),t.subplotsRegistry[r]=e,t.componentsRegistry)b(i,e.name)}(e.basePlotModule);for(var o={},l=0;l-1&&(f[h[r]].title={text:""});for(r=0;r")?"":t.html(e).text()}));return t.remove(),r}(w)).replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")).replace(c,"'"),i.isIE()&&(w=(w=(w=w.replace(/"/gi,"'")).replace(/(\('#)([^']*)('\))/gi,'("#$2")')).replace(/(\\')/gi,'"')),w}},75341:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){for(var r=0;rf+u||!n(c))}for(var h=0;ha))return t}return void 0!==r?r:e.dflt},t.coerceColor=function(e,t,r){return i(t).isValid()?t:void 0!==r?r:e.dflt},t.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),-1!==e.values.indexOf(t)?t:void 0!==r?r:e.dflt},t.getValue=function(e,t){var r;return Array.isArray(e)?t0?t+=r:c<0&&(t-=r)}return t}function D(e){var t=c,r=e.b,i=I(e);return n.inbox(r-t,i-t,_+(i-t)/(i-r)-1)}var R=e[f+"a"],z=e[d+"a"];v=Math.abs(R.r2c(R.range[1])-R.r2c(R.range[0]));var F=n.getDistanceFunction(i,h,p,(function(e){return(h(e)+p(e))/2}));if(n.getClosest(m,F,e),!1!==e.index&&m[e.index].p!==u){T||(C=function(e){return Math.min(M(e),e.p-y.bargroupwidth/2)},L=function(e){return Math.max(A(e),e.p+y.bargroupwidth/2)});var N=m[e.index],B=g.base?N.b+N.s:N.s;e[d+"0"]=e[d+"1"]=z.c2p(N[d],!0),e[d+"LabelVal"]=B;var j=y.extents[y.extents.round(N.p)];e[f+"0"]=R.c2p(x?C(N):j[0],!0),e[f+"1"]=R.c2p(x?L(N):j[1],!0);var U=void 0!==N.orig_p;return e[f+"LabelVal"]=U?N.orig_p:N.p,e.labelLabel=l(R,e[f+"LabelVal"],g[f+"hoverformat"]),e.valueLabel=l(z,e[d+"LabelVal"],g[d+"hoverformat"]),e.baseLabel=l(z,N.b,g[d+"hoverformat"]),e.spikeDistance=(function(e){var t=c,r=e.b,i=I(e);return n.inbox(r-t,i-t,w+(i-t)/(i-r)-1)}(N)+function(e){return P(M(e),A(e),w)}(N))/2,e[f+"Spike"]=R.c2p(N.p,!0),o(N,g,e),e.hovertemplate=g.hovertemplate,e}}function f(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=s(e,t);return a.opacity(r)?r:a.opacity(n)&&i?n:void 0}e.exports={hoverPoints:function(e,t,r,n,a){var o=c(e,t,r,n,a);if(o){var s=o.cd,l=s[0].trace,u=s[o.index];return o.color=f(l,u),i.getComponentMethod("errorbars","hoverInfo")(u,l,o),[o]}},hoverOnBars:c,getTraceColor:f}},60822:function(e,t,r){"use strict";e.exports={attributes:r(1486),layoutAttributes:r(43641),supplyDefaults:r(90769).supplyDefaults,crossTraceDefaults:r(90769).crossTraceDefaults,supplyLayoutDefaults:r(13957),calc:r(92290),crossTraceCalc:r(11661).crossTraceCalc,colorbar:r(4898),arraysToCalcdata:r(75341),plot:r(17295).plot,style:r(16688).style,styleOnSelect:r(16688).styleOnSelect,hoverPoints:r(95423).hoverPoints,eventData:r(58065),selectPoints:r(81974),moduleType:"trace",name:"bar",basePlotModule:r(93612),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}},43641:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(73972),i=r(89298),a=r(71828),o=r(43641);e.exports=function(e,t,r){function s(r,n){return a.coerce(e,t,o,r,n)}for(var l=!1,u=!1,c=!1,f={},d=s("barmode"),h=0;h0}function S(e){return"auto"===e?0:e}function E(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function C(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor||"end",c="end"===u,f="start"===u,d=((a.leftToRight||0)+1)/2,h=1-d,p=i.width,v=i.height,m=Math.abs(t-e),g=Math.abs(n-r),y=m>2*_&&g>2*_?_:0;m-=2*y,g-=2*y;var x=S(l);"auto"!==l||p<=m&&v<=g||!(p>m||v>g)||(p>g||v>m)&&p.01?W:function(e,t,r){return r&&e===t?e:Math.abs(e-t)>=2?W(e):e>t?Math.ceil(e):Math.floor(e)};B=G(B,j,z),j=G(j,B,z),U=G(U,V,!z),V=G(V,U,!z)}var Y=M(a.ensureSingle(I,"path"),P,m,g);if(Y.style("vector-effect",O?"none":"non-scaling-stroke").attr("d",isNaN((j-B)*(V-U))||H&&e._context.staticPlot?"M0,0Z":"M"+B+","+U+"V"+V+"H"+j+"V"+U+"Z").call(l.setClipUrl,t.layerClipId,e),!P.uniformtext.mode&&F){var Z=l.makePointStyleFns(f);l.singlePointStyle(u,Y,f,Z,e)}!function(e,t,r,n,i,s,u,f,h,m,g){var w,k=t.xaxis,A=t.yaxis,L=e._fullLayout;function P(t,r,n){return a.ensureSingle(t,"text").text(r).attr({class:"bartext bartext-"+w,"text-anchor":"middle","data-notex":1}).call(l.font,n).call(o.convertToTspans,e)}var O=n[0].trace,I="h"===O.orientation,D=function(e,t,r,n,i){var o,s=t[0].trace,l=s.texttemplate;return o=l?function(e,t,r,n,i){var o=t[0].trace,s=a.castOption(o,r,"texttemplate");if(!s)return"";var l,u,f,d,h="histogram"===o.type,p="waterfall"===o.type,v="funnel"===o.type,m="h"===o.orientation;function g(e){return c(u,u.c2l(e),!0).text}function y(e){return c(d,d.c2l(e),!0).text}m?(l="y",u=i,f="x",d=n):(l="x",u=n,f="y",d=i);var x=t[r],_={};_.label=x.p,_.labelLabel=_[l+"Label"]=g(x.p);var w=a.castOption(o,x.i,"text");(0===w||w)&&(_.text=w),_.value=x.s,_.valueLabel=_[f+"Label"]=y(x.s);var k={};b(k,o,x.i),(h||void 0===k.x)&&(k.x=m?_.value:_.label),(h||void 0===k.y)&&(k.y=m?_.label:_.value),(h||void 0===k.xLabel)&&(k.xLabel=m?_.valueLabel:_.labelLabel),(h||void 0===k.yLabel)&&(k.yLabel=m?_.labelLabel:_.valueLabel),p&&(_.delta=+x.rawS||x.s,_.deltaLabel=y(_.delta),_.final=x.v,_.finalLabel=y(_.final),_.initial=_.final-_.delta,_.initialLabel=y(_.initial)),v&&(_.value=x.s,_.valueLabel=y(_.value),_.percentInitial=x.begR,_.percentInitialLabel=a.formatPercent(x.begR),_.percentPrevious=x.difR,_.percentPreviousLabel=a.formatPercent(x.difR),_.percentTotal=x.sumR,_.percenTotalLabel=a.formatPercent(x.sumR));var T=a.castOption(o,x.i,"customdata");return T&&(_.customdata=T),a.texttemplateString(s,_,e._d3locale,k,_,o._meta||{})}(e,t,r,n,i):s.textinfo?function(e,t,r,n){var i=e[0].trace,o="h"===i.orientation,s="waterfall"===i.type,l="funnel"===i.type;function u(e){return c(o?n:r,e,!0).text}function f(e){return c(o?r:n,+e,!0).text}var d,h=i.textinfo,p=e[t],v=h.split("+"),m=[],g=function(e){return-1!==v.indexOf(e)};if(g("label")&&m.push(u(e[t].p)),g("text")&&(0===(d=a.castOption(i,p.i,"text"))||d)&&m.push(d),s){var y=+p.rawS||p.s,x=p.v,b=x-y;g("initial")&&m.push(f(b)),g("delta")&&m.push(f(y)),g("final")&&m.push(f(x))}if(l){g("value")&&m.push(f(p.s));var _=0;g("percent initial")&&_++,g("percent previous")&&_++,g("percent total")&&_++;var w=_>1;g("percent initial")&&(d=a.formatPercent(p.begR),w&&(d+=" of initial"),m.push(d)),g("percent previous")&&(d=a.formatPercent(p.difR),w&&(d+=" of previous"),m.push(d)),g("percent total")&&(d=a.formatPercent(p.sumR),w&&(d+=" of total"),m.push(d))}return m.join("
")}(t,r,n,i):v.getValue(s.text,r),v.coerceString(y,o)}(L,n,i,k,A);w=function(e,t){var r=v.getValue(e.textposition,t);return v.coerceEnumerated(x,r)}(O,i);var R="stack"===m.mode||"relative"===m.mode,z=n[i],F=!R||z._outmost;if(D&&"none"!==w&&(!z.isBlank&&s!==u&&f!==h||"auto"!==w&&"inside"!==w)){var N=L.font,B=p.getBarColor(n[i],O),j=p.getInsideTextFont(O,i,N,B),U=p.getOutsideTextFont(O,i,N),V=r.datum();I?"log"===k.type&&V.s0<=0&&(s=k.range[0]0&&G>0&&(W<=Z&&G<=X||W<=X&&G<=Z||(I?Z>=W*(X/G):X>=G*(Z/W)))?w="inside":(w="outside",H.remove(),H=null)):w="inside"),!H){var K=(H=P(r,D,Y=a.ensureUniformFontSize(e,"outside"===w?U:j))).attr("transform");if(H.attr("transform",""),W=(q=l.bBox(H.node())).width,G=q.height,H.attr("transform",K),W<=0||G<=0)return void H.remove()}var $,J=O.textangle;$="outside"===w?function(e,t,r,n,i,a){var o,s=!!a.isHorizontal,l=!!a.constrained,u=a.angle||0,c=i.width,f=i.height,d=Math.abs(t-e),h=Math.abs(n-r);o=s?h>2*_?_:0:d>2*_?_:0;var p=1;l&&(p=s?Math.min(1,h/f):Math.min(1,d/c));var v=S(u),m=E(i,v),g=(s?m.x:m.y)/2,y=(i.left+i.right)/2,x=(i.top+i.bottom)/2,b=(e+t)/2,w=(r+n)/2,k=0,M=0,A=s?T(t,e):T(r,n);return s?(b=t-A*o,k=A*g):(w=n+A*o,M=-A*g),{textX:y,textY:x,targetX:b,targetY:w,anchorX:k,anchorY:M,scale:p,rotate:v}}(s,u,f,h,q,{isHorizontal:I,constrained:"both"===O.constraintext||"outside"===O.constraintext,angle:J}):C(s,u,f,h,q,{isHorizontal:I,constrained:"both"===O.constraintext||"inside"===O.constraintext,angle:J,anchor:O.insidetextanchor}),$.fontSize=Y.size,d("histogram"===O.type?"bar":O.type,$,L),z.transform=$;var Q=M(H,L,m,g);a.setTransormAndDisplay(Q,$)}else r.select("text").remove()}(e,t,I,r,h,B,j,U,V,m,g),t.layerClipId&&l.hideOutsideRangePoint(u,I.select("text"),w,L,f.xcalendar,f.ycalendar)}));var U=!1===f.cliponaxis;l.setClipUrl(u,U?null:t.layerClipId,e)}));u.getComponentMethod("errorbars","plot")(e,I,t,m)},toMoveInsideBar:C}},81974:function(e){"use strict";function t(e,t,r,n,i){var a=t.c2p(n?e.s0:e.p0,!0),o=t.c2p(n?e.s1:e.p1,!0),s=r.c2p(n?e.p0:e.s0,!0),l=r.c2p(n?e.p1:e.s1,!0);return i?[(a+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(a+o)/2,l]}e.exports=function(e,r){var n,i=e.cd,a=e.xaxis,o=e.yaxis,s=i[0].trace,l="funnel"===s.type,u="h"===s.orientation,c=[];if(!1===r)for(n=0;n1||0===i.bargap&&0===i.bargroupgap&&!e[0].trace.marker.line.width)&&n.select(this).attr("shape-rendering","crispEdges")})),t.selectAll("g.points").each((function(t){p(n.select(this),t[0].trace,e)})),s.getComponentMethod("errorbars","style")(t)},styleTextPoints:v,styleOnSelect:function(e,t,r){var i=t[0].trace;i.selectedpoints?function(e,t,r){a.selectedPointStyle(e.selectAll("path"),t),function(e,t,r){e.each((function(e){var i,s=n.select(this);if(e.selected){i=o.ensureUniformFontSize(r,m(s,e,t,r));var l=t.selected.textfont&&t.selected.textfont.color;l&&(i.color=l),a.font(s,i)}else a.selectedTextStyle(s,t)}))}(e.selectAll("text"),t,r)}(r,i,e):(p(r,i,e),s.getComponentMethod("errorbars","style")(r))},getInsideTextFont:y,getOutsideTextFont:x,getBarColor:_,resizeText:l}},98340:function(e,t,r){"use strict";var n=r(7901),i=r(52075).hasColorscale,a=r(1586),o=r(71828).coercePattern;e.exports=function(e,t,r,s,l){var u=r("marker.color",s),c=i(e,"marker");c&&a(e,t,l,r,{prefix:"marker.",cLetter:"c"}),r("marker.line.color",n.defaultLine),i(e,"marker.line")&&a(e,t,l,r,{prefix:"marker.line.",cLetter:"c"}),r("marker.line.width"),r("marker.opacity"),o(r,"marker.pattern",u,c),r("selected.marker.color"),r("unselected.marker.color")}},72597:function(e,t,r){"use strict";var n=r(39898),i=r(71828);function a(e){return"_"+e+"Text_minsize"}e.exports={recordMinTextSize:function(e,t,r){if(r.uniformtext.mode){var n=a(e),i=r.uniformtext.minsize,o=t.scale*t.fontSize;t.hide=od.range[1]&&(x+=Math.PI),n.getClosest(u,(function(e){return v(y,x,[e.rp0,e.rp1],[e.thetag0,e.thetag1],p)?m+Math.min(1,Math.abs(e.thetag1-e.thetag0)/g)-1+(e.rp1-y)/(e.rp1-e.rp0)-1:1/0}),e),!1!==e.index){var b=u[e.index];e.x0=e.x1=b.ct[0],e.y0=e.y1=b.ct[1];var _=i.extendFlat({},b,{r:b.s,theta:b.p});return o(b,c,e),s(_,c,f,e),e.hovertemplate=c.hovertemplate,e.color=a(c,b),e.xLabelVal=e.yLabelVal=void 0,b.s<0&&(e.idealAlign="left"),[e]}}},23381:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"barpolar",basePlotModule:r(23580),categories:["polar","bar","showLegend"],attributes:r(55023),layoutAttributes:r(40151),supplyDefaults:r(6135),supplyLayoutDefaults:r(19860),calc:r(74692).calc,crossTraceCalc:r(74692).crossTraceCalc,plot:r(60173),colorbar:r(4898),formatLabels:r(98608),style:r(16688).style,styleOnSelect:r(16688).styleOnSelect,hoverPoints:r(27379),selectPoints:r(81974),meta:{}}},40151:function(e){"use strict";e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}},19860:function(e,t,r){"use strict";var n=r(71828),i=r(40151);e.exports=function(e,t,r){var a,o={};function s(r,o){return n.coerce(e[a]||{},t[a],i,r,o)}for(var l=0;l0?(u=o,c=l):(u=l,c=o);var f=[s.findEnclosingVertexAngles(u,e.vangles)[0],(u+c)/2,s.findEnclosingVertexAngles(c,e.vangles)[1]];return s.pathPolygonAnnulus(n,i,u,c,f,t,r)}:function(e,n,i,o){return a.pathAnnulus(e,n,i,o,t,r)}}(t),p=t.layers.frontplot.select("g.barlayer");a.makeTraceGroups(p,r,"trace bars").each((function(){var r=n.select(this),s=a.ensureSingle(r,"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(e){var t,r=n.select(this),o=e.rp0=f.c2p(e.s0),s=e.rp1=f.c2p(e.s1),l=e.thetag0=d.c2g(e.p0),p=e.thetag1=d.c2g(e.p1);if(i(o)&&i(s)&&i(l)&&i(p)&&o!==s&&l!==p){var v=f.c2g(e.s1),m=(l+p)/2;e.ct=[u.c2p(v*Math.cos(m)),c.c2p(v*Math.sin(m))],t=h(o,s,l,p)}else t="M0,0Z";a.ensureSingle(r,"path").attr("d",t)})),o.setClipUrl(r,t._hasClipOnAxisFalse?t.clipIds.forTraces:null,e)}))}},53522:function(e,t,r){"use strict";var n=r(82196),i=r(1486),a=r(22399),o=r(12663).axisHoverFormat,s=r(5386).fF,l=r(1426).extendFlat,u=n.marker,c=u.line;e.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:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.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({},u.symbol,{arrayOk:!1,editType:"plot"}),opacity:l({},u.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:l({},u.angle,{arrayOk:!1,editType:"calc"}),size:l({},u.size,{arrayOk:!1,editType:"calc"}),color:l({},u.color,{arrayOk:!1,editType:"style"}),line:{color:l({},c.color,{arrayOk:!1,dflt:a.defaultLine,editType:"style"}),width:l({},c.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:n.fillcolor,whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},offsetgroup:i.offsetgroup,alignmentgroup:i.alignmentgroup,selected:{marker:n.selected.marker,editType:"style"},unselected:{marker:n.unselected.marker,editType:"style"},text:l({},n.text,{}),hovertext:l({},n.hovertext,{}),hovertemplate:s({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"}}},48518:function(e,t,r){"use strict";var n=r(92770),i=r(89298),a=r(42973),o=r(71828),s=r(50606).BADNUM,l=o._;e.exports=function(e,t){var r,u,y,x,b,_,w,k=e._fullLayout,T=i.getFromId(e,t.xaxis||"x"),M=i.getFromId(e,t.yaxis||"y"),A=[],S="violin"===t.type?"_numViolins":"_numBoxes";"h"===t.orientation?(y=T,x="x",b=M,_="y",w=!!t.yperiodalignment):(y=M,x="y",b=T,_="x",w=!!t.xperiodalignment);var E,C,L,P,O,I,D=function(e,t,r,i){var s,l=t in e,u=t+"0"in e,c="d"+t in e;if(l||u&&c){var f=r.makeCalcdata(e,t);return[a(e,r,t,f).vals,f]}s=u?e[t+"0"]:"name"in e&&("category"===r.type||n(e.name)&&-1!==["linear","log"].indexOf(r.type)||o.isDateTime(e.name)&&"date"===r.type)?e.name:i;for(var d="multicategory"===r.type?r.r2c_just_indices(s):r.d2c(s,0,e[t+"calendar"]),h=e._length,p=new Array(h),v=0;vE.uf};if(t._hasPreCompStats){var U=t[x],V=function(e){return y.d2c((t[e]||[])[r])},H=1/0,q=-1/0;for(r=0;r=E.q1&&E.q3>=E.med){var G=V("lowerfence");E.lf=G!==s&&G<=E.q1?G:h(E,L,P);var Y=V("upperfence");E.uf=Y!==s&&Y>=E.q3?Y:p(E,L,P);var Z=V("mean");E.mean=Z!==s?Z:P?o.mean(L,P):(E.q1+E.q3)/2;var X=V("sd");E.sd=Z!==s&&X>=0?X:P?o.stdev(L,P,E.mean):E.q3-E.q1,E.lo=v(E),E.uo=m(E);var K=V("notchspan");K=K!==s&&K>0?K:g(E,P),E.ln=E.med-K,E.un=E.med+K;var $=E.lf,J=E.uf;t.boxpoints&&L.length&&($=Math.min($,L[0]),J=Math.max(J,L[P-1])),t.notched&&($=Math.min($,E.ln),J=Math.max(J,E.un)),E.min=$,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}H=Math.min(H,E.min),q=Math.max(q,E.max),E.pts2=C.filter(j),A.push(E)}}t._extremes[y._id]=i.findExtremes(y,[H,q],{padded:!0})}else{var ee=y.makeCalcdata(t,x),te=function(e,t){for(var r=e.length,n=new Array(r+1),i=0;i=0&&ie0){var ce,fe;(E={}).pos=E[_]=N[r],C=E.pts=ne[r].sort(f),P=(L=E[x]=C.map(d)).length,E.min=L[0],E.max=L[P-1],E.mean=o.mean(L,P),E.sd=o.stdev(L,P,E.mean),E.med=o.interp(L,.5),P%2&&(le||ue)?(le?(ce=L.slice(0,P/2),fe=L.slice(P/2+1)):ue&&(ce=L.slice(0,P/2+1),fe=L.slice(P/2)),E.q1=o.interp(ce,.5),E.q3=o.interp(fe,.5)):(E.q1=o.interp(L,.25),E.q3=o.interp(L,.75)),E.lf=h(E,L,P),E.uf=p(E,L,P),E.lo=v(E),E.uo=m(E);var de=g(E,P);E.ln=E.med-de,E.un=E.med+de,ae=Math.min(ae,E.ln),oe=Math.max(oe,E.un),E.pts2=C.filter(j),A.push(E)}t._extremes[y._id]=i.findExtremes(y,t.notched?ee.concat([ae,oe]):ee,{padded:!0})}return function(e,t){if(o.isArrayOrTypedArray(t.selectedpoints))for(var r=0;r0?(A[0].t={num:k[S],dPos:B,posLetter:_,valLetter:x,labels:{med:l(e,"median:"),min:l(e,"min:"),q1:l(e,"q1:"),q3:l(e,"q3:"),max:l(e,"max:"),mean:"sd"===t.boxmean?l(e,"mean \xb1 \u03c3:"):l(e,"mean:"),lf:l(e,"lower fence:"),uf:l(e,"upper fence:")}},k[S]++,A):[{t:{empty:!0}}]};var u={text:"tx",hovertext:"htx"};function c(e,t,r){for(var n in u)o.isArrayOrTypedArray(t[n])&&(Array.isArray(r)?o.isArrayOrTypedArray(t[n][r[0]])&&(e[u[n]]=t[n][r[0]][r[1]]):e[u[n]]=t[n][r])}function f(e,t){return e.v-t.v}function d(e){return e.v}function h(e,t,r){return 0===r?e.q1:Math.min(e.q1,t[Math.min(o.findBin(2.5*e.q1-1.5*e.q3,t,!0)+1,r-1)])}function p(e,t,r){return 0===r?e.q3:Math.max(e.q3,t[Math.max(o.findBin(2.5*e.q3-1.5*e.q1,t),0)])}function v(e){return 4*e.q1-3*e.q3}function m(e){return 4*e.q3-3*e.q1}function g(e,t){return 0===t?0:1.57*(e.q3-e.q1)/Math.sqrt(t)}},37188:function(e,t,r){"use strict";var n=r(89298),i=r(71828),a=r(99082).getAxisGroup,o=["v","h"];function s(e,t,r,o){var s,l,u,c=t.calcdata,f=t._fullLayout,d=o._id,h=d.charAt(0),p=[],v=0;for(s=0;s1,b=1-f[e+"gap"],_=1-f[e+"groupgap"];for(s=0;s0){var q=E.pointpos,W=E.jitter,G=E.marker.size/2,Y=0;q+W>=0&&((Y=V*(q+W))>A?(H=!0,j=G,N=Y):Y>z&&(j=G,N=A)),Y<=A&&(N=A);var Z=0;q-W<=0&&((Z=-V*(q-W))>S?(H=!0,U=G,B=Z):Z>F&&(U=G,B=S)),Z<=S&&(B=S)}else N=A,B=S;var X=new Array(u.length);for(l=0;l0?(m="v",g=x>0?Math.min(_,b):Math.min(b)):x>0?(m="h",g=Math.min(_)):g=0;if(g){t._length=g;var S=r("orientation",m);t._hasPreCompStats?"v"===S&&0===x?(r("x0",0),r("dx",1)):"h"===S&&0===y&&(r("y0",0),r("dy",1)):"v"===S&&0===x?r("x0"):"h"===S&&0===y&&r("y0"),i.getComponentMethod("calendars","handleTraceDefaults")(e,t,["x","y"],a)}else t.visible=!1}function f(e,t,r,i){var a=i.prefix,o=n.coerce2(e,t,u,"marker.outliercolor"),s=r("marker.line.outliercolor"),l="outliers";t._hasPreCompStats?l="all":(o||s)&&(l="suspectedoutliers");var c=r(a+"points",l);c?(r("jitter","all"===c?.3:0),r("pointpos","all"===c?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),"suspectedoutliers"===c&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var f=r("hoveron");"all"!==f&&-1===f.indexOf("points")||r("hovertemplate"),n.coerceSelectionMarkerOpacity(t,r)}e.exports={supplyDefaults:function(e,t,r,i){function s(r,i){return n.coerce(e,t,u,r,i)}if(c(e,t,s,i),!1!==t.visible){o(e,t,i,s),s("xhoverformat"),s("yhoverformat");var l=t._hasPreCompStats;l&&(s("lowerfence"),s("upperfence")),s("line.color",(e.marker||{}).color||r),s("line.width"),s("fillcolor",a.addOpacity(t.line.color,.5));var d=!1;if(l){var h=s("mean"),p=s("sd");h&&h.length&&(d=!0,p&&p.length&&(d="sd"))}s("boxmean",d),s("whiskerwidth"),s("width"),s("quartilemethod");var v=!1;if(l){var m=s("notchspan");m&&m.length&&(v=!0)}else n.validate(e.notchwidth,u.notchwidth)&&(v=!0);s("notched",v)&&s("notchwidth"),f(e,t,s,{prefix:"box"})}},crossTraceDefaults:function(e,t){var r,i;function a(e){return n.coerce(i._input,i,u,e)}for(var o=0;oe.lo&&(_.so=!0)}return a}));p.enter().append("path").classed("point",!0),p.exit().remove(),p.call(a.translatePoints,l,u)}function c(e,t,r,a){var o,s,l=t.val,u=t.pos,c=!!u.rangebreaks,f=a.bPos,d=a.bPosPxOffset||0,h=r.boxmean||(r.meanline||{}).visible;Array.isArray(a.bdPos)?(o=a.bdPos[0],s=a.bdPos[1]):(o=a.bdPos,s=a.bdPos);var p=e.selectAll("path.mean").data("box"===r.type&&r.boxmean||"violin"===r.type&&r.box.visible&&r.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(e){var t=u.c2l(e.pos+f,!0),i=u.l2p(t-o)+d,a=u.l2p(t+s)+d,p=c?(i+a)/2:u.l2p(t)+d,v=l.c2p(e.mean,!0),m=l.c2p(e.mean-e.sd,!0),g=l.c2p(e.mean+e.sd,!0);"h"===r.orientation?n.select(this).attr("d","M"+v+","+i+"V"+a+("sd"===h?"m0,0L"+m+","+p+"L"+v+","+i+"L"+g+","+p+"Z":"")):n.select(this).attr("d","M"+i+","+v+"H"+a+("sd"===h?"m0,0L"+p+","+m+"L"+i+","+v+"L"+p+","+g+"Z":""))}))}e.exports={plot:function(e,t,r,a){var o=e._context.staticPlot,s=t.xaxis,f=t.yaxis;i.makeTraceGroups(a,r,"trace boxes").each((function(e){var t,r,i=n.select(this),a=e[0],d=a.t,h=a.trace;d.wdPos=d.bdPos*h.whiskerwidth,!0!==h.visible||d.empty?i.remove():("h"===h.orientation?(t=f,r=s):(t=s,r=f),l(i,{pos:t,val:r},h,d,o),u(i,{x:s,y:f},h,d),c(i,{pos:t,val:r},h,d))}))},plotBoxAndWhiskers:l,plotPoints:u,plotBoxMean:c}},24626:function(e){"use strict";e.exports=function(e,t){var r,n,i=e.cd,a=e.xaxis,o=e.yaxis,s=[];if(!1===t)for(r=0;r=10)return null;for(var r=1/0,a=-1/0,o=e.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=P(S+L),z=O(E-L),F=[[f=A(S)]];for(a=R;a*C=0;i--)a[c-i]=e[f][i],o[c-i]=t[f][i];for(s.push({x:a,y:o,bicubic:l}),i=f,a=[],o=[];i>=0;i--)a[f-i]=e[i][0],o[f-i]=t[i][0];return s.push({x:a,y:o,bicubic:u}),s}},20347:function(e,t,r){"use strict";var n=r(89298),i=r(1426).extendFlat;e.exports=function(e,t,r){var a,o,s,l,u,c,f,d,h,p,v,m,g,y,x=e["_"+t],b=e[t+"axis"],_=b._gridlines=[],w=b._minorgridlines=[],k=b._boundarylines=[],T=e["_"+r],M=e[r+"axis"];"array"===b.tickmode&&(b.tickvals=x.slice());var A=e._xctrl,S=e._yctrl,E=A[0].length,C=A.length,L=e._a.length,P=e._b.length;n.prepTicks(b),"array"===b.tickmode&&delete b.tickvals;var O=b.smoothing?3:1;function I(n){var i,a,o,s,l,u,c,f,h,p,v,m,g=[],y=[],x={};if("b"===t)for(a=e.b2j(n),o=Math.floor(Math.max(0,Math.min(P-2,a))),s=a-o,x.length=P,x.crossLength=L,x.xy=function(t){return e.evalxy([],t,a)},x.dxy=function(t,r){return e.dxydi([],t,o,r,s)},i=0;i0&&(h=e.dxydi([],i-1,o,0,s),g.push(l[0]+h[0]/3),y.push(l[1]+h[1]/3),p=e.dxydi([],i-1,o,1,s),g.push(f[0]-p[0]/3),y.push(f[1]-p[1]/3)),g.push(f[0]),y.push(f[1]),l=f;else for(i=e.a2i(n),u=Math.floor(Math.max(0,Math.min(L-2,i))),c=i-u,x.length=L,x.crossLength=P,x.xy=function(t){return e.evalxy([],i,t)},x.dxy=function(t,r){return e.dxydj([],u,t,c,r)},a=0;a0&&(v=e.dxydj([],u,a-1,c,0),g.push(l[0]+v[0]/3),y.push(l[1]+v[1]/3),m=e.dxydj([],u,a-1,c,1),g.push(f[0]-m[0]/3),y.push(f[1]-m[1]/3)),g.push(f[0]),y.push(f[1]),l=f;return x.axisLetter=t,x.axis=b,x.crossAxis=M,x.value=n,x.constvar=r,x.index=d,x.x=g,x.y=y,x.smoothing=M.smoothing,x}function D(n){var i,a,o,s,l,u=[],c=[],f={};if(f.length=x.length,f.crossLength=T.length,"b"===t)for(o=Math.max(0,Math.min(P-2,n)),l=Math.min(1,Math.max(0,n-o)),f.xy=function(t){return e.evalxy([],t,n)},f.dxy=function(t,r){return e.dxydi([],t,o,r,l)},i=0;ix.length-1||_.push(i(D(o),{color:b.gridcolor,width:b.gridwidth,dash:b.griddash}));for(d=c;dx.length-1)&&!(v<0||v>x.length-1))for(m=x[s],g=x[v],a=0;ax[x.length-1]||w.push(i(I(p),{color:b.minorgridcolor,width:b.minorgridwidth,dash:b.minorgriddash}));b.startline&&k.push(i(D(0),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&k.push(i(D(x.length-1),{color:b.endlinecolor,width:b.endlinewidth}))}else{for(l=5e-15,c=(u=[Math.floor((x[x.length-1]-b.tick0)/b.dtick*(1+l)),Math.ceil((x[0]-b.tick0)/b.dtick/(1+l))].sort((function(e,t){return e-t})))[0],f=u[1],d=c;d<=f;d++)h=b.tick0+b.dtick*d,_.push(i(I(h),{color:b.gridcolor,width:b.gridwidth,dash:b.griddash}));for(d=c-1;dx[x.length-1]||w.push(i(I(p),{color:b.minorgridcolor,width:b.minorgridwidth,dash:b.minorgriddash}));b.startline&&k.push(i(I(x[0]),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&k.push(i(I(x[x.length-1]),{color:b.endlinecolor,width:b.endlinewidth}))}}},83311:function(e,t,r){"use strict";var n=r(89298),i=r(1426).extendFlat;e.exports=function(e,t){var r,a,o,s=t._labels=[],l=t._gridlines;for(r=0;rt.length&&(e=e.slice(0,t.length)):e=[],i=0;i90&&(h-=180,l=-l),{angle:h,flip:l,p:e.c2p(n,t,r),offsetMultplier:u}}},89740:function(e,t,r){"use strict";var n=r(39898),i=r(91424),a=r(27669),o=r(67961),s=r(11651),l=r(63893),u=r(71828),c=u.strRotate,f=u.strTranslate,d=r(18783);function h(e,t,r,s,l,u,c){var f="const-"+l+"-lines",d=r.selectAll("."+f).data(u);d.enter().append("path").classed(f,!0).style("vector-effect",c?"none":"non-scaling-stroke"),d.each((function(r){var s=r,l=s.x,u=s.y,c=a([],l,e.c2p),f=a([],u,t.c2p),d="M"+o(c,f,s.smoothing);n.select(this).attr("d",d).style("stroke-width",s.width).style("stroke",s.color).style("stroke-dasharray",i.dashStyle(s.dash,s.width)).style("fill","none")})),d.exit().remove()}function p(e,t,r,a,o,u,d,h){var p=u.selectAll("text."+h).data(d);p.enter().append("text").classed(h,!0);var v=0,m={};return p.each((function(o,u){var d;if("auto"===o.axis.tickangle)d=s(a,t,r,o.xy,o.dxy);else{var h=(o.axis.tickangle+180)*Math.PI/180;d=s(a,t,r,o.xy,[Math.cos(h),Math.sin(h)])}u||(m={angle:d.angle,flip:d.flip});var p=(o.endAnchor?-1:1)*d.flip,g=n.select(this).attr({"text-anchor":p>0?"start":"end","data-notex":1}).call(i.font,o.font).text(o.text).call(l.convertToTspans,e),y=i.bBox(this);g.attr("transform",f(d.p[0],d.p[1])+c(d.angle)+f(o.axis.labelpadding*p,.3*y.height)),v=Math.max(v,y.width+o.axis.labelpadding)})),p.exit().remove(),m.maxExtent=v,m}e.exports=function(e,t,r,i){var l=e._context.staticPlot,c=t.xaxis,f=t.yaxis,d=e._fullLayout._clips;u.makeTraceGroups(i,r,"trace").each((function(t){var r=n.select(this),i=t[0],v=i.trace,m=v.aaxis,y=v.baxis,x=u.ensureSingle(r,"g","minorlayer"),b=u.ensureSingle(r,"g","majorlayer"),_=u.ensureSingle(r,"g","boundarylayer"),w=u.ensureSingle(r,"g","labellayer");r.style("opacity",v.opacity),h(c,f,b,0,"a",m._gridlines,!0),h(c,f,b,0,"b",y._gridlines,!0),h(c,f,x,0,"a",m._minorgridlines,!0),h(c,f,x,0,"b",y._minorgridlines,!0),h(c,f,_,0,"a-boundary",m._boundarylines,l),h(c,f,_,0,"b-boundary",y._boundarylines,l);var k=p(e,c,f,v,0,w,m._labels,"a-label"),T=p(e,c,f,v,0,w,y._labels,"b-label");!function(e,t,r,n,i,a,o,l){var c,f,d,h,p=u.aggNums(Math.min,null,r.a),v=u.aggNums(Math.max,null,r.a),m=u.aggNums(Math.min,null,r.b),y=u.aggNums(Math.max,null,r.b);c=.5*(p+v),f=m,d=r.ab2xy(c,f,!0),h=r.dxyda_rough(c,f),void 0===o.angle&&u.extendFlat(o,s(r,i,a,d,r.dxydb_rough(c,f))),g(e,t,r,0,d,h,r.aaxis,i,a,o,"a-title"),c=p,f=.5*(m+y),d=r.ab2xy(c,f,!0),h=r.dxydb_rough(c,f),void 0===l.angle&&u.extendFlat(l,s(r,i,a,d,r.dxyda_rough(c,f))),g(e,t,r,0,d,h,r.baxis,i,a,l,"b-title")}(e,w,v,0,c,f,k,T),function(e,t,r,n,i){var s,l,c,f,d=r.select("#"+e._clipPathId);d.size()||(d=r.append("clipPath").classed("carpetclip",!0));var h=u.ensureSingle(d,"path","carpetboundary"),p=t.clipsegments,v=[];for(f=0;f90&&y<270,b=n.select(this);b.text(d.title.text).call(l.convertToTspans,e),x&&(_=(-l.lineCount(b)+m)*v*a-_),b.attr("transform",f(t.p[0],t.p[1])+c(t.angle)+f(0,_)).attr("text-anchor","middle").call(i.font,d.title.font)})),b.exit().remove()}},11435:function(e,t,r){"use strict";var n=r(35509),i=r(65888).findBin,a=r(45664),o=r(20349),s=r(54495),l=r(73057);e.exports=function(e){var t=e._a,r=e._b,u=t.length,c=r.length,f=e.aaxis,d=e.baxis,h=t[0],p=t[u-1],v=r[0],m=r[c-1],g=t[t.length-1]-t[0],y=r[r.length-1]-r[0],x=g*n.RELATIVE_CULL_TOLERANCE,b=y*n.RELATIVE_CULL_TOLERANCE;h-=x,p+=x,v-=b,m+=b,e.isVisible=function(e,t){return e>h&&ev&&tp||tm},e.setScale=function(){var t=e._x,r=e._y,n=a(e._xctrl,e._yctrl,t,r,f.smoothing,d.smoothing);e._xctrl=n[0],e._yctrl=n[1],e.evalxy=o([e._xctrl,e._yctrl],u,c,f.smoothing,d.smoothing),e.dxydi=s([e._xctrl,e._yctrl],f.smoothing,d.smoothing),e.dxydj=l([e._xctrl,e._yctrl],f.smoothing,d.smoothing)},e.i2a=function(e){var r=Math.max(0,Math.floor(e[0]),u-2),n=e[0]-r;return(1-n)*t[r]+n*t[r+1]},e.j2b=function(e){var t=Math.max(0,Math.floor(e[1]),u-2),n=e[1]-t;return(1-n)*r[t]+n*r[t+1]},e.ij2ab=function(t){return[e.i2a(t[0]),e.j2b(t[1])]},e.a2i=function(e){var r=Math.max(0,Math.min(i(e,t),u-2)),n=t[r],a=t[r+1];return Math.max(0,Math.min(u-1,r+(e-n)/(a-n)))},e.b2j=function(e){var t=Math.max(0,Math.min(i(e,r),c-2)),n=r[t],a=r[t+1];return Math.max(0,Math.min(c-1,t+(e-n)/(a-n)))},e.ab2ij=function(t){return[e.a2i(t[0]),e.b2j(t[1])]},e.i2c=function(t,r){return e.evalxy([],t,r)},e.ab2xy=function(n,i,a){if(!a&&(nt[u-1]|ir[c-1]))return[!1,!1];var o=e.a2i(n),s=e.b2j(i),l=e.evalxy([],o,s);if(a){var f,d,h,p,v=0,m=0,g=[];nt[u-1]?(f=u-2,d=1,v=(n-t[u-1])/(t[u-1]-t[u-2])):d=o-(f=Math.max(0,Math.min(u-2,Math.floor(o)))),ir[c-1]?(h=c-2,p=1,m=(i-r[c-1])/(r[c-1]-r[c-2])):p=s-(h=Math.max(0,Math.min(c-2,Math.floor(s)))),v&&(e.dxydi(g,f,h,d,p),l[0]+=g[0]*v,l[1]+=g[1]*v),m&&(e.dxydj(g,f,h,d,p),l[0]+=g[0]*m,l[1]+=g[1]*m)}return l},e.c2p=function(e,t,r){return[t.c2p(e[0]),r.c2p(e[1])]},e.p2x=function(e,t,r){return[t.p2c(e[0]),r.p2c(e[1])]},e.dadi=function(e){var r=Math.max(0,Math.min(t.length-2,e));return t[r+1]-t[r]},e.dbdj=function(e){var t=Math.max(0,Math.min(r.length-2,e));return r[t+1]-r[t]},e.dxyda=function(t,r,n,i){var a=e.dxydi(null,t,r,n,i),o=e.dadi(t,n);return[a[0]/o,a[1]/o]},e.dxydb=function(t,r,n,i){var a=e.dxydj(null,t,r,n,i),o=e.dbdj(r,i);return[a[0]/o,a[1]/o]},e.dxyda_rough=function(t,r,n){var i=g*(n||.1),a=e.ab2xy(t+i,r,!0),o=e.ab2xy(t-i,r,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},e.dxydb_rough=function(t,r,n){var i=y*(n||.1),a=e.ab2xy(t,r+i,!0),o=e.ab2xy(t,r-i,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},e.dpdx=function(e){return e._m},e.dpdy=function(e){return e._m}}},72505:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t,r){var i,a,o,s=[],l=[],u=e[0].length,c=e.length;function f(t,r){var n,i=0,a=0;return t>0&&void 0!==(n=e[r][t-1])&&(a++,i+=n),t0&&void 0!==(n=e[r-1][t])&&(a++,i+=n),r0&&a0&&i1e-5);return n.log("Smoother converged to",T,"after",M,"iterations"),e}},19237:function(e,t,r){"use strict";var n=r(71828).isArray1D;e.exports=function(e,t,r){var i=r("x"),a=i&&i.length,o=r("y"),s=o&&o.length;if(!a&&!s)return!1;if(t._cheater=!i,a&&!n(i)||s&&!n(o))t._length=null;else{var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),t.a&&t.a.length&&(l=Math.min(l,t.a.length)),t.b&&t.b.length&&(l=Math.min(l,t.b.length)),t._length=l}return!0}},69568:function(e,t,r){"use strict";var n=r(5386).fF,i=r(19316),a=r(50693),o=r(9012),s=r(22399).defaultLine,l=r(1426).extendFlat,u=i.marker.line;e.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({},u.color,{dflt:s}),width:l({},u.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:n(),showlegend:l({},o.showlegend,{dflt:!1})},a("",{cLetter:"z",editTypeOverride:"calc"}))},38675:function(e,t,r){"use strict";var n=r(92770),i=r(50606).BADNUM,a=r(78803),o=r(75225),s=r(66279);function l(e){return e&&"string"===typeof e}e.exports=function(e,t){var r,u=t._length,c=new Array(u);r=t.geojson?function(e){return l(e)||n(e)}:l;for(var f=0;f")}}(e,f,o),[e]}},51319:function(e,t,r){"use strict";e.exports={attributes:r(69568),supplyDefaults:r(61869),colorbar:r(61243),calc:r(38675),calcGeoJSON:r(99841).calcGeoJSON,plot:r(99841).plot,style:r(99636).style,styleOnSelect:r(99636).styleOnSelect,hoverPoints:r(42300),eventData:r(92069),selectPoints:r(81253),moduleType:"trace",name:"choropleth",basePlotModule:r(44622),categories:["geo","noOpacity","showLegend"],meta:{}}},99841:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(41327),o=r(90973).getTopojsonFeatures,s=r(71739).findExtremes,l=r(99636).style;e.exports={calcGeoJSON:function(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,l=r.locationmode,u=r._length,c="geojson-id"===l?a.extractTraceFeature(e):o(r,i.topojson),f=[],d=[],h=0;h=0;n--){var i=r[n].id;if("string"===typeof i&&0===i.indexOf("water"))for(var a=n+1;a=0;r--)e.removeLayer(t[r][1])},s.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},e.exports=function(e,t){var r=t[0].trace,i=new o(e,r.uid),a=i.sourceId,s=n(t),l=i.below=e.belowLookup["trace-"+r.uid];return e.map.addSource(a,{type:"geojson",data:s.geojson}),i._addLayers(s,l),t[0].trace._glTrace=i,i}},12674:function(e,t,r){"use strict";var n=r(50693),i=r(12663).axisHoverFormat,a=r(5386).fF,o=r(2418),s=r(9012),l=r(1426).extendFlat,u={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(u,n("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"})),["opacity","lightposition","lighting"].forEach((function(e){u[e]=o[e]})),u.hoverinfo=l({},s.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),u.transforms=void 0,e.exports=u},31371:function(e,t,r){"use strict";var n=r(78803);e.exports=function(e,t){for(var r=t.u,i=t.v,a=t.w,o=Math.min(t.x.length,t.y.length,t.z.length,r.length,i.length,a.length),s=-1/0,l=1/0,u=0;uo.level||o.starts.length&&a===o.level)}break;case"constraint":if(n.prefixBoundary=!1,n.edgepaths.length)return;var s=n.x.length,l=n.y.length,u=-1/0,c=1/0;for(r=0;r":h>u&&(n.prefixBoundary=!0);break;case"<":(hu||n.starts.length&&d===c)&&(n.prefixBoundary=!0);break;case"][":f=Math.min(h[0],h[1]),d=Math.max(h[0],h[1]),fu&&(n.prefixBoundary=!0)}}}},90654:function(e,t,r){"use strict";var n=r(21081),i=r(86068),a=r(53572);e.exports={min:"zmin",max:"zmax",calc:function(e,t,r){var o=t.contours,s=t.line,l=o.size||1,u=o.coloring,c=i(t,{isColorbar:!0});if("heatmap"===u){var f=n.extractOpts(t);r._fillgradient=f.reversescale?n.flipScale(f.colorscale):f.colorscale,r._zrange=[f.min,f.max]}else"fill"===u&&(r._fillcolor=c);r._line={color:"lines"===u?c:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},r._levels={start:o.start,end:a(o),size:l}}}},36914:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(92770),i=r(14523),a=r(7901),o=a.addOpacity,s=a.opacity,l=r(74808),u=l.CONSTRAINT_REDUCTION,c=l.COMPARISON_OPS2;e.exports=function(e,t,r,a,l,f){var d,h,p,v=t.contours,m=r("contours.operation");v._operation=u[m],function(e,t){var r;-1===c.indexOf(t.operation)?(e("contours.value",[0,1]),Array.isArray(t.value)?t.value.length>2?t.value=t.value.slice(2):0===t.length?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:n(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),n(t.value)||(Array.isArray(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}(r,v),"="===m?d=v.showlines=!0:(d=r("contours.showlines"),p=r("fillcolor",o((e.line||{}).color||l,.5))),d&&(h=r("line.color",p&&s(p)?o(t.fillcolor,1):l),r("line.width",2),r("line.dash")),r("line.smoothing"),i(r,a,h,f)}},64237:function(e,t,r){"use strict";var n=r(74808),i=r(92770);function a(e,t){var r,a=Array.isArray(t);function o(e){return i(e)?+e:null}return-1!==n.COMPARISON_OPS2.indexOf(e)?r=o(a?t[0]:t):-1!==n.INTERVAL_OPS.indexOf(e)?r=a?[o(t[0]),o(t[1])]:[o(t),o(t)]:-1!==n.SET_OPS.indexOf(e)&&(r=a?t.map(o):[o(t)]),r}function o(e){return function(t){t=a(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function s(e){return function(t){return{start:t=a(e,t),end:1/0,size:1/0}}}e.exports={"[]":o("[]"),"][":o("]["),">":s(">"),"<":s("<"),"=":s("=")}},67217:function(e){"use strict";e.exports=function(e,t,r,n){var i=n("contours.start"),a=n("contours.end"),o=!1===i||!1===a,s=r("contours.size");!(o?t.autocontour=!0:r("autocontour",!1))&&s||r("ncontours")}},84857:function(e,t,r){"use strict";var n=r(71828);function i(e){return n.extendFlat({},e,{edgepaths:n.extendDeep([],e.edgepaths),paths:n.extendDeep([],e.paths),starts:n.extendDeep([],e.starts)})}e.exports=function(e,t){var r,a,o,s=function(e){return e.reverse()},l=function(e){return e};switch(t){case"=":case"<":return e;case">":for(1!==e.length&&n.warn("Contour data invalid for the specified inequality operation."),a=e[0],r=0;r1e3){n.warn("Too many contours, clipping at 1000",e);break}return l}},53572:function(e){"use strict";e.exports=function(e){return e.end+e.size/1e6}},81696:function(e,t,r){"use strict";var n=r(71828),i=r(36914);function a(e,t,r,n){return Math.abs(e[0]-t[0])20&&t?208===e||1114===e?n=0===r[0]?1:-1:a=0===r[1]?1:-1:-1!==i.BOTTOMSTART.indexOf(e)?a=1:-1!==i.LEFTSTART.indexOf(e)?n=1:-1!==i.TOPSTART.indexOf(e)?a=-1:n=-1,[n,a]}(d,r,t),p=[l(e,t,[-h[0],-h[1]])],v=e.z.length,m=e.z[0].length,g=t.slice(),y=h.slice();for(c=0;c<1e4;c++){if(d>20?(d=i.CHOOSESADDLE[d][(h[0]||h[1])<0?0:1],e.crossings[f]=i.SADDLEREMAINDER[d]):delete e.crossings[f],!(h=i.NEWDELTA[d])){n.log("Found bad marching index:",d,t,e.level);break}p.push(l(e,t,h)),t[0]+=h[0],t[1]+=h[1],f=t.join(","),a(p[p.length-1],p[p.length-2],s,u)&&p.pop();var x=h[0]&&(t[0]<0||t[0]>m-2)||h[1]&&(t[1]<0||t[1]>v-2);if(t[0]===g[0]&&t[1]===g[1]&&h[0]===y[0]&&h[1]===y[1]||r&&x)break;d=e.crossings[f]}1e4===c&&n.log("Infinite loop in contour?");var b,_,w,k,T,M,A,S,E,C,L,P=a(p[0],p[p.length-1],s,u),O=0,I=.2*e.smoothing,D=[],R=0;for(c=1;c=R;c--)if((b=D[c])=R&&b+D[_]S&&E--,e.edgepaths[E]=L.concat(p,C));break}B||(e.edgepaths[S]=p.concat(C))}for(S=0;Se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);return 5===r||10===r?e>(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4?5===r?713:1114:5===r?104:208:15===r?0:r}e.exports=function(e){var t,r,a,o,s,l,u,c,f,d=e[0].z,h=d.length,p=d[0].length,v=2===h||2===p;for(r=0;r=0&&(n=y,s=l):Math.abs(r[1]-n[1])<.01?Math.abs(r[1]-y[1])<.01&&(y[0]-r[0])*(n[0]-y[0])>=0&&(n=y,s=l):i.log("endpt to newendpt is not vert. or horz.",r,n,y)}if(r=n,s>=0)break;f+="L"+n}if(s===e.edgepaths.length){i.log("unclosed perimeter path");break}d=s,(p=-1===h.indexOf(d))&&(d=h[0],f+="Z")}for(d=0;dn.center?n.right-s:s-n.left)/(c+Math.abs(Math.sin(u)*o)),h=(l>n.middle?n.bottom-l:l-n.top)/(Math.abs(f)+Math.cos(u)*o);if(d<1||h<1)return 1/0;var p=g.EDGECOST*(1/(d-1)+1/(h-1));p+=g.ANGLECOST*u*u;for(var v=s-c,m=l-f,y=s+c,x=l+f,b=0;b2*g.MAXCOST)break;h&&(s/=2),l=(o=u-s/2)+1.5*s}if(d<=g.MAXCOST)return c},t.addLabelData=function(e,t,r,n){var i=t.fontSize,a=t.width+i/3,o=Math.max(0,t.height-i/3),s=e.x,l=e.y,u=e.theta,c=Math.sin(u),f=Math.cos(u),d=function(e,t){return[s+e*f-t*c,l+e*c+t*f]},h=[d(-a/2,-o/2),d(-a/2,o/2),d(a/2,o/2),d(a/2,-o/2)];r.push({text:t.text,x:s,y:l,dy:t.dy,theta:u,level:t.level,width:a,height:o}),n.push(h)},t.drawLabels=function(e,t,r,a,o){var l=e.selectAll("text").data(t,(function(e){return e.text+","+e.x+","+e.y+","+e.theta}));if(l.exit().remove(),l.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each((function(e){var t=e.x+Math.sin(e.theta)*e.dy,i=e.y-Math.cos(e.theta)*e.dy;n.select(this).text(e.text).attr({x:t,y:i,transform:"rotate("+180*e.theta/Math.PI+" "+t+" "+i+")"}).call(s.convertToTspans,r)})),o){for(var u="",c=0;cr.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),i.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if("constraint"!==r.type){var u,c=r.start,f=r.end,d=e._input.contours;c>f&&(r.start=d.start=f,f=r.end=d.end=c,c=r.start),r.size>0||(u=c===f?1:a(c,f,e.ncontours).dtick,d.size=r.size=u)}}},84426:function(e,t,r){"use strict";var n=r(39898),i=r(91424),a=r(70035),o=r(86068);e.exports=function(e){var t=n.select(e).selectAll("g.contour");t.style("opacity",(function(e){return e[0].trace.opacity})),t.each((function(e){var t=n.select(this),r=e[0].trace,a=r.contours,s=r.line,l=a.size||1,u=a.start,c="constraint"===a.type,f=!c&&"lines"===a.coloring,d=!c&&"fill"===a.coloring,h=f||d?o(r):null;t.selectAll("g.contourlevel").each((function(e){n.select(this).selectAll("path").call(i.lineGroupStyle,s.width,f?h(e.level):s.color,s.dash)}));var p=a.labelfont;if(t.selectAll("g.contourlabels text").each((function(e){i.font(n.select(this),{family:p.family,size:p.size,color:p.color||(f?h(e.level):s.color)})})),c)t.selectAll("g.contourfill path").style("fill",r.fillcolor);else if(d){var v;t.selectAll("g.contourfill path").style("fill",(function(e){return void 0===v&&(v=e.level),h(e.level+.5*l)})),void 0===v&&(v=u),t.selectAll("g.contourbg path").style("fill",h(v-.5*l))}})),a(e)}},8724:function(e,t,r){"use strict";var n=r(1586),i=r(14523);e.exports=function(e,t,r,a,o){var s,l=r("contours.coloring"),u="";"fill"===l&&(s=r("contours.showlines")),!1!==s&&("lines"!==l&&(u=r("line.color","#000")),r("line.width",.5),r("line.dash")),"none"!==l&&(!0!==e.showlegend&&(t.showlegend=!1),t._dfltShowLegend=!1,n(e,t,a,r,{prefix:"",cLetter:"z"})),r("line.smoothing"),i(r,a,u,o)}},88085:function(e,t,r){"use strict";var n=r(21606),i=r(70600),a=r(50693),o=r(1426).extendFlat,s=i.contours;e.exports=o({carpet:{valType:"string",editType:"calc"},z:n.z,a:n.x,a0:n.x0,da:n.dx,b:n.y,b0:n.y0,db:n.dy,text:n.text,hovertext:n.hovertext,transpose:n.transpose,atype:n.xtype,btype:n.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(e,t,r){"use strict";var n=r(78803),i=r(71828),a=r(68296),o=r(4742),s=r(824),l=r(43907),u=r(70769),c=r(75005),f=r(22882),d=r(18670);e.exports=function(e,t){var r=t._carpetTrace=f(e,t);if(r&&r.visible&&"legendonly"!==r.visible){if(!t.a||!t.b){var h=e.data[r.index],p=e.data[t.index];p.a||(p.a=h.a),p.b||(p.b=h.b),c(p,t,t._defaultColor,e._fullLayout)}var v=function(e,t){var r,c,f,d,h,p,v,m=t._carpetTrace,g=m.aaxis,y=m.baxis;g._minDtick=0,y._minDtick=0,i.isArray1D(t.z)&&a(t,g,y,"a","b",["z"]),r=t._a=t._a||t.a,d=t._b=t._b||t.b,r=r?g.makeCalcdata(t,"_a"):[],d=d?y.makeCalcdata(t,"_b"):[],c=t.a0||0,f=t.da||1,h=t.b0||0,p=t.db||1,v=t._z=o(t._z||t.z,t.transpose),t._emptypoints=l(v),s(v,t._emptypoints);var x=i.maxRowLength(v),b="scaled"===t.xtype?"":r,_=u(t,b,c,f,x,g),w="scaled"===t.ytype?"":d,k=u(t,w,h,p,v.length,y),T={a:_,b:k,z:v};return"levels"===t.contours.type&&"none"!==t.contours.coloring&&n(e,t,{vals:v,containerStr:"",cLetter:"z"}),[T]}(e,t);return d(t,t._z),v}}},75005:function(e,t,r){"use strict";var n=r(71828),i=r(67684),a=r(88085),o=r(83179),s=r(67217),l=r(8724);e.exports=function(e,t,r,u){function c(r,i){return n.coerce(e,t,a,r,i)}if(c("carpet"),e.a&&e.b){if(!i(e,t,c,u,"a","b"))return void(t.visible=!1);c("text"),"constraint"===c("contours.type")?o(e,t,c,u,r,{hasHover:!1}):(s(e,t,c,(function(r){return n.coerce2(e,t,a,r)})),l(e,t,c,u,{hasHover:!1}))}else t._defaultColor=r,t._length=null}},93740:function(e,t,r){"use strict";e.exports={attributes:r(88085),supplyDefaults:r(75005),colorbar:r(90654),calc:r(59885),plot:r(51048),style:r(84426),moduleType:"trace",name:"contourcarpet",basePlotModule:r(93612),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}},51048:function(e,t,r){"use strict";var n=r(39898),i=r(27669),a=r(67961),o=r(91424),s=r(71828),l=r(87678),u=r(81696),c=r(29854),f=r(36914),d=r(84857),h=r(87558),p=r(20083),v=r(22882),m=r(4536);function g(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function y(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function x(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]);return Math.sqrt(1-r*r)/r}e.exports=function(e,t,r,b){var _=t.xaxis,w=t.yaxis;s.makeTraceGroups(b,r,"contour").each((function(r){var b=n.select(this),k=r[0],T=k.trace,M=T._carpetTrace=v(e,T),A=e.calcdata[M.index][0];if(M.visible&&"legendonly"!==M.visible){var S=k.a,E=k.b,C=T.contours,L=h(C,t,k),P="constraint"===C.type,O=C._operation,I=P?"="===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(L);var R=1e-8*(S[S.length-1]-S[0]),z=1e-8*(E[E.length-1]-E[0]);u(L,R,z);var F,N,B,j,U=L;"constraint"===C.type&&(U=d(L,O)),function(e,t){var r,n,i,a,o,s,l,u,c;for(r=0;r=0;j--)F=A.clipsegments[j],N=i([],F.x,_.c2p),B=i([],F.y,w.c2p),N.reverse(),B.reverse(),V.push(a(N,B,F.bicubic));var H="M"+V.join("L")+"Z";!function(e,t,r,n,o,l){var u,c,f,d,h=s.ensureSingle(e,"g","contourbg").selectAll("path").data("fill"!==l||o?[]:[0]);h.enter().append("path"),h.exit().remove();var p=[];for(d=0;d=0&&(d=C,p=v):Math.abs(f[1]-d[1])=0&&(d=C,p=v):s.log("endpt to newendpt is not vert. or horz.",f,d,C)}if(p>=0)break;y+=S(f,d),f=d}if(p===t.edgepaths.length){s.log("unclosed perimeter path");break}c=p,(b=-1===x.indexOf(c))&&(c=x[0],y+=S(f,d)+"Z",f=null)}for(c=0;cv&&(n.max=v),n.len=n.max-n.min}function m(e,t){var r,n=0,o=.1;return(Math.abs(e[0]-l)0?+h[c]:0),f.push({type:"Feature",geometry:{type:"Point",coordinates:g},properties:y})}}var b=o.extractOpts(t),_=b.reversescale?o.flipScale(b.colorscale):b.colorscale,w=_[0][1],k=["interpolate",["linear"],["heatmap-density"],0,a.opacity(w)<1?w:a.addOpacity(w,0)];for(c=1;c<_.length;c++)k.push(_[c][0],_[c][1]);var T=["interpolate",["linear"],["get","z"],b.min,0,b.max,1];return i.extendFlat(u.heatmap.paint,{"heatmap-weight":p?T:1/(b.max-b.min),"heatmap-color":k,"heatmap-radius":v?{type:"identity",property:"r"}:t.radius,"heatmap-opacity":t.opacity}),u.geojson={type:"FeatureCollection",features:f},u.heatmap.layout.visibility="visible",u}},79429:function(e,t,r){"use strict";var n=r(71828),i=r(1586),a=r(64096);e.exports=function(e,t,r,o){function s(r,i){return n.coerce(e,t,a,r,i)}var l=s("lon")||[],u=s("lat")||[],c=Math.min(l.length,u.length);c?(t._length=c,s("z"),s("radius"),s("below"),s("text"),s("hovertext"),s("hovertemplate"),i(e,t,o,s,{prefix:"",cLetter:"z"})):t.visible=!1}},62474:function(e){"use strict";e.exports=function(e,t){return e.lon=t.lon,e.lat=t.lat,e.z=t.z,e}},84684:function(e,t,r){"use strict";var n=r(89298),i=r(28178).hoverPoints,a=r(28178).getExtraText;e.exports=function(e,t,r){var o=i(e,t,r);if(o){var s=o[0],l=s.cd,u=l[0].trace,c=l[s.index];if(delete s.color,"z"in c){var f=s.subplot.mockAxis;s.z=c.z,s.zLabel=n.tickText(f,f.c2l(c.z),"hover").text}return s.extraText=a(u,c,l[0].t.labels),[s]}}},93814:function(e,t,r){"use strict";e.exports={attributes:r(64096),supplyDefaults:r(79429),colorbar:r(61243),formatLabels:r(15636),calc:r(85070),plot:r(7336),hoverPoints:r(84684),eventData:r(62474),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n=0;r--)e.removeLayer(t[r][1])},o.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},e.exports=function(e,t){var r=t[0].trace,i=new a(e,r.uid),o=i.sourceId,s=n(t),l=i.below=e.belowLookup["trace-"+r.uid];return e.map.addSource(o,{type:"geojson",data:s.geojson}),i._addLayers(s,l),i}},49789:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){for(var r=0;r"),l.color=function(e,t){var r=e.marker,i=t.mc||r.color,a=t.mlc||r.line.color,o=t.mlw||r.line.width;return n(i)?i:n(a)&&o?a:void 0}(c,d),[l]}}},51759:function(e,t,r){"use strict";e.exports={attributes:r(1285),layoutAttributes:r(10440),supplyDefaults:r(26199).supplyDefaults,crossTraceDefaults:r(26199).crossTraceDefaults,supplyLayoutDefaults:r(93138),calc:r(9532),crossTraceCalc:r(8984),plot:r(80461),style:r(68266).style,hoverPoints:r(63341),eventData:r(34598),selectPoints:r(81974),moduleType:"trace",name:"funnel",basePlotModule:r(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},10440:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(10440);e.exports=function(e,t,r){var a=!1;function o(r,a){return n.coerce(e,t,i,r,a)}for(var s=0;s path").each((function(e){if(!e.isBlank){var t=s.marker;n.select(this).call(a.fill,e.mc||t.color).call(a.stroke,e.mlc||t.line.color).call(i.dashLine,t.line.dash,e.mlw||t.line.width).style("opacity",s.selectedpoints&&!e.selected?o:1)}})),u(r,s,e),r.selectAll(".regions").each((function(){n.select(this).selectAll("path").style("stroke-width",0).call(a.fill,s.connector.fillcolor)})),r.selectAll(".lines").each((function(){var e=s.connector.line;i.lineGroupStyle(n.select(this).selectAll("path"),e.width,e.color,e.dash)}))}))}}},86807:function(e,t,r){"use strict";var n=r(34e3),i=r(9012),a=r(27670).Y,o=r(5386).fF,s=r(5386).si,l=r(1426).extendFlat;e.exports={labels:n.labels,label0:n.label0,dlabel:n.dlabel,values:n.values,marker:{colors:n.marker.colors,line:{color:l({},n.marker.line.color,{dflt:null}),width:l({},n.marker.line.width,{dflt:1}),editType:"calc"},editType:"calc"},text:n.text,hovertext:n.hovertext,scalegroup:l({},n.scalegroup,{}),textinfo:l({},n.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({},n.textposition,{values:["inside","none"],dflt:"inside"}),textfont:n.textfont,insidetextfont:n.insidetextfont,title:{text:n.title.text,font:n.title.font,position:l({},n.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(e,t,r){"use strict";var n=r(74875);t.name="funnelarea",t.plot=function(e,r,i,a){n.plotBasePlot(t.name,e,r,i,a)},t.clean=function(e,r,i,a){n.cleanBasePlot(t.name,e,r,i,a)}},89574:function(e,t,r){"use strict";var n=r(32354);e.exports={calc:function(e,t){return n.calc(e,t)},crossTraceCalc:function(e){n.crossTraceCalc(e,{type:"funnelarea"})}}},86282:function(e,t,r){"use strict";var n=r(71828),i=r(86807),a=r(27670).c,o=r(90769).handleText,s=r(37434).handleLabelsAndValues;e.exports=function(e,t,r,l){function u(r,a){return n.coerce(e,t,i,r,a)}var c=u("labels"),f=u("values"),d=s(c,f),h=d.len;if(t._hasLabels=d.hasLabels,t._hasValues=d.hasValues,!t._hasLabels&&t._hasValues&&(u("label0"),u("dlabel")),h){t._length=h,u("marker.line.width")&&u("marker.line.color",l.paper_bgcolor),u("marker.colors"),u("scalegroup");var p,v=u("text"),m=u("texttemplate");if(m||(p=u("textinfo",Array.isArray(v)?"text+percent":"percent")),u("hovertext"),u("hovertemplate"),m||p&&"none"!==p){var g=u("textposition");o(e,t,l,u,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}a(t,l,u),u("title.text")&&(u("title.position"),n.coerceFont(u,"title.font",l.font)),u("aspectratio"),u("baseratio")}else t.visible=!1}},10421:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"funnelarea",basePlotModule:r(6452),categories:["pie-like","funnelarea","showLegend"],attributes:r(86807),layoutAttributes:r(80097),supplyDefaults:r(86282),supplyLayoutDefaults:r(57402),calc:r(89574).calc,crossTraceCalc:r(89574).crossTraceCalc,plot:r(79187),style:r(71858),styleOne:r(63463),meta:{}}},80097:function(e,t,r){"use strict";var n=r(92774).hiddenlabels;e.exports={hiddenlabels:n,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57402:function(e,t,r){"use strict";var n=r(71828),i=r(80097);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}r("hiddenlabels"),r("funnelareacolorway",t.colorway),r("extendfunnelareacolors")}},79187:function(e,t,r){"use strict";var n=r(39898),i=r(91424),a=r(71828),o=a.strScale,s=a.strTranslate,l=r(63893),u=r(17295).toMoveInsideBar,c=r(72597),f=c.recordMinTextSize,d=c.clearMinTextSize,h=r(53581),p=r(14575),v=p.attachFxHandlers,m=p.determineInsideTextFont,g=p.layoutAreas,y=p.prerenderTitles,x=p.positionTitleOutside,b=p.formatSliceLabel;function _(e,t){return"l"+(t[0]-e[0])+","+(t[1]-e[1])}function w(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}e.exports=function(e,t){var r=e._context.staticPlot,c=e._fullLayout;d("funnelarea",c),y(t,e),g(t,c._size),a.makeTraceGroups(c._funnelarealayer,t,"trace").each((function(t){var d=n.select(this),p=t[0],g=p.trace;!function(e){if(e.length){var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a,o,s,l=Math.pow(i,2),u=t.vTotal,c=u,f=u*l/(1-l)/u,d=[];for(d.push(E()),o=e.length-1;o>-1;o--)if(!(s=e[o]).hidden){var h=s.v/c;f+=h,d.push(E())}var p=1/0,v=-1/0;for(o=0;o-1;o--)if(!(s=e[o]).hidden){var M=d[T+=1][0],A=d[T][1];s.TL=[-M,A],s.TR=[M,A],s.BL=_,s.BR=k,s.pxmid=w(s.TR,s.BR),_=s.TL,k=s.TR}}function S(){var e=Math.sqrt(f);return{x:e,y:-e}}function E(){var e=S();return[e.x,e.y]}}(t),d.each((function(){var d=n.select(this).selectAll("g.slice").data(t);d.enter().append("g").classed("slice",!0),d.exit().remove(),d.each((function(o,s){if(o.hidden)n.select(this).selectAll("path,g").remove();else{o.pointNumber=o.i,o.curveNumber=g.index;var d=p.cx,y=p.cy,x=n.select(this),w=x.selectAll("path.surface").data([o]);w.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),x.call(v,e,t);var k="M"+(d+o.TR[0])+","+(y+o.TR[1])+_(o.TR,o.BR)+_(o.BR,o.BL)+_(o.BL,o.TL)+"Z";w.attr("d",k),b(e,o,p);var T=h.castOption(g.textposition,o.pts),M=x.selectAll("g.slicetext").data(o.text&&"none"!==T?[0]:[]);M.enter().append("g").classed("slicetext",!0),M.exit().remove(),M.each((function(){var r=a.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),h=a.ensureUniformFontSize(e,m(g,o,c.font));r.text(o.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(i.font,h).call(l.convertToTspans,e);var p,v,x,b=i.bBox(r.node()),_=Math.min(o.BL[1],o.BR[1])+y,w=Math.max(o.TL[1],o.TR[1])+y;v=Math.max(o.TL[0],o.BL[0])+d,x=Math.min(o.TR[0],o.BR[0])+d,(p=u(v,x,_,w,b,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=h.size,f(g.type,p,c),t[s].transform=p,a.setTransormAndDisplay(r,p)}))}}));var y=n.select(this).selectAll("g.titletext").data(g.title.text?[0]:[]);y.enter().append("g").classed("titletext",!0),y.exit().remove(),y.each((function(){var t=a.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),r=g.title.text;g._meta&&(r=a.templateString(r,g._meta)),t.text(r).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(i.font,g.title.font).call(l.convertToTspans,e);var u=x(p,c._size);t.attr("transform",s(u.x,u.y)+o(Math.min(1,u.scale))+s(u.tx,u.ty))}))}))}))}},71858:function(e,t,r){"use strict";var n=r(39898),i=r(63463),a=r(72597).resizeText;e.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");a(e,t,"funnelarea"),t.each((function(e){var t=e[0].trace,r=n.select(this);r.style({opacity:t.opacity}),r.selectAll("path.surface").each((function(e){n.select(this).call(i,e,t)}))}))}},21606:function(e,t,r){"use strict";var n=r(82196),i=r(9012),a=r(41940),o=r(12663).axisHoverFormat,s=r(5386).fF,l=r(5386).si,u=r(50693),c=r(1426).extendFlat;e.exports=c({z:{valType:"data_array",editType:"calc"},x:c({},n.x,{impliedEdits:{xtype:"array"}}),x0:c({},n.x0,{impliedEdits:{xtype:"scaled"}}),dx:c({},n.dx,{impliedEdits:{xtype:"scaled"}}),y:c({},n.y,{impliedEdits:{ytype:"array"}}),y0:c({},n.y0,{impliedEdits:{ytype:"scaled"}}),dy:c({},n.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:c({},n.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:c({},n.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:c({},n.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:c({},n.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:c({},n.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:c({},n.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:c({},i.showlegend,{dflt:!1})},{transforms:void 0},u("",{cLetter:"z",autoColorDflt:!1}))},90757:function(e,t,r){"use strict";var n=r(73972),i=r(71828),a=r(89298),o=r(42973),s=r(17562),l=r(78803),u=r(68296),c=r(4742),f=r(824),d=r(43907),h=r(70769),p=r(50606).BADNUM;function v(e){for(var t=[],r=e.length,n=0;nR){I("x scale is not linear");break}}if(x.length&&"fast"===P){var z=(x[x.length-1]-x[0])/(x.length-1),F=Math.abs(z/100);for(T=0;TF){I("y scale is not linear");break}}}var N=i.maxRowLength(k),B="scaled"===t.xtype?"":r,j=h(t,B,m,g,N,A),U="scaled"===t.ytype?"":x,V=h(t,U,b,_,k.length,S);L||(t._extremes[A._id]=a.findExtremes(A,j),t._extremes[S._id]=a.findExtremes(S,V));var H={x:j,y:V,z:k,text:t._text||t.text,hovertext:t._hovertext||t.hovertext};if(t.xperiodalignment&&y&&(H.orig_x=y),t.yperiodalignment&&w&&(H.orig_y=w),B&&B.length===j.length-1&&(H.xCenter=B),U&&U.length===V.length-1&&(H.yCenter=U),C&&(H.xRanges=M.xRanges,H.yRanges=M.yRanges,H.pts=M.pts),E||l(e,t,{vals:k,cLetter:"z"}),E&&t.contours&&"heatmap"===t.contours.coloring){var q={type:"contour"===t.type?"heatmap":"histogram2d",xcalendar:t.xcalendar,ycalendar:t.ycalendar};H.xfill=h(q,B,m,g,N,A),H.yfill=h(q,U,b,_,k.length,S)}return[H]}},4742:function(e,t,r){"use strict";var n=r(92770),i=r(71828),a=r(50606).BADNUM;e.exports=function(e,t,r,o){var s,l,u,c,f,d;function h(e){if(n(e))return+e}if(t&&t.transpose){for(s=0,f=0;f=0;o--)(s=((f[[(r=(a=d[o])[0])-1,i=a[1]]]||v)[2]+(f[[r+1,i]]||v)[2]+(f[[r,i-1]]||v)[2]+(f[[r,i+1]]||v)[2])/20)&&(l[a]=[r,i,s],d.splice(o,1),u=!0);if(!u)throw"findEmpties iterated with no new neighbors";for(a in l)f[a]=l[a],c.push(l[a])}return c.sort((function(e,t){return t[2]-e[2]}))}},46248:function(e,t,r){"use strict";var n=r(30211),i=r(71828),a=r(89298),o=r(21081).extractOpts;e.exports=function(e,t,r,s,l){l||(l={});var u,c,f,d,h=l.isContour,p=e.cd[0],v=p.trace,m=e.xa,g=e.ya,y=p.x,x=p.y,b=p.z,_=p.xCenter,w=p.yCenter,k=p.zmask,T=v.zhoverformat,M=y,A=x;if(!1!==e.index){try{f=Math.round(e.index[1]),d=Math.round(e.index[0])}catch(B){return void i.error("Error hovering on heatmap, pointNumber must be [row,col], found:",e.index)}if(f<0||f>=b[0].length||d<0||d>b.length)return}else{if(n.inbox(t-y[0],t-y[y.length-1],0)>0||n.inbox(r-x[0],r-x[x.length-1],0)>0)return;if(h){var S;for(M=[2*y[0]-y[1]],S=1;Sv&&(g=Math.max(g,Math.abs(e[a][o]-p)/(m-v))))}return g}e.exports=function(e,t){var r,i=1;for(o(e,t),r=0;r.01;r++)i=o(e,t,a(i));return i>.01&&n.log("interp2d didn't converge quickly",i),e}},58623:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){e("texttemplate");var r=n.extendFlat({},t.font,{color:"auto",size:"auto"});n.coerceFont(e,"textfont",r)}},70769:function(e,t,r){"use strict";var n=r(73972),i=r(71828).isArrayOrTypedArray;e.exports=function(e,t,r,a,o,s){var l,u,c,f=[],d=n.traceIs(e,"contour"),h=n.traceIs(e,"histogram"),p=n.traceIs(e,"gl2d");if(i(t)&&t.length>1&&!h&&"category"!==s.type){var v=t.length;if(!(v<=o))return d?t.slice(0,o):t.slice(0,o+1);if(d||p)f=t.slice(0,o);else if(1===o)f=[t[0]-.5,t[0]+.5];else{for(f=[1.5*t[0]-.5*t[1]],c=1;c0;)w=k.c2p(F[E]),E--;for(w0;)S=T.c2p(N[E]),E--;if(SGe||Ge>T._length))for(C=Ve;CZe||Ze>k._length)){var Xe=c({x:Ye,y:We},I,e._fullLayout);Xe.x=Ye,Xe.y=We;var Ke=O.z[E][C];void 0===Ke?(Xe.z="",Xe.zLabel=""):(Xe.z=Ke,Xe.zLabel=s.tickText(Ne,Ke,"hover").text);var $e=O.text&&O.text[E]&&O.text[E][C];void 0!==$e&&!1!==$e||($e=""),Xe.text=$e;var Je=l.texttemplateString(ze,Xe,e._fullLayout._d3locale,Xe,I._meta||{});if(Je){var Qe=Je.split("
"),et=Qe.length,tt=0;for(L=0;L0&&(a=!0);for(var l=0;la){var o=a-r[e];return r[e]=a,o}}return 0},max:function(e,t,r,i){var a=i[t];if(n(a)){if(a=Number(a),!n(r[e]))return r[e]=a,a;if(r[e]u?e>o?e>1.1*i?i:e>1.1*a?a:o:e>s?s:e>l?l:u:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function h(e,t,r,n,a,s){if(n&&e>o){var l=p(t,a,s),u=p(r,a,s),c=e===i?0:1;return l[c]!==u[c]}return Math.floor(r/e)-Math.floor(t/e)>.1}function p(e,t,r){var n=t.c2d(e,i,r).split("-");return""===n[0]&&(n.unshift(),n[0]="-"+n[0]),n}e.exports=function(e,t,r,n,a){var s,l,u=-1.1*t,d=-.1*t,h=e-d,p=r[0],v=r[1],m=Math.min(f(p+d,p+h,n,a),f(v+d,v+h,n,a)),g=Math.min(f(p+u,p+d,n,a),f(v+u,v+d,n,a));if(m>g&&go){var y=s===i?1:6,x=s===i?"M12":"M1";return function(t,r){var o=n.c2d(t,i,a),s=o.indexOf("-",y);s>0&&(o=o.substr(0,s));var u=n.d2c(o,0,a);if(ur.r2l(N)&&(j=o.tickIncrement(j,b.size,!0,h)),D.start=r.l2r(j),F||i.nestedProperty(t,g+".start").set(D.start)}var U=b.end,V=r.r2l(I.end),H=void 0!==V;if((b.endFound||H)&&V!==r.r2l(U)){var q=H?V:i.aggNums(Math.max,null,p);D.end=r.l2r(q),H||i.nestedProperty(t,g+".start").set(D.end)}var W="autobin"+s;return!1===t._input[W]&&(t._input[g]=i.extendFlat({},t[g]||{}),delete t._input[W],delete t[W]),[D,p]}e.exports={calc:function(e,t){var r,a,h,p,v=[],m=[],g="h"===t.orientation,y=o.getFromId(e,g?t.yaxis:t.xaxis),x=g?"y":"x",b={x:"y",y:"x"}[x],_=t[x+"calendar"],w=t.cumulative,k=d(e,t,y,x),T=k[0],M=k[1],A="string"===typeof T.size,S=[],E=A?S:T,C=[],L=[],P=[],O=0,I=t.histnorm,D=t.histfunc,R=-1!==I.indexOf("density");w.enabled&&R&&(I=I.replace(/ ?density$/,""),R=!1);var z,F="max"===D||"min"===D?null:0,N=l.count,B=u[I],j=!1,U=function(e){return y.r2c(e,0,_)};for(i.isArrayOrTypedArray(t[b])&&"count"!==D&&(z=t[b],j="avg"===D,N=l[D]),r=U(T.start),h=U(T.end)+(r-o.tickIncrement(r,T.size,!1,_))/1e6;r=0&&p=0;n--)s(n);else if("increasing"===t){for(n=1;n=0;n--)e[n]+=e[n+1];"exclude"===r&&(e.push(0),e.shift())}}(m,w.direction,w.currentbin);var $=Math.min(v.length,m.length),J=[],Q=0,ee=$-1;for(r=0;r<$;r++)if(m[r]){Q=r;break}for(r=$-1;r>=Q;r--)if(m[r]){ee=r;break}for(r=Q;r<=ee;r++)if(n(v[r])&&n(m[r])){var te={p:v[r],s:m[r],b:0};w.enabled||(te.pts=P[r],G?te.ph0=te.ph1=P[r].length?M[P[r][0]]:v[r]:(t._computePh=!0,te.ph0=q(S[r]),te.ph1=q(S[r+1],!0))),J.push(te)}return 1===J.length&&(J[0].width1=o.tickIncrement(J[0].p,T.size,!1,_)-J[0].p),s(J,t),i.isArrayOrTypedArray(t.selectedpoints)&&i.tagSelected(J,t,X),J},calcAllAutoBins:d}},72406:function(e){"use strict";e.exports={eventDataKeys:["binNumber"]}},82222:function(e,t,r){"use strict";var n=r(71828),i=r(41675),a=r(73972).traceIs,o=r(26125),s=n.nestedProperty,l=r(99082).getAxisGroup,u=[{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"}],c=["x","y"];e.exports=function(e,t){var r,f,d,h,p,v,m,g=t._histogramBinOpts={},y=[],x={},b=[];function _(e,t){return n.coerce(r._input,r,r._module.attributes,e,t)}function w(e){return"v"===e.orientation?"x":"y"}function k(e,r,a){var o=e.uid+"__"+a;r||(r=o);var s=function(e,r){return i.getFromTrace({_fullLayout:t},e,r).type}(e,a),l=e[a+"calendar"]||"",u=g[r],c=!0;u&&(s===u.axType&&l===u.calendar?(c=!1,u.traces.push(e),u.dirs.push(a)):(r=o,s!==u.axType&&n.warn(["Attempted to group the bins of trace",e.index,"set on a","type:"+s,"axis","with bins on","type:"+u.axType,"axis."].join(" ")),l!==u.calendar&&n.warn(["Attempted to group the bins of trace",e.index,"set with a",l,"calendar","with bins",u.calendar?"on a "+u.calendar+" calendar":"w/o a set calendar"].join(" ")))),c&&(g[r]={traces:[e],dirs:[a],axType:s,calendar:e[a+"calendar"]||""}),e["_"+a+"bingroup"]=r}for(p=0;pS&&k.splice(S,k.length-S),A.length>S&&A.splice(S,A.length-S);var E=[],C=[],L=[],P="string"===typeof w.size,O="string"===typeof M.size,I=[],D=[],R=P?I:w,z=O?D:M,F=0,N=[],B=[],j=t.histnorm,U=t.histfunc,V=-1!==j.indexOf("density"),H="max"===U||"min"===U?null:0,q=a.count,W=o[j],G=!1,Y=[],Z=[],X="z"in t?t.z:"marker"in t&&Array.isArray(t.marker.color)?t.marker.color:"";X&&"count"!==U&&(G="avg"===U,q=a[U]);var K=w.size,$=x(w.start),J=x(w.end)+($-i.tickIncrement($,K,!1,g))/1e6;for(r=$;r=0&&h=0&&p-1,flipY:L.tiling.flip.indexOf("y")>-1,orientation:L.tiling.orientation,pad:{inner:L.tiling.pad},maxDepth:L._maxDepth}).descendants(),R=1/0,z=-1/0;D.forEach((function(e){var t=e.depth;t>=L._maxDepth?(e.x0=e.x1=(e.x0+e.x1)/2,e.y0=e.y1=(e.y0+e.y1)/2):(R=Math.min(R,t),z=Math.max(z,t))})),p=p.data(D,c.getPtId),L._maxVisibleLayers=isFinite(z)?z-R+1:0,p.enter().append("g").classed("slice",!0),T(p,h,{},[m,g],b),p.order();var F=null;if(k&&S){var N=c.getPtId(S);p.each((function(e){null===F&&c.getPtId(e)===N&&(F={x0:e.x0,x1:e.x1,y0:e.y0,y1:e.y1})}))}var B=function(){return F||{x0:0,x1:m,y0:0,y1:g}},j=p;return k&&(j=j.transition().each("end",(function(){var t=n.select(this);c.setSliceCursor(t,e,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),j.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=y(s.x1-L.tiling.pad),s._hoverY=x(I?s.y1-L.tiling.pad/2:s.y0+L.tiling.pad/2);var p=n.select(this),v=i.ensureSingle(p,"path","surface",(function(e){e.style("pointer-events",E?"none":"all")}));k?v.transition().attrTween("d",(function(e){var t=M(e,h,B(),[m,g],{orientation:L.tiling.orientation,flipX:L.tiling.flip.indexOf("x")>-1,flipY:L.tiling.flip.indexOf("y")>-1});return function(e){return b(t(e))}})):v.attr("d",b),p.call(f,r,e,t,{styleOne:l,eventDataKeys:u.eventDataKeys,transitionTime:u.CLICK_TRANSITION_TIME,transitionEasing:u.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,e,{isTransitioning:e._transitioning}),v.call(l,s,L,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=d(s,r,L,t,C)||"";var T=i.ensureSingle(p,"g","slicetext"),S=i.ensureSingle(T,"text","",(function(e){e.attr("data-notex",1)})),D=i.ensureUniformFontSize(e,c.determineTextFont(L,s,C.font));S.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":P?"start":"middle").call(a.font,D).call(o.convertToTspans,e),s.textBB=a.bBox(S.node()),s.transform=_(s,{fontSize:D.size}),s.transform.fontSize=D.size,k?S.transition().attrTween("transform",(function(e){var t=A(e,h,B(),[m,g]);return function(e){return w(t(e))}})):S.attr("transform",w(s))})),F}},69816:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"icicle",basePlotModule:r(96346),categories:[],animatable:!0,attributes:r(46291),layoutAttributes:r(92894),supplyDefaults:r(56524),supplyLayoutDefaults:r(21070),calc:r(46584).y,crossTraceCalc:r(46584).T,plot:r(85596),style:r(82454).style,colorbar:r(4898),meta:{}}},92894:function(e){"use strict";e.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},21070:function(e,t,r){"use strict";var n=r(71828),i=r(92894);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}r("iciclecolorway",t.colorway),r("extendiciclecolors")}},21538:function(e,t,r){"use strict";var n=r(674),i=r(14102);e.exports=function(e,t,r){var a=r.flipX,o=r.flipY,s="h"===r.orientation,l=r.maxDepth,u=t[0],c=t[1];l&&(u=(e.height+1)*t[0]/Math.min(e.height+1,l),c=(e.height+1)*t[1]/Math.min(e.height+1,l));var f=n.partition().padding(r.pad.inner).size(s?[t[1],u]:[t[0],c])(e);return(s||a||o)&&i(f,t,{swapXY:s,flipX:a,flipY:o}),f}},85596:function(e,t,r){"use strict";var n=r(80694),i=r(90666);e.exports=function(e,t,r,a){return n(e,t,r,a,{type:"icicle",drawDescendants:i})}},82454:function(e,t,r){"use strict";var n=r(39898),i=r(7901),a=r(71828),o=r(72597).resizeText;function s(e,t,r){var n=t.data.data,o=!t.children,s=n.i,l=a.castOption(r,s,"marker.line.color")||i.defaultLine,u=a.castOption(r,s,"marker.line.width")||0;e.style("stroke-width",u).call(i.fill,n.color).call(i.stroke,l).style("opacity",o?r.leaf.opacity:null)}e.exports={style:function(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");o(e,t,"icicle"),t.each((function(e){var t=n.select(this),r=e[0].trace;t.style("opacity",r.opacity),t.selectAll("path.surface").each((function(e){n.select(this).call(s,e,r)}))}))},styleOne:s}},17230:function(e,t,r){"use strict";for(var n=r(9012),i=r(5386).fF,a=r(1426).extendFlat,o=r(51877).colormodel,s=["rgb","rgba","rgba256","hsl","hsla"],l=[],u=[],c=0;c0||n.inbox(r-o.y0,r-(o.y0+o.h*s.dy),0)>0)){var c,f=Math.floor((t-o.x0)/s.dx),d=Math.floor(Math.abs(r-o.y0)/s.dy);if(s._hasZ?c=o.z[d][f]:s._hasSource&&(c=s._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(f,d,1,1).data),c){var h,p=o.hi||s.hoverinfo;if(p){var v=p.split("+");-1!==v.indexOf("all")&&(v=["color"]),-1!==v.indexOf("color")&&(h=!0)}var m,g=a.colormodel[s.colormodel],y=g.colormodel||s.colormodel,x=y.length,b=s._scaler(c),_=g.suffix,w=[];(s.hovertemplate||h)&&(w.push("["+[b[0]+_[0],b[1]+_[1],b[2]+_[2]].join(", ")),4===x&&w.push(", "+b[3]+_[3]),w.push("]"),w=w.join(""),e.extraText=y.toUpperCase()+": "+w),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[d])?m=s.hovertext[d][f]:Array.isArray(s.text)&&Array.isArray(s.text[d])&&(m=s.text[d][f]);var k=u.c2p(o.y0+(d+.5)*s.dy),T=o.x0+(f+.5)*s.dx,M=o.y0+(d+.5)*s.dy,A="["+c.slice(0,s.colormodel.length).join(", ")+"]";return[i.extendFlat(e,{index:[d,f],x0:l.c2p(o.x0+f*s.dx),x1:l.c2p(o.x0+(f+1)*s.dx),y0:k,y1:k,color:b,xVal:T,xLabelVal:T,yVal:M,yLabelVal:M,zLabelVal:A,text:m,hovertemplateLabels:{zLabel:A,colorLabel:w,"color[0]Label":b[0]+_[0],"color[1]Label":b[1]+_[1],"color[2]Label":b[2]+_[2],"color[3]Label":b[3]+_[3]}})]}}}},94507:function(e,t,r){"use strict";e.exports={attributes:r(17230),supplyDefaults:r(13245),calc:r(71113),plot:r(60775),style:r(12826),hoverPoints:r(28749),eventData:r(30835),moduleType:"trace",name:"image",basePlotModule:r(93612),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}},60775:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.strTranslate,o=r(77922),s=r(51877),l=i.isIOS()||i.isSafari()||i.isIE();e.exports=function(e,t,r,u){var c=t.xaxis,f=t.yaxis,d=!(l||e._context._exportedPlot);i.makeTraceGroups(u,r,"im").each((function(t){var r=n.select(this),l=t[0],u=l.trace,h=("fast"===u.zsmooth||!1===u.zsmooth&&d)&&!u._hasZ&&u._hasSource&&"linear"===c.type&&"linear"===f.type;u._realImage=h;var p,v,m,g,y,x,b=l.z,_=l.x0,w=l.y0,k=l.w,T=l.h,M=u.dx,A=u.dy;for(x=0;void 0===p&&x0;)v=c.c2p(_+x*M),x--;for(x=0;void 0===g&&x0;)y=f.c2p(w+x*A),x--;vO[0];if(I||D){var R=p+S/2,z=g+E/2;L+="transform:"+a(R+"px",z+"px")+"scale("+(I?-1:1)+","+(D?-1:1)+")"+a(-R+"px",-z+"px")+";"}}C.attr("style",L);var F=new Promise((function(e){if(u._hasZ)e();else if(u._hasSource)if(u._canvas&&u._canvas.el.width===k&&u._canvas.el.height===T&&u._canvas.source===u.source)e();else{var t=document.createElement("canvas");t.width=k,t.height=T;var r=t.getContext("2d",{willReadFrequently:!0});u._image=u._image||new Image;var n=u._image;n.onload=function(){r.drawImage(n,0,0),u._canvas={el:t,source:u.source},e()},n.setAttribute("src",u.source)}})).then((function(){var e,t;if(u._hasZ)t=N((function(e,t){return b[t][e]})),e=t.toDataURL("image/png");else if(u._hasSource)if(h)e=u.source;else{var r=u._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,k,T).data;t=N((function(e,t){var n=4*(t*k+e);return[r[n],r[n+1],r[n+2],r[n+3]]})),e=t.toDataURL("image/png")}C.attr({"xlink:href":e,height:E,width:S,x:p,y:g})}));e._promises.push(F)}function N(e){var t=document.createElement("canvas");t.width=S,t.height=E;var r,n=t.getContext("2d",{willReadFrequently:!0}),a=function(e){return i.constrain(Math.round(c.c2p(_+e*M)-p),0,S)},o=function(e){return i.constrain(Math.round(f.c2p(w+e*A)-g),0,E)},d=s.colormodel[u.colormodel],h=d.colormodel||u.colormodel,v=d.fmt;for(x=0;x0}function k(e){e.each((function(e){y.stroke(n.select(this),e.line.color)})).each((function(e){y.fill(n.select(this),e.color)})).style("stroke-width",(function(e){return e.line.width}))}function T(e,t,r){var n=e._fullLayout,i=o.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},s={letter:"x",font:n.font,noHover:!0,noTickson:!0};function l(e,t){return o.coerce(i,a,g,e,t)}return v(i,a,l,s,n),m(i,a,l,s),a}function M(e,t,r){return[Math.min(t/e.width,r/e.height),e,t+"x"+r]}function A(e,t,r,i){var a=document.createElementNS("http://www.w3.org/2000/svg","text"),o=n.select(a);return o.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(h.convertToTspans,i).call(f.font,t),f.bBox(o.node())}function S(e,t,r,n,i,a){var s="_cache"+t;e[s]&&e[s].key===i||(e[s]={key:i,value:r});var l=o.aggNums(a,null,[e[s].value,n],2);return e[s].value=l,l}e.exports=function(e,t,r,v){var m,g=e._fullLayout;w(r)&&v&&(m=v()),o.makeTraceGroups(g._indicatorlayer,t,"trace").each((function(t){var v,E,C,L,P,O=t[0].trace,I=n.select(this),D=O._hasGauge,R=O._isAngular,z=O._isBullet,F=O.domain,N={w:g._size.w*(F.x[1]-F.x[0]),h:g._size.h*(F.y[1]-F.y[0]),l:g._size.l+g._size.w*F.x[0],r:g._size.r+g._size.w*(1-F.x[1]),t:g._size.t+g._size.h*(1-F.y[1]),b:g._size.b+g._size.h*F.y[0]},B=N.l+N.w/2,j=N.t+N.h/2,U=Math.min(N.w/2,N.h),V=d.innerRadius*U,H=O.align||"center";if(E=j,D){if(R&&(v=B,E=j+U/2,C=function(e){return function(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}(e,.9*V)}),z){var q=d.bulletPadding,W=1-d.bulletNumberDomainSize+q;v=N.l+(W+(1-W)*b[H])*N.w,C=function(e){return M(e,(d.bulletNumberDomainSize-q)*N.w,N.h)}}}else v=N.l+b[H]*N.w,C=function(e){return M(e,N.w,N.h)};!function(e,t,r,i){var u,c,d,v=r[0].trace,m=i.numbersX,g=i.numbersY,k=v.align||"center",M=x[k],E=i.transitionOpts,C=i.onComplete,L=o.ensureSingle(t,"g","numbers"),P=[];v._hasNumber&&P.push("number"),v._hasDelta&&(P.push("delta"),"left"===v.delta.position&&P.reverse());var O=L.selectAll("text").data(P);function I(t,r,n,i){if(!t.match("s")||n>=0===i>=0||r(n).slice(-1).match(_)||r(i).slice(-1).match(_))return r;var a=t.slice().replace("s","f").replace(/\d+/,(function(e){return parseInt(e)-1})),o=T(e,{tickformat:a});return function(e){return Math.abs(e)<1?p.tickText(o,e).text:r(e)}}function D(){var t=T(e,{tickformat:v.number.valueformat},v._range);t.setScale(),p.prepTicks(t);var i=function(e){return p.tickText(t,e).text},o=v.number.suffix,s=v.number.prefix,l=L.select("text.number");function c(){var t="number"===typeof r[0].y?s+i(r[0].y)+o:"-";l.text(t).call(f.font,v.number.font).call(h.convertToTspans,e)}return w(E)?l.transition().duration(E.duration).ease(E.easing).each("end",(function(){c(),C&&C()})).each("interrupt",(function(){c(),C&&C()})).attrTween("text",(function(){var e=n.select(this),t=a(r[0].lastY,r[0].y);v._lastValue=r[0].y;var l=I(v.number.valueformat,i,r[0].lastY,r[0].y);return function(r){e.text(s+l(t(r))+o)}})):c(),u=A(s+i(r[0].y)+o,v.number.font,M,e),l}function R(){var t=T(e,{tickformat:v.delta.valueformat},v._range);t.setScale(),p.prepTicks(t);var i=function(e){return p.tickText(t,e).text},o=v.delta.suffix,s=v.delta.prefix,l=function(e){return v.delta.relative?e.relativeDelta:e.delta},u=function(e,t){return 0===e||"number"!==typeof e||isNaN(e)?"-":(e>0?v.delta.increasing.symbol:v.delta.decreasing.symbol)+s+t(e)+o},d=function(e){return e.delta>=0?v.delta.increasing.color:v.delta.decreasing.color};void 0===v._deltaLastValue&&(v._deltaLastValue=l(r[0]));var m=L.select("text.delta");function g(){m.text(u(l(r[0]),i)).call(y.fill,d(r[0])).call(h.convertToTspans,e)}return m.call(f.font,v.delta.font).call(y.fill,d({delta:v._deltaLastValue})),w(E)?m.transition().duration(E.duration).ease(E.easing).tween("text",(function(){var e=n.select(this),t=l(r[0]),o=v._deltaLastValue,s=I(v.delta.valueformat,i,o,t),c=a(o,t);return v._deltaLastValue=t,function(t){e.text(u(c(t),s)),e.call(y.fill,d({delta:c(t)}))}})).each("end",(function(){g(),C&&C()})).each("interrupt",(function(){g(),C&&C()})):g(),c=A(u(l(r[0]),i),v.delta.font,M,e),m}O.enter().append("text"),O.attr("text-anchor",(function(){return M})).attr("class",(function(e){return e})).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),O.exit().remove();var z,F=v.mode+v.align;if(v._hasDelta&&(z=R(),F+=v.delta.position+v.delta.font.size+v.delta.font.family+v.delta.valueformat,F+=v.delta.increasing.symbol+v.delta.decreasing.symbol,d=c),v._hasNumber&&(D(),F+=v.number.font.size+v.number.font.family+v.number.valueformat+v.number.suffix+v.number.prefix,d=u),v._hasDelta&&v._hasNumber){var N,B,j=[(u.left+u.right)/2,(u.top+u.bottom)/2],U=[(c.left+c.right)/2,(c.top+c.bottom)/2],V=.75*v.delta.font.size;"left"===v.delta.position&&(N=S(v,"deltaPos",0,-1*(u.width*b[v.align]+c.width*(1-b[v.align])+V),F,Math.min),B=j[1]-U[1],d={width:u.width+c.width+V,height:Math.max(u.height,c.height),left:c.left+N,right:u.right,top:Math.min(u.top,c.top+B),bottom:Math.max(u.bottom,c.bottom+B)}),"right"===v.delta.position&&(N=S(v,"deltaPos",0,u.width*(1-b[v.align])+c.width*b[v.align]+V,F,Math.max),B=j[1]-U[1],d={width:u.width+c.width+V,height:Math.max(u.height,c.height),left:u.left,right:c.right+N,top:Math.min(u.top,c.top+B),bottom:Math.max(u.bottom,c.bottom+B)}),"bottom"===v.delta.position&&(N=null,B=c.height,d={width:Math.max(u.width,c.width),height:u.height+c.height,left:Math.min(u.left,c.left),right:Math.max(u.right,c.right),top:u.bottom-u.height,bottom:u.bottom+c.height}),"top"===v.delta.position&&(N=null,B=u.top,d={width:Math.max(u.width,c.width),height:u.height+c.height,left:Math.min(u.left,c.left),right:Math.max(u.right,c.right),top:u.bottom-u.height-c.height,bottom:u.bottom}),z.attr({dx:N,dy:B})}(v._hasNumber||v._hasDelta)&&L.attr("transform",(function(){var e=i.numbersScaler(d);F+=e[2];var t,r=S(v,"numbersScale",1,e[0],F,Math.min);v._scaleNumbers||(r=1),t=v._isAngular?g-r*d.bottom:g-r*(d.top+d.bottom)/2,v._numbersTop=r*d.top+t;var n=d[k];"center"===k&&(n=(d.left+d.right)/2);var a=m-r*n;return a=S(v,"numbersTranslate",0,a,F,Math.max),l(a,t)+s(r)}))}(e,I,t,{numbersX:v,numbersY:E,numbersScaler:C,transitionOpts:r,onComplete:m}),D&&(L={range:O.gauge.axis.range,color:O.gauge.bgcolor,line:{color:O.gauge.bordercolor,width:0},thickness:1},P={range:O.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:O.gauge.bordercolor,width:O.gauge.borderwidth},thickness:1});var G=I.selectAll("g.angular").data(R?t:[]);G.exit().remove();var Y=I.selectAll("g.angularaxis").data(R?t:[]);Y.exit().remove(),R&&function(e,t,r,a){var o,s,f,d,h=r[0].trace,v=a.size,m=a.radius,g=a.innerRadius,y=a.gaugeBg,x=a.gaugeOutline,b=[v.l+v.w/2,v.t+v.h/2+m/2],_=a.gauge,M=a.layer,A=a.transitionOpts,S=a.onComplete,E=Math.PI/2;function C(e){var t=h.gauge.axis.range[0],r=(e-t)/(h.gauge.axis.range[1]-t)*Math.PI-E;return r<-E?-E:r>E?E:r}function L(e){return n.svg.arc().innerRadius((g+m)/2-e/2*(m-g)).outerRadius((g+m)/2+e/2*(m-g)).startAngle(-E)}function P(e){e.attr("d",(function(e){return L(e.thickness).startAngle(C(e.range[0])).endAngle(C(e.range[1]))()}))}_.enter().append("g").classed("angular",!0),_.attr("transform",l(b[0],b[1])),M.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),M.selectAll("g.xangularaxistick,path,text").remove(),(o=T(e,h.gauge.axis)).type="linear",o.range=h.gauge.axis.range,o._id="xangularaxis",o.ticklabeloverflow="allow",o.setScale();var O=function(e){return(o.range[0]-e.x)/(o.range[1]-o.range[0])*Math.PI+Math.PI},I={},D=p.makeLabelFns(o,0).labelStandoff;I.xFn=function(e){var t=O(e);return Math.cos(t)*D},I.yFn=function(e){var t=O(e),r=Math.sin(t)>0?.2:1;return-Math.sin(t)*(D+e.fontSize*r)+Math.abs(Math.cos(t))*(e.fontSize*c)},I.anchorFn=function(e){var t=O(e),r=Math.cos(t);return Math.abs(r)<.1?"middle":r>0?"start":"end"},I.heightFn=function(e,t,r){var n=O(e);return-.5*(1+Math.sin(n))*r};var R=function(e){return l(b[0]+m*Math.cos(e),b[1]-m*Math.sin(e))};f=function(e){return R(O(e))};var z=function(e){var t=O(e);return R(t)+"rotate("+-u(t)+")"};if(s=p.calcTicks(o),d=p.getTickSigns(o)[2],o.visible){d="inside"===o.ticks?-1:1;var F=(o.linewidth||1)/2;p.drawTicks(e,o,{vals:s,layer:M,path:"M"+d*F+",0h"+d*o.ticklen,transFn:z}),p.drawLabels(e,o,{vals:s,layer:M,transFn:f,labelFns:I})}var N=[y].concat(h.gauge.steps),B=_.selectAll("g.bg-arc").data(N);B.enter().append("g").classed("bg-arc",!0).append("path"),B.select("path").call(P).call(k),B.exit().remove();var j=L(h.gauge.bar.thickness),U=_.selectAll("g.value-arc").data([h.gauge.bar]);U.enter().append("g").classed("value-arc",!0).append("path");var V,H,q,W=U.select("path");w(A)?(W.transition().duration(A.duration).ease(A.easing).each("end",(function(){S&&S()})).each("interrupt",(function(){S&&S()})).attrTween("d",(V=j,H=C(r[0].lastY),q=C(r[0].y),function(){var e=i(H,q);return function(t){return V.endAngle(e(t))()}})),h._lastValue=r[0].y):W.attr("d","number"===typeof r[0].y?j.endAngle(C(r[0].y)):"M0,0Z"),W.call(k),U.exit().remove(),N=[];var G=h.gauge.threshold.value;(G||0===G)&&N.push({range:[G,G],color:h.gauge.threshold.color,line:{color:h.gauge.threshold.line.color,width:h.gauge.threshold.line.width},thickness:h.gauge.threshold.thickness});var Y=_.selectAll("g.threshold-arc").data(N);Y.enter().append("g").classed("threshold-arc",!0).append("path"),Y.select("path").call(P).call(k),Y.exit().remove();var Z=_.selectAll("g.gauge-outline").data([x]);Z.enter().append("g").classed("gauge-outline",!0).append("path"),Z.select("path").call(P).call(k),Z.exit().remove()}(e,0,t,{radius:U,innerRadius:V,gauge:G,layer:Y,size:N,gaugeBg:L,gaugeOutline:P,transitionOpts:r,onComplete:m});var Z=I.selectAll("g.bullet").data(z?t:[]);Z.exit().remove();var X=I.selectAll("g.bulletaxis").data(z?t:[]);X.exit().remove(),z&&function(e,t,r,n){var i,a,o,s,u,c=r[0].trace,f=n.gauge,h=n.layer,v=n.gaugeBg,m=n.gaugeOutline,g=n.size,x=c.domain,b=n.transitionOpts,_=n.onComplete;f.enter().append("g").classed("bullet",!0),f.attr("transform",l(g.l,g.t)),h.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),h.selectAll("g.xbulletaxistick,path,text").remove();var M=g.h,A=c.gauge.bar.thickness*M,S=x.x[0],E=x.x[0]+(x.x[1]-x.x[0])*(c._hasNumber||c._hasDelta?1-d.bulletNumberDomainSize:1);function C(e){e.attr("width",(function(e){return Math.max(0,i.c2p(e.range[1])-i.c2p(e.range[0]))})).attr("x",(function(e){return i.c2p(e.range[0])})).attr("y",(function(e){return.5*(1-e.thickness)*M})).attr("height",(function(e){return e.thickness*M}))}(i=T(e,c.gauge.axis))._id="xbulletaxis",i.domain=[S,E],i.setScale(),a=p.calcTicks(i),o=p.makeTransTickFn(i),s=p.getTickSigns(i)[2],u=g.t+g.h,i.visible&&(p.drawTicks(e,i,{vals:"inside"===i.ticks?p.clipEnds(i,a):a,layer:h,path:p.makeTickPath(i,u,s),transFn:o}),p.drawLabels(e,i,{vals:a,layer:h,transFn:o,labelFns:p.makeLabelFns(i,u)}));var L=[v].concat(c.gauge.steps),P=f.selectAll("g.bg-bullet").data(L);P.enter().append("g").classed("bg-bullet",!0).append("rect"),P.select("rect").call(C).call(k),P.exit().remove();var O=f.selectAll("g.value-bullet").data([c.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),w(b)?O.select("rect").transition().duration(b.duration).ease(b.easing).each("end",(function(){_&&_()})).each("interrupt",(function(){_&&_()})).attr("width",Math.max(0,i.c2p(Math.min(c.gauge.axis.range[1],r[0].y)))):O.select("rect").attr("width","number"===typeof r[0].y?Math.max(0,i.c2p(Math.min(c.gauge.axis.range[1],r[0].y))):0),O.exit().remove();var I=r.filter((function(){return c.gauge.threshold.value||0===c.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(c.gauge.threshold.value)).attr("x2",i.c2p(c.gauge.threshold.value)).attr("y1",(1-c.gauge.threshold.thickness)/2*M).attr("y2",(1-(1-c.gauge.threshold.thickness)/2)*M).call(y.stroke,c.gauge.threshold.line.color).style("stroke-width",c.gauge.threshold.line.width),D.exit().remove();var R=f.selectAll("g.gauge-outline").data([m]);R.enter().append("g").classed("gauge-outline",!0).append("rect"),R.select("rect").call(C).call(k),R.exit().remove()}(e,0,t,{gauge:Z,layer:X,size:N,gaugeBg:L,gaugeOutline:P,transitionOpts:r,onComplete:m});var K=I.selectAll("text.title").data(t);K.exit().remove(),K.enter().append("text").classed("title",!0),K.attr("text-anchor",(function(){return z?x.right:x[O.title.align]})).text(O.title.text).call(f.font,O.title.font).call(h.convertToTspans,e),K.attr("transform",(function(){var e,t=N.l+N.w*b[O.title.align],r=d.titlePadding,n=f.bBox(K.node());return D?(R&&(e=O.gauge.axis.visible?f.bBox(Y.node()).top-r-n.bottom:N.t+N.h/2-U/2-n.bottom-r),z&&(e=E-(n.top+n.bottom)/2,t=N.l-d.bulletPadding*N.w)):e=O._numbersTop-r-n.bottom,l(t,e)}))}))}},16249:function(e,t,r){"use strict";var n=r(50693),i=r(12663).axisHoverFormat,a=r(5386).fF,o=r(2418),s=r(9012),l=r(1426).extendFlat,u=r(30962).overrideAll,c=e.exports=u(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})},n("",{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");c.flatshading.dflt=!0,c.lighting.facenormalsepsilon.dflt=0,c.x.editType=c.y.editType=c.z.editType=c.value.editType="calc+clearAxisTypes",c.transforms=void 0},56959:function(e,t,r){"use strict";var n=r(78803),i=r(88489).processGrid,a=r(88489).filter;e.exports=function(e,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=a(t.x,t._len),t._y=a(t.y,t._len),t._z=a(t.z,t._len),t._value=a(t.value,t._len);var r=i(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;for(var o=1/0,s=-1/0,l=0;l0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function z(e,t){return null===e?t:e}function F(t,r,n){L();var i,a,o,l=[r],u=[n];if(s>=1)l=[r],u=[n];else if(s>0){var c=function(e,t){var r=e[0],n=e[1],i=e[2],a=function(e,t,r){for(var n=[],i=0;i-1?n[h]:C(p,v,g);d[h]=x>-1?x:O(p,v,g,z(t,y))}i=d[0],a=d[1],o=d[2],e._meshI.push(i),e._meshJ.push(a),e._meshK.push(o),++m}}function N(e,t,r,n){var i=e[3];in&&(i=n);for(var a=(e[3]-i)/(e[3]-t[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-a)*e[s]+a*t[s];return o}function B(e,t,r){return e>=t&&e<=r}function j(e){var t=.001*(E-S);return e>=S-t&&e<=E+t}function U(t){for(var r=[],n=0;n<4;n++){var i=t[n];r.push([e._x[i],e._y[i],e._z[i],e._value[i]])}return r}var V=3;function H(e,t,r,n,i,a){a||(a=1),r=[-1,-1,-1];var o=!1,s=[B(t[0][3],n,i),B(t[1][3],n,i),B(t[2][3],n,i)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(e,t,r){return j(t[0][3])&&j(t[1][3])&&j(t[2][3])?(F(e,t,r),!0):aMath.abs(k-A)?[M,k]:[k,A];ee(r,C[0],C[1])}}var L=[[Math.min(S,A),Math.max(S,A)],[Math.min(M,E),Math.max(M,E)]];["x","y","z"].forEach((function(r){for(var n=[],i=0;i0&&(f.push(p.id),"x"===r?d.push([p.distRatio,0,0]):"y"===r?d.push([0,p.distRatio,0]):d.push([0,0,p.distRatio]))}else c=ie(1,"x"===r?b-1:"y"===r?_-1:w-1);f.length>0&&(n[a]="x"===r?te(t,f,o,s,d,n[a]):"y"===r?re(t,f,o,s,d,n[a]):ne(t,f,o,s,d,n[a]),a++),c.length>0&&(n[a]="x"===r?K(t,c,o,s,n[a]):"y"===r?$(t,c,o,s,n[a]):J(t,c,o,s,n[a]),a++)}var v=e.caps[r];v.show&&v.fill&&(D(v.fill),n[a]="x"===r?K(t,[0,b-1],o,s,n[a]):"y"===r?$(t,[0,_-1],o,s,n[a]):J(t,[0,w-1],o,s,n[a]),a++)}})),0===m&&P(),e._meshX=n,e._meshY=i,e._meshZ=a,e._meshIntensity=o,e._Xs=g,e._Ys=y,e._Zs=x}(),e}e.exports={findNearestOnAxis:l,generateIsoMeshes:d,createIsosurfaceTrace:function(e,t){var r=e.glplot.gl,i=n({gl:r}),a=new u(e,i,t.uid);return i._trace=a,a.update(t),e.glplot.add(i),a}}},82738:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(16249),o=r(1586);function s(e,t,r,n,a){var s=a("isomin"),l=a("isomax");void 0!==l&&null!==l&&void 0!==s&&null!==s&&s>l&&(t.isomin=null,t.isomax=null);var u=a("x"),c=a("y"),f=a("z"),d=a("value");u&&u.length&&c&&c.length&&f&&f.length&&d&&d.length?(i.getComponentMethod("calendars","handleTraceDefaults")(e,t,["x","y","z"],n),a("valuehoverformat"),["x","y","z"].forEach((function(e){a(e+"hoverformat");var t="caps."+e;a(t+".show")&&a(t+".fill");var r="slices."+e;a(r+".show")&&(a(r+".fill"),a(r+".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(e){a(e)})),o(e,t,n,a,{prefix:"",cLetter:"c"}),t._length=null):t.visible=!1}e.exports={supplyDefaults:function(e,t,r,i){s(e,t,0,i,(function(r,i){return n.coerce(e,t,a,r,i)}))},supplyIsoDefaults:s}},64943:function(e,t,r){"use strict";e.exports={attributes:r(16249),supplyDefaults:r(82738).supplyDefaults,calc:r(56959),colorbar:{min:"cmin",max:"cmax"},plot:r(22674).createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:r(58547),categories:["gl3d","showLegend"],meta:{}}},2418:function(e,t,r){"use strict";var n=r(50693),i=r(12663).axisHoverFormat,a=r(5386).fF,o=r(54532),s=r(9012),l=r(1426).extendFlat;e.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},n("",{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(e,t,r){"use strict";var n=r(78803);e.exports=function(e,t){t.intensity&&n(e,t,{vals:t.intensity,containerStr:"",cLetter:"c"})}},91134:function(e,t,r){"use strict";var n=r(9330).gl_mesh3d,i=r(9330).delaunay_triangulate,a=r(9330).alpha_shape,o=r(9330).convex_hull,s=r(81697).parseColorScale,l=r(78614),u=r(21081).extractOpts,c=r(90060);function f(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var d=f.prototype;function h(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}d.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return Array.isArray(r)&&void 0!==r[t]?e.textLabel=r[t]:r&&(e.textLabel=r),!0}},d.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n,f=e.x.length,d=c(p(r.xaxis,e.x,t.dataScale[0],e.xcalendar),p(r.yaxis,e.y,t.dataScale[1],e.ycalendar),p(r.zaxis,e.z,t.dataScale[2],e.zcalendar));if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!m(e.i,f)||!m(e.j,f)||!m(e.k,f))return;n=c(v(e.i),v(e.j),v(e.k))}else n=0===e.alphahull?o(d):e.alphahull>0?a(e.alphahull,d):function(e,t){for(var r=["x","y","z"].indexOf(e),n=[],a=t.length,o=0;og):m=M>w,g=M;var A=u(w,k,T,M);A.pos=_,A.yc=(w+M)/2,A.i=b,A.dir=m?"increasing":"decreasing",A.x=A.pos,A.y=[T,k],y&&(A.orig_p=r[b]),p&&(A.tx=t.text[b]),v&&(A.htx=t.hovertext[b]),x.push(A)}else x.push({pos:_,empty:!0})}return t._extremes[l._id]=a.findExtremes(l,n.concat(d,f),{padded:!0}),x.length&&(x[0].t={labels:{open:i(e,"open:")+" ",high:i(e,"high:")+" ",low:i(e,"low:")+" ",close:i(e,"close:")+" "}}),x}e.exports={calc:function(e,t){var r=a.getFromId(e,t.xaxis),i=a.getFromId(e,t.yaxis),s=function(e,t,r){var i=r._minDiff;if(!i){var a,s=e._fullData,l=[];for(i=1/0,a=0;a"+u.labels[x]+n.hoverLabelText(s,b,l.yhoverformat):((y=i.extendFlat({},d)).y0=y.y1=_,y.yLabelVal=b,y.yLabel=u.labels[x]+n.hoverLabelText(s,b,l.yhoverformat),y.name="",f.push(y),m[b]=y)}return f}function d(e,t,r,i){var a=e.cd,o=e.ya,l=a[0].trace,f=a[0].t,d=c(e,t,r,i);if(!d)return[];var h=a[d.index],p=d.index=h.i,v=h.dir;function m(e){return f.labels[e]+n.hoverLabelText(o,l[e][p],l.yhoverformat)}var g=h.hi||l.hoverinfo,y=g.split("+"),x="all"===g,b=x||-1!==y.indexOf("y"),_=x||-1!==y.indexOf("text"),w=b?[m("open"),m("high"),m("low"),m("close")+" "+u[v]]:[];return _&&s(h,l,w),d.extraText=w.join("
"),d.y0=d.y1=o.c2p(h.yc,!0),[d]}e.exports={hoverPoints:function(e,t,r,n){return e.cd[0].trace.hoverlabel.split?f(e,t,r,n):d(e,t,r,n)},hoverSplit:f,hoverOnPoints:d}},54186:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"ohlc",basePlotModule:r(93612),categories:["cartesian","svg","showLegend"],meta:{},attributes:r(2522),supplyDefaults:r(16169),calc:r(3485).calc,plot:r(72314),style:r(53101),hoverPoints:r(66449).hoverPoints,selectPoints:r(67324)}},14555:function(e,t,r){"use strict";var n=r(73972),i=r(71828);e.exports=function(e,t,r,a){var o=r("x"),s=r("open"),l=r("high"),u=r("low"),c=r("close");if(r("hoverlabel.split"),n.getComponentMethod("calendars","handleTraceDefaults")(e,t,["x"],a),s&&l&&u&&c){var f=Math.min(s.length,l.length,u.length,c.length);return o&&(f=Math.min(f,i.minRowLength(o))),t._length=f,f}}},72314:function(e,t,r){"use strict";var n=r(39898),i=r(71828);e.exports=function(e,t,r,a){var o=t.yaxis,s=t.xaxis,l=!!s.rangebreaks;i.makeTraceGroups(a,r,"trace ohlc").each((function(e){var t=n.select(this),r=e[0],a=r.t;if(!0!==r.trace.visible||a.empty)t.remove();else{var u=a.tickLen,c=t.selectAll("path").data(i.identity);c.enter().append("path"),c.exit().remove(),c.attr("d",(function(e){if(e.empty)return"M0,0Z";var t=s.c2p(e.pos-u,!0),r=s.c2p(e.pos+u,!0),n=l?(t+r)/2:s.c2p(e.pos,!0);return"M"+t+","+o.c2p(e.o,!0)+"H"+n+"M"+n+","+o.c2p(e.h,!0)+"V"+o.c2p(e.l,!0)+"M"+r+","+o.c2p(e.c,!0)+"H"+n}))}}))}},67324:function(e){"use strict";e.exports=function(e,t){var r,n=e.cd,i=e.xaxis,a=e.yaxis,o=[],s=n[0].t.bPos||0;if(!1===t)for(r=0;r=e.length)return!1;if(void 0!==t[e[r]])return!1;t[e[r]]=!0}return!0}(r))for(t=0;t0;u&&(o="array");var c=r("categoryorder",o);"array"===c?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),u||"array"!==c||(t.categoryorder="trace")}}e.exports=function(e,t,r,f){function d(r,i){return n.coerce(e,t,l,r,i)}var h=s(e,t,{name:"dimensions",handleItemDefaults:c}),p=function(e,t,r,o,s){s("line.shape"),s("line.hovertemplate");var l=s("line.color",o.colorway[0]);if(i(e,"line")&&n.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(e,t,o,s,{prefix:"line.",cLetter:"c"}),l.length;t.line.color=r}return 1/0}(e,t,r,f,d);o(t,f,d),Array.isArray(h)&&h.length||(t.visible=!1),u(t,h,"values",p),d("hoveron"),d("hovertemplate"),d("arrangement"),d("bundlecolors"),d("sortpaths"),d("counts");var v={family:f.font.family,size:Math.round(f.font.size),color:f.font.color};n.coerceFont(d,"labelfont",v);var m={family:f.font.family,size:Math.round(f.font.size/1.2),color:f.font.color};n.coerceFont(d,"tickfont",m)}},94873:function(e,t,r){"use strict";e.exports={attributes:r(99506),supplyDefaults:r(14647),calc:r(28699),plot:r(45784),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:r(27677),categories:["noOpacity"],meta:{}}},45460:function(e,t,r){"use strict";var n=r(39898),i=r(81684).k4,a=r(72391),o=r(30211),s=r(71828),l=s.strTranslate,u=r(91424),c=r(84267),f=r(63893);function d(e,t,r,i){var a=t._context.staticPlot,o=e.map(F.bind(0,t,r)),c=i.selectAll("g.parcatslayer").data([null]);c.enter().append("g").attr("class","parcatslayer").style("pointer-events",a?"none":"all");var d=c.selectAll("g.trace.parcats").data(o,h),y=d.enter().append("g").attr("class","trace parcats");d.attr("transform",(function(e){return l(e.x,e.y)})),y.append("g").attr("class","paths");var x=d.select("g.paths").selectAll("path.path").data((function(e){return e.paths}),h);x.attr("fill",(function(e){return e.model.color}));var w=x.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",(function(e){return e.model.color})).attr("fill-opacity",0);_(w),x.attr("d",(function(e){return e.svgD})),w.empty()||x.sort(v),x.exit().remove(),x.on("mouseover",m).on("mouseout",g).on("click",b),y.append("g").attr("class","dimensions");var M=d.select("g.dimensions").selectAll("g.dimension").data((function(e){return e.dimensions}),h);M.enter().append("g").attr("class","dimension"),M.attr("transform",(function(e){return l(e.x,0)})),M.exit().remove();var A=M.selectAll("g.category").data((function(e){return e.categories}),h),S=A.enter().append("g").attr("class","category");A.attr("transform",(function(e){return l(0,e.y)})),S.append("rect").attr("class","catrect").attr("pointer-events","none"),A.select("rect.catrect").attr("fill","none").attr("width",(function(e){return e.width})).attr("height",(function(e){return e.height})),k(S);var E=A.selectAll("rect.bandrect").data((function(e){return e.bands}),h);E.each((function(){s.raiseToTop(this)})),E.attr("fill",(function(e){return e.color}));var D=E.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",(function(e){return e.color})).attr("fill-opacity",0);E.attr("fill",(function(e){return e.color})).attr("width",(function(e){return e.width})).attr("height",(function(e){return e.height})).attr("y",(function(e){return e.y})).attr("cursor",(function(e){return"fixed"===e.parcatsViewModel.arrangement?"default":"perpendicular"===e.parcatsViewModel.arrangement?"ns-resize":"move"})),T(D),E.exit().remove(),S.append("text").attr("class","catlabel").attr("pointer-events","none");var R=t._fullLayout.paper_bgcolor;A.select("text.catlabel").attr("text-anchor",(function(e){return p(e)?"start":"end"})).attr("alignment-baseline","middle").style("text-shadow",f.makeTextShadow(R)).style("fill","rgb(0, 0, 0)").attr("x",(function(e){return p(e)?e.width+5:-5})).attr("y",(function(e){return e.height/2})).text((function(e){return e.model.categoryLabel})).each((function(e){u.font(n.select(this),e.parcatsViewModel.categorylabelfont),f.convertToTspans(n.select(this),t)})),S.append("text").attr("class","dimlabel"),A.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",(function(e){return"fixed"===e.parcatsViewModel.arrangement?"default":"ew-resize"})).attr("x",(function(e){return e.width/2})).attr("y",-5).text((function(e,t){return 0===t?e.parcatsViewModel.model.dimensions[e.model.dimensionInd].dimensionLabel:null})).each((function(e){u.font(n.select(this),e.parcatsViewModel.labelfont)})),A.selectAll("rect.bandrect").on("mouseover",C).on("mouseout",L),A.exit().remove(),M.call(n.behavior.drag().origin((function(e){return{x:e.x,y:0}})).on("dragstart",P).on("drag",O).on("dragend",I)),d.each((function(e){e.traceSelection=n.select(this),e.pathSelection=n.select(this).selectAll("g.paths").selectAll("path.path"),e.dimensionSelection=n.select(this).selectAll("g.dimensions").selectAll("g.dimension")})),d.exit().remove()}function h(e){return e.key}function p(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function v(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),C=n.mouse(f)[0];o.loneHover({trace:d,x:b-p.left+v.left,y:_-p.top+v.top,text:E,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:k,idealAlign:C1&&d.displayInd===f.dimensions.length-1?(i=u.left,a="left"):(i=u.left+u.width,a="right");var v=c.model.count,m=c.model.categoryLabel,g=v/c.parcatsViewModel.model.count,y={countLabel:v,categoryLabel:m,probabilityLabel:g.toFixed(3)},x=[];-1!==c.parcatsViewModel.hoverinfoItems.indexOf("count")&&x.push(["Count:",y.countLabel].join(" ")),-1!==c.parcatsViewModel.hoverinfoItems.indexOf("probability")&&x.push(["P("+y.categoryLabel+"):",y.probabilityLabel].join(" "));var b=x.join("
");return{trace:h,x:o*(i-t.left),y:s*(p-t.top),text:b,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:a,hovertemplate:h.hovertemplate,hovertemplateLabels:y,eventData:[{data:h._input,fullData:h,count:v,category:m,probability:g}]}}function C(e){if(!e.parcatsViewModel.dragDimension&&-1===e.parcatsViewModel.hoverinfoItems.indexOf("skip")){if(n.mouse(this)[1]<-1)return;var t,r=e.parcatsViewModel.graphDiv,i=r._fullLayout,a=i._paperdiv.node().getBoundingClientRect(),l=e.parcatsViewModel.hoveron,u=this;"color"===l?(function(e){var t=n.select(e).datum(),r=M(t);w(r),r.each((function(){s.raiseToTop(this)})),n.select(e.parentNode).selectAll("rect.bandrect").filter((function(e){return e.color===t.color})).each((function(){s.raiseToTop(this),n.select(this).attr("stroke","black").attr("stroke-width",1.5)}))}(u),S(u,"plotly_hover",n.event)):(function(e){n.select(e.parentNode).selectAll("rect.bandrect").each((function(e){var t=M(e);w(t),t.each((function(){s.raiseToTop(this)}))})),n.select(e.parentNode).select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(u),A(u,"plotly_hover",n.event)),-1===e.parcatsViewModel.hoverinfoItems.indexOf("none")&&("category"===l?t=E(r,a,u):"color"===l?t=function(e,t,r){e._fullLayout._calcInverseTransform(e);var i,a,o=e._fullLayout._invScaleX,s=e._fullLayout._invScaleY,l=r.getBoundingClientRect(),u=n.select(r).datum(),f=u.categoryViewModel,d=f.parcatsViewModel,h=d.model.dimensions[f.model.dimensionInd],p=d.trace,v=l.y+l.height/2;d.dimensions.length>1&&h.displayInd===d.dimensions.length-1?(i=l.left,a="left"):(i=l.left+l.width,a="right");var m=f.model.categoryLabel,g=u.parcatsViewModel.model.count,y=0;u.categoryViewModel.bands.forEach((function(e){e.color===u.color&&(y+=e.count)}));var x=f.model.count,b=0;d.pathSelection.each((function(e){e.model.color===u.color&&(b+=e.model.count)}));var _=y/g,w=y/b,k=y/x,T={countLabel:g,categoryLabel:m,probabilityLabel:_.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 "+m+"): "+T.probabilityLabel),M.push("P("+m+" | color): "+w.toFixed(3)),M.push("P(color | "+m+"): "+k.toFixed(3)));var A=M.join("
"),S=c.mostReadable(u.color,["black","white"]);return{trace:p,x:o*(i-t.left),y:s*(v-t.top),text:A,color:u.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:m,count:g,probability:_,categorycount:x,colorcount:b,bandcolorcount:y}]}}(r,a,u):"dimension"===l&&(t=function(e,t,r){var i=[];return n.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each((function(){i.push(E(e,t,this))})),i}(r,a,u)),t&&o.loneHover(t,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:r}))}}function L(e){var t=e.parcatsViewModel;t.dragDimension||(_(t.pathSelection),k(t.dimensionSelection.selectAll("g.category")),T(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),o.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(v),-1!==t.hoverinfoItems.indexOf("skip"))||("color"===e.parcatsViewModel.hoveron?S(this,"plotly_unhover",n.event):A(this,"plotly_unhover",n.event))}function P(e){"fixed"!==e.parcatsViewModel.arrangement&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map((function(e){return e.displayInd})),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,n.select(this).selectAll("g.category").select("rect.catrect").each((function(t){var r=n.mouse(this)[0],i=n.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=i&&i<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map((function(e){return e.displayInd})),t.model.dragY=t.y,s.raiseToTop(this.parentNode),n.select(this.parentNode).selectAll("rect.bandrect").each((function(t){t.yf.y+f.height/2&&(o.model.displayInd=f.model.displayInd,f.model.displayInd=l),e.dragCategoryDisplayInd=o.model.displayInd}if(null===e.dragCategoryDisplayInd||"freeform"===e.parcatsViewModel.arrangement){a.model.dragX=n.event.x;var d=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[i];void 0!==d&&a.model.dragXh.x&&(a.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=a.model.displayInd}j(e.parcatsViewModel),B(e.parcatsViewModel),z(e.parcatsViewModel),R(e.parcatsViewModel)}}function I(e){if("fixed"!==e.parcatsViewModel.arrangement&&null!==e.dragDimensionDisplayInd){n.select(this).selectAll("text").attr("font-weight","normal");var t={},r=D(e.parcatsViewModel),i=e.parcatsViewModel.model.dimensions.map((function(e){return e.displayInd})),o=e.initialDragDimensionDisplayInds.some((function(e,t){return e!==i[t]}));o&&i.forEach((function(r,n){var i=e.parcatsViewModel.model.dimensions[n].containerInd;t["dimensions["+i+"].displayindex"]=r}));var s=!1;if(null!==e.dragCategoryDisplayInd){var l=e.model.categories.map((function(e){return e.displayInd}));if(s=e.initialDragCategoryDisplayInds.some((function(e,t){return e!==l[t]}))){var u=e.model.categories.slice().sort((function(e,t){return e.displayInd-t.displayInd})),c=u.map((function(e){return e.categoryValue})),f=u.map((function(e){return e.categoryLabel}));t["dimensions["+e.model.containerInd+"].categoryarray"]=[c],t["dimensions["+e.model.containerInd+"].ticktext"]=[f],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}-1===e.parcatsViewModel.hoverinfoItems.indexOf("skip")&&!e.dragHasMoved&&e.potentialClickBand&&("color"===e.parcatsViewModel.hoveron?S(e.potentialClickBand,"plotly_click",n.event.sourceEvent):A(e.potentialClickBand,"plotly_click",n.event.sourceEvent)),e.model.dragX=null,null!==e.dragCategoryDisplayInd&&(e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd].model.dragY=null,e.dragCategoryDisplayInd=null),e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,j(e.parcatsViewModel),B(e.parcatsViewModel),n.transition().duration(300).ease("cubic-in-out").each((function(){z(e.parcatsViewModel,!0),R(e.parcatsViewModel,!0)})).each("end",(function(){(o||s)&&a.restyle(e.parcatsViewModel.graphDiv,t,[r])}))}}function D(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;s--)c+="C"+u[s]+","+(t[s+1]+n)+" "+l[s]+","+(t[s]+n)+" "+(e[s]+r[s])+","+(t[s]+n),c+="l-"+r[s]+",0 ";return c+="Z"}function B(e){var t=e.dimensions,r=e.model,n=t.map((function(e){return e.categories.map((function(e){return e.y}))})),i=e.model.dimensions.map((function(e){return e.categories.map((function(e){return e.displayInd}))})),a=e.model.dimensions.map((function(e){return e.displayInd})),o=e.dimensions.map((function(e){return e.model.dimensionInd})),s=t.map((function(e){return e.x})),l=t.map((function(e){return e.width})),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(e){var t=e.categoryInds.map((function(e,t){return i[t][e]}));return o.map((function(e){return t[e]}))}u.sort((function(t,r){var n=f(t),i=f(r);return"backward"===e.sortpaths&&(n.reverse(),i.reverse()),n.push(t.valueInds[0]),i.push(r.valueInds[0]),e.bundlecolors&&(n.unshift(t.rawColor),i.unshift(r.rawColor)),ni?1:0}));for(var d=new Array(u.length),h=t[0].model.count,p=t[0].categories.map((function(e){return e.height})).reduce((function(e,t){return e+t})),v=0;v0?p*(g.count/h):0;for(var y,x=new Array(n.length),b=0;b1?(e.width-80-16)/(n-1):0)*i;var a,o,s,l,u,c=[],f=e.model.maxCats,d=t.categories.length,h=t.count,p=e.height-8*(f-1),v=8*(f-d)/2,m=t.categories.map((function(e){return{displayInd:e.displayInd,categoryInd:e.categoryInd}}));for(m.sort((function(e,t){return e.displayInd-t.displayInd})),u=0;u0?o.count/h*p:0,s={key:o.valueInds[0],model:o,width:16,height:a,y:null!==o.dragY?o.dragY:v,bands:[],parcatsViewModel:e},v=v+a+8,c.push(s);return{key:t.dimensionInd,x:null!==t.dragX?t.dragX:r,y:0,width:16,model:t,categories:c,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}e.exports=function(e,t,r,n){d(r,e,n,t)}},45784:function(e,t,r){"use strict";var n=r(45460);e.exports=function(e,t,r,i){var a=e._fullLayout,o=a._paper,s=a._size;n(e,o,t,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},r,i)}},73362:function(e,t,r){"use strict";var n=r(50693),i=r(13838),a=r(41940),o=r(27670).Y,s=r(1426).extendFlat,l=r(44467).templatedArray;e.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"},n("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(e,t,r){"use strict";var n=r(25706),i=r(39898),a=r(28984).keyFun,o=r(28984).repeat,s=r(71828).sorterAsc,l=r(71828).strTranslate,u=n.bar.snapRatio;function c(e,t){return e*(1-u)+t*u}var f=n.bar.snapClose;function d(e,t){return e*(1-f)+t*f}function h(e,t,r,n){if(function(e,t){for(var r=0;r=t[r][0]&&e<=t[r][1])return!0;return!1}(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var l=t[a],u=l,f=a;i*ft){d=r;break}}if(a=c,isNaN(a)&&(a=isNaN(f)||isNaN(d)?isNaN(f)?d:f:t-u[f][1]e[1]+r||t=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}(p,t);v&&(o.interval=l[a],o.intervalPix=p,o.region=v)}}if(e.ordinal&&!o.region){var m=e.unitTickvals,y=e.unitToPaddedPx.invert(t);for(r=0;r=x[0]&&y<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function w(e,t){i.event.sourceEvent.stopPropagation();var r=t.height-i.mouse(e)[1]-2*n.verticalPadding,a=t.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[r-a.grabPoint,r+a.barLength-a.grabPoint].map(t.unitToPaddedPx.invert):a.newExtent=[a.startExtent,t.unitToPaddedPx.invert(r)].sort(s),t.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(t),b(e.parentNode)}function k(e,t){var r=_(t,t.height-i.mouse(e)[1]-2*n.verticalPadding),a="crosshair";r.clickableOrdinalRange?a="pointer":r.region&&(a=r.region+"-resize"),i.select(document.body).style("cursor",a)}function T(e){e.on("mousemove",(function(e){i.event.preventDefault(),e.parent.inBrushDrag||k(this,e)})).on("mouseleave",(function(e){e.parent.inBrushDrag||y()})).call(i.behavior.drag().on("dragstart",(function(e){!function(e,t){i.event.sourceEvent.stopPropagation();var r=t.height-i.mouse(e)[1]-2*n.verticalPadding,a=t.unitToPaddedPx.invert(r),o=t.brush,s=_(t,r),l=s.interval,u=o.svgBrush;if(u.wasDragged=!1,u.grabbingBar="ns"===s.region,u.grabbingBar){var c=l.map(t.unitToPaddedPx);u.grabPoint=r-c[0]-n.verticalPadding,u.barLength=c[1]-c[0]}u.clickableOrdinalRange=s.clickableOrdinalRange,u.stayingIntervals=t.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(u.stayingIntervals=u.stayingIntervals.filter((function(e){return e[0]!==l[0]&&e[1]!==l[1]}))),u.startExtent=s.region?l["s"===s.region?1:0]:a,t.parent.inBrushDrag=!0,u.brushStartCallback()}(this,e)})).on("drag",(function(e){w(this,e)})).on("dragend",(function(e){!function(e,t){var r=t.brush,n=r.filter,a=r.svgBrush;a._dragging||(k(e,t),w(e,t),t.brush.svgBrush.wasDragged=!1),a._dragging=!1,i.event.sourceEvent.stopPropagation();var o=a.grabbingBar;if(a.grabbingBar=!1,a.grabLocation=void 0,t.parent.inBrushDrag=!1,y(),!a.wasDragged)return a.wasDragged=void 0,a.clickableOrdinalRange?r.filterSpecified&&t.multiselect?a.extent.push(a.clickableOrdinalRange):(a.extent=[a.clickableOrdinalRange],r.filterSpecified=!0):o?(a.extent=a.stayingIntervals,0===a.extent.length&&A(r)):A(r),a.brushCallback(t),b(e.parentNode),void a.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var l=t.unitTickvals;l[l.length-1]a.newExtent[0];a.extent=a.stayingIntervals.concat(u?[a.newExtent]:[]),a.extent.length||A(r),a.brushCallback(t),u?b(e.parentNode,s):(s(),b(e.parentNode))}else s();a.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}(this,e)})))}function M(e,t){return e[0]-t[0]}function A(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function S(e){for(var t,r=e.slice(),n=[],i=r.shift();i;){for(t=i.slice();(i=r.shift())&&i[0]<=t[1];)t[1]=Math.max(t[1],i[1]);n.push(t)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}e.exports={makeBrush:function(e,t,r,n,i,a){var o,l=function(){var e,t,r=[];return{set:function(n){1===(r=n.map((function(e){return e.slice().sort(s)})).sort(M)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),e=S(r),t=r.reduce((function(e,t){return[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}),[1/0,-1/0])},get:function(){return r.slice()},getConsolidated:function(){return e},getBounds:function(){return t}}}();return l.set(r),{filter:l,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:(o=i,function(e){var t=e.brush,r=function(e){return e.svgBrush.extent.map((function(e){return e.slice()}))}(t),n=r.slice();t.filter.set(n),o()}),brushEndCallback:a}}},ensureAxisBrush:function(e,t,r){var i=e.selectAll("."+n.cn.axisBrush).data(o,a);i.enter().append("g").classed(n.cn.axisBrush,!0),function(e,t,r){var i=r._context.staticPlot,a=e.selectAll(".background").data(o);a.enter().append("rect").classed("background",!0).call(p).call(v).style("pointer-events",i?"none":"auto").attr("transform",l(0,n.verticalPadding)),a.call(T).attr("height",(function(e){return e.height-n.verticalPadding}));var s=e.selectAll(".highlight-shadow").data(o);s.enter().append("line").classed("highlight-shadow",!0).attr("x",-n.bar.width/2).attr("stroke-width",n.bar.width+n.bar.strokeWidth).attr("stroke",t).attr("opacity",n.bar.strokeOpacity).attr("stroke-linecap","butt"),s.attr("y1",(function(e){return e.height})).call(x);var u=e.selectAll(".highlight").data(o);u.enter().append("line").classed("highlight",!0).attr("x",-n.bar.width/2).attr("stroke-width",n.bar.width-n.bar.strokeWidth).attr("stroke",n.bar.fillColor).attr("opacity",n.bar.fillOpacity).attr("stroke-linecap","butt"),u.attr("y1",(function(e){return e.height})).call(x)}(i,t,r)},cleanRanges:function(e,t){if(Array.isArray(e[0])?(e=e.map((function(e){return e.sort(s)})),e=t.multiselect?S(e.sort(M)):[e[0]]):e=[e.sort(s)],t.tickvals){var r=t.tickvals.slice().sort(s);if(!(e=e.map((function(e){var t=[h(0,r,e[0],[]),h(1,r,e[1],[])];if(t[1]>t[0])return t})).filter((function(e){return e}))).length)return}return e.length>1?e:e[0]}}},71791:function(e,t,r){"use strict";e.exports={attributes:r(73362),supplyDefaults:r(3633),calc:r(24639),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:r(49351),categories:["gl","regl","noOpacity","noHover"],meta:{}}},49351:function(e,t,r){"use strict";var n=r(39898),i=r(27659).a0,a=r(21341),o=r(77922);t.name="parcoords",t.plot=function(e){var t=i(e.calcdata,"parcoords")[0];t.length&&a(e,t)},t.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())},t.toSVG=function(e){var t=e._fullLayout._glimages,r=n.select(e).selectAll(".svg-container");r.filter((function(e,t){return t===r.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var e=this,r=e.toDataURL("image/png");t.append("svg:image").attr({xmlns:o.svg,"xlink:href":r,preserveAspectRatio:"none",x:0,y:0,width:e.style.width,height:e.style.height})})),window.setTimeout((function(){n.selectAll("#filterBarPattern").attr("id","filterBarPattern")}),60)}},24639:function(e,t,r){"use strict";var n=r(71828).isArrayOrTypedArray,i=r(21081),a=r(28984).wrap;e.exports=function(e,t){var r,o;return i.hasColorscale(t,"line")&&n(t.line.color)?(r=t.line.color,o=i.extractOpts(t.line).colorscale,i.calc(e,t,{vals:r,containerStr:"line",cLetter:"c"})):(r=function(e){for(var t=new Array(e),r=0;rf&&(n.log("parcoords traces support up to "+f+" dimensions at the moment"),p.splice(f));var v=s(e,t,{name:"dimensions",layout:l,handleItemDefaults:h}),m=function(e,t,r,o,s){var l=s("line.color",r);if(i(e,"line")&&n.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(e,t,o,s,{prefix:"line.",cLetter:"c"}),l.length;t.line.color=r}return 1/0}(e,t,r,l,c);o(t,l,c),Array.isArray(v)&&v.length||(t.visible=!1),d(t,v,"values",m);var g={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};n.coerceFont(c,"labelfont",g),n.coerceFont(c,"tickfont",g),n.coerceFont(c,"rangefont",g),c("labelangle"),c("labelside"),c("unselected.line.color"),c("unselected.line.opacity")}},1602:function(e,t,r){"use strict";var n=r(71828).isTypedArray;t.convertTypedArray=function(e){return n(e)?Array.prototype.slice.call(e):e},t.isOrdinal=function(e){return!!e.tickvals},t.isVisible=function(e){return e.visible||!("visible"in e)}},67618:function(e,t,r){"use strict";var n=r(71791);n.plot=r(21341),e.exports=n},83398:function(e,t,r){"use strict";var n=r(56068),i=n(["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=n(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n gl_FragColor = fragColor;\n}\n"]),o=r(25706).maxDimensionCount,s=r(71828),l=1e-6,u=2048,c=new Uint8Array(4),f=new Uint8Array(4),d={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function h(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function p(e,t,r,n,i,a){var o=a.key;r.drawCompleted||(function(e){e.read({x:0,y:0,width:1,height:1,data:c})}(e),r.drawCompleted=!0),function s(l){var u=Math.min(n,i-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),r.clearOnly||(a.count=2*u,a.offset=2*l*n,t(a),l*n+u>>8*t)%256/255}function g(e,t,r){for(var n=new Array(8*t),i=0,a=0;af&&(f=e[i].dim1.canvasX,o=i);0===s&&h(M,0,0,r.canvasWidth,r.canvasHeight);var d=function(e){var t,r,n,i=[[],[]];for(n=0;n<64;n++){var a=!e&&no._length&&(S=S.slice(0,o._length));var C,L=o.tickvals;function P(e,t){return{val:e,text:C[t]}}function O(e,t){return e.val-t.val}if(Array.isArray(L)&&L.length){C=o.ticktext,Array.isArray(C)&&C.length?C.length>L.length?C=C.slice(0,L.length):L.length>C.length&&(L=L.slice(0,C.length)):C=L.map(a(o.tickformat));for(var I=1;I=r||l>=i)return;var u=e.lineLayer.readPixel(s,i-1-l),c=0!==u[3],f=c?u[2]+256*(u[1]+256*u[0]):null,d={x:s,y:l,clientX:t.clientX,clientY:t.clientY,dataIndex:e.model.key,curveNumber:f};f!==F&&(c?a.hover(d):a.unhover&&a.unhover(d),F=f)}})),z.style("opacity",(function(e){return e.pick?0:1})),h.style("background","rgba(255, 255, 255, 0)");var N=h.selectAll("."+y.cn.parcoords).data(S,p);N.exit().remove(),N.enter().append("g").classed(y.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),N.attr("transform",(function(e){return u(e.model.translateX,e.model.translateY)}));var B=N.selectAll("."+y.cn.parcoordsControlView).data(v,p);B.enter().append("g").classed(y.cn.parcoordsControlView,!0),B.attr("transform",(function(e){return u(e.model.pad.l,e.model.pad.t)}));var j=B.selectAll("."+y.cn.yAxis).data((function(e){return e.dimensions}),p);j.enter().append("g").classed(y.cn.yAxis,!0),B.each((function(e){I(j,e,k)})),z.each((function(e){if(e.viewModel){!e.lineLayer||a?e.lineLayer=b(this,e):e.lineLayer.update(e),(e.key||0===e.key)&&(e.viewModel[e.key]=e.lineLayer);var t=!e.context||a;e.lineLayer.render(e.viewModel.panels,t)}})),j.attr("transform",(function(e){return u(e.xScale(e.xIndex),0)})),j.call(n.behavior.drag().origin((function(e){return e})).on("drag",(function(e){var t=e.parent;A.linePickActive(!1),e.x=Math.max(-y.overdrag,Math.min(e.model.width+y.overdrag,n.event.x)),e.canvasX=e.x*e.model.canvasPixelRatio,j.sort((function(e,t){return e.x-t.x})).each((function(t,r){t.xIndex=r,t.x=e===t?t.x:t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio})),I(j,t,k),j.filter((function(t){return 0!==Math.abs(e.xIndex-t.xIndex)})).attr("transform",(function(e){return u(e.xScale(e.xIndex),0)})),n.select(this).attr("transform",u(e.x,0)),j.each((function(r,n,i){i===e.parent.key&&(t.dimensions[n]=r)})),t.contextLayer&&t.contextLayer.render(t.panels,!1,!E(t)),t.focusLayer.render&&t.focusLayer.render(t.panels)})).on("dragend",(function(e){var t=e.parent;e.x=e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio,I(j,t,k),n.select(this).attr("transform",(function(e){return u(e.x,0)})),t.contextLayer&&t.contextLayer.render(t.panels,!1,!E(t)),t.focusLayer&&t.focusLayer.render(t.panels),t.pickLayer&&t.pickLayer.render(t.panels,!0),A.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(t.key,t.dimensions.map((function(e){return e.crossfilterDimensionIndex})))}))),j.exit().remove();var U=j.selectAll("."+y.cn.axisOverlays).data(v,p);U.enter().append("g").classed(y.cn.axisOverlays,!0),U.selectAll("."+y.cn.axis).remove();var V=U.selectAll("."+y.cn.axis).data(v,p);V.enter().append("g").classed(y.cn.axis,!0),V.each((function(e){var t=e.model.height/e.model.tickDistance,r=e.domainScale,i=r.domain();n.select(this).call(n.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(t,e.tickFormat).tickValues(e.ordinal?i:null).tickFormat((function(t){return g.isOrdinal(e)?t:D(e.model.dimensions[e.visibleIndex],t)})).scale(r)),f.font(V.selectAll("text"),e.model.tickFont)})),V.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),V.selectAll("text").style("text-shadow",c.makeTextShadow(M)).style("cursor","default");var H=U.selectAll("."+y.cn.axisHeading).data(v,p);H.enter().append("g").classed(y.cn.axisHeading,!0);var q=H.selectAll("."+y.cn.axisTitle).data(v,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(e){return e.label})).each((function(t){var r=n.select(this);f.font(r,t.model.labelFont),c.convertToTspans(r,e)})).attr("transform",(function(e){var t=O(e.model.labelAngle,e.model.labelSide),r=y.axisTitleOffset;return(t.dir>0?"":u(0,2*r+e.model.height))+l(t.degrees)+u(-r*t.dx,-r*t.dy)})).attr("text-anchor",(function(e){var t=O(e.model.labelAngle,e.model.labelSide);return 2*Math.abs(t.dx)>Math.abs(t.dy)?t.dir*t.dx<0?"start":"end":"middle"}));var W=U.selectAll("."+y.cn.axisExtent).data(v,p);W.enter().append("g").classed(y.cn.axisExtent,!0);var G=W.selectAll("."+y.cn.axisExtentTop).data(v,p);G.enter().append("g").classed(y.cn.axisExtentTop,!0),G.attr("transform",u(0,-y.axisExtentOffset));var Y=G.selectAll("."+y.cn.axisExtentTopText).data(v,p);Y.enter().append("text").classed(y.cn.axisExtentTopText,!0).call(P),Y.text((function(e){return R(e,!0)})).each((function(e){f.font(n.select(this),e.model.rangeFont)}));var Z=W.selectAll("."+y.cn.axisExtentBottom).data(v,p);Z.enter().append("g").classed(y.cn.axisExtentBottom,!0),Z.attr("transform",(function(e){return u(0,e.model.height+y.axisExtentOffset)}));var X=Z.selectAll("."+y.cn.axisExtentBottomText).data(v,p);X.enter().append("text").classed(y.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(P),X.text((function(e){return R(e,!1)})).each((function(e){f.font(n.select(this),e.model.rangeFont)})),x.ensureAxisBrush(U,M,e)}},21341:function(e,t,r){"use strict";var n=r(17171),i=r(79749),a=r(1602).isVisible,o={};function s(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return-1===i&&(i+=t.length),i}(e.exports=function(e,t){var r=e._fullLayout;if(i(e,[],o)){var l={},u={},c={},f={},d=r._size;t.forEach((function(t,r){var n=t[0].trace;c[r]=n.index;var i=f[r]=n._fullInput.index;l[r]=e.data[i].dimensions,u[r]=e.data[i].dimensions.slice()})),n(e,t,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{filterChanged:function(t,n,i){var a=u[t][n],o=i.map((function(e){return e.slice()})),s="dimensions["+n+"].constraintrange",l=r._tracePreGUI[e._fullData[c[t]]._fullInput.uid];if(void 0===l[s]){var d=a.constraintrange;l[s]=d||null}var h=e._fullData[c[t]].dimensions[n];o.length?(1===o.length&&(o=o[0]),a.constraintrange=o,h.constraintrange=o.slice(),o=[o]):(delete a.constraintrange,delete h.constraintrange,o=null);var p={};p[s]=o,e.emit("plotly_restyle",[p,[f[t]]])},hover:function(t){e.emit("plotly_hover",t)},unhover:function(t){e.emit("plotly_unhover",t)},axesMoved:function(t,r){var n=function(e,t){return function(r,n){return s(e,t,r)-s(e,t,n)}}(r,u[t].filter(a));l[t].sort(n),u[t].filter((function(e){return!a(e)})).sort((function(e){return u[t].indexOf(e)})).forEach((function(e){l[t].splice(l[t].indexOf(e),1),l[t].splice(u[t].indexOf(e),0,e)})),e.emit("plotly_restyle",[{dimensions:[l[t]]},[f[t]]])}})}}).reglPrecompiled=o},34e3:function(e,t,r){"use strict";var n=r(9012),i=r(27670).Y,a=r(41940),o=r(22399),s=r(5386).fF,l=r(5386).si,u=r(1426).extendFlat,c=a({editType:"plot",arrayOk:!0,colorEditType:"plot"});e.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:u({},n.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:u({},c,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:u({},c,{}),outsidetextfont:u({},c,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:u({},c,{}),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:u({},c,{}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc"}}}},13584:function(e,t,r){"use strict";var n=r(74875);t.name="pie",t.plot=function(e,r,i,a){n.plotBasePlot(t.name,e,r,i,a)},t.clean=function(e,r,i,a){n.cleanBasePlot(t.name,e,r,i,a)}},32354:function(e,t,r){"use strict";var n=r(92770),i=r(84267),a=r(7901),o={};function s(e){return function(t,r){return!!t&&!!(t=i(t)).isValid()&&(t=a.addOpacity(t,t.getAlpha()),e[r]||(e[r]=t),t)}}function l(e,t){var r,n=JSON.stringify(e),a=t[n];if(!a){for(a=e.slice(),r=0;r=0})),("funnelarea"===t.type?g:t.sort)&&a.sort((function(e,t){return t.v-e.v})),a[0]&&(a[0].vTotal=m),a},crossTraceCalc:function(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],s=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=l(a,o));for(var u=0,c=0;c0){s=!0;break}}s||(o=0)}return{hasLabels:r,hasValues:a,len:o}}e.exports={handleLabelsAndValues:l,supplyDefaults:function(e,t,r,n){function u(r,n){return i.coerce(e,t,a,r,n)}var c=l(u("labels"),u("values")),f=c.len;if(t._hasLabels=c.hasLabels,t._hasValues=c.hasValues,!t._hasLabels&&t._hasValues&&(u("label0"),u("dlabel")),f){t._length=f,u("marker.line.width")&&u("marker.line.color"),u("marker.colors"),u("scalegroup");var d,h=u("text"),p=u("texttemplate");if(p||(d=u("textinfo",Array.isArray(h)?"text+percent":"percent")),u("hovertext"),u("hovertemplate"),p||d&&"none"!==d){var v=u("textposition");s(e,t,n,u,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(v)||"auto"===v||"outside"===v)&&u("automargin"),("inside"===v||"auto"===v||Array.isArray(v))&&u("insidetextorientation")}o(t,n,u);var m=u("hole");if(u("title.text")){var g=u("title.position",m?"middle center":"top center");m||"middle center"!==g||(t.title.position="top center"),i.coerceFont(u,"title.font",n.font)}u("sort"),u("direction"),u("rotation"),u("pull")}else t.visible=!1}}},20007:function(e,t,r){"use strict";var n=r(23469).appendArrayMultiPointValues;e.exports=function(e,t){var r={curveNumber:t.index,pointNumbers:e.pts,data:t._input,fullData:t,label:e.label,color:e.color,value:e.v,percent:e.percent,text:e.text,bbox:e.bbox,v:e.v};return 1===e.pts.length&&(r.pointNumber=r.i=e.pts[0]),n(r,t,e.pts),"funnelarea"===t.type&&(delete r.v,delete r.i),r}},53581:function(e,t,r){"use strict";var n=r(71828);function i(e){return-1!==e.indexOf("e")?e.replace(/[.]?0+e/,"e"):-1!==e.indexOf(".")?e.replace(/[.]?0+$/,""):e}t.formatPiePercent=function(e,t){var r=i((100*e).toPrecision(3));return n.numSeparate(r,t)+"%"},t.formatPieValue=function(e,t){var r=i(e.toPrecision(10));return n.numSeparate(r,t)},t.getFirstFilled=function(e,t){if(Array.isArray(e))for(var r=0;r"),name:f.hovertemplate||-1!==d.indexOf("name")?f.name:void 0,idealAlign:e.pxmid[0]<0?"left":"right",color:m.castOption(_.bgcolor,e.pts)||e.color,borderColor:m.castOption(_.bordercolor,e.pts),fontFamily:m.castOption(w.family,e.pts),fontSize:m.castOption(w.size,e.pts),fontColor:m.castOption(w.color,e.pts),nameLength:m.castOption(_.namelength,e.pts),textAlign:m.castOption(_.align,e.pts),hovertemplate:m.castOption(f.hovertemplate,e.pts),hovertemplateLabels:e,eventData:[g(e,f)]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t,inOut_bbox:k}),e.bbox=k[0],u._hasHoverLabel=!0}u._hasHoverEvent=!0,t.emit("plotly_hover",{points:[g(e,f)],event:n.event})}})),e.on("mouseout",(function(e){var r=t._fullLayout,i=t._fullData[u.index],o=n.select(this).datum();u._hasHoverEvent&&(e.originalEvent=n.event,t.emit("plotly_unhover",{points:[g(o,i)],event:n.event}),u._hasHoverEvent=!1),u._hasHoverLabel&&(a.loneUnhover(r._hoverlayer.node()),u._hasHoverLabel=!1)})),e.on("click",(function(e){var r=t._fullLayout,i=t._fullData[u.index];t._dragging||!1===r.hovermode||(t._hoverdata=[g(e,i)],a.click(t,n.event))}))}function b(e,t,r){var n=m.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=m.castOption(e._input.textfont.color,t.pts));var i=m.castOption(e.insidetextfont.family,t.pts)||m.castOption(e.textfont.family,t.pts)||r.family,a=m.castOption(e.insidetextfont.size,t.pts)||m.castOption(e.textfont.size,t.pts)||r.size;return{color:n||o.contrast(t.color),family:i,size:a}}function _(e,t){for(var r,n,i=0;it&&t>n||r=-4;m-=2)g(Math.PI*m,"tan");for(m=4;m>=-4;m-=2)g(Math.PI*(m+1),"tan")}if(f||h){for(m=4;m>=-4;m-=2)g(Math.PI*(m+1.5),"rad");for(m=4;m>=-4;m-=2)g(Math.PI*(m+.5),"rad")}}if(s||p||f){var y=Math.sqrt(e.width*e.width+e.height*e.height);if((a={scale:i*n*2/y,rCenter:1-i,rotate:0}).textPosAngle=(t.startangle+t.stopangle)/2,a.scale>=1)return a;v.push(a)}(p||h)&&((a=k(e,n,o,l,u)).textPosAngle=(t.startangle+t.stopangle)/2,v.push(a)),(p||d)&&((a=T(e,n,o,l,u)).textPosAngle=(t.startangle+t.stopangle)/2,v.push(a));for(var x=0,b=0,_=0;_=1)break}return v[x]}function k(e,t,r,n,i){t=Math.max(0,t-2*v);var a=e.width/e.height,o=S(a,n,t,r);return{scale:2*o/e.height,rCenter:M(a,o/t),rotate:A(i)}}function T(e,t,r,n,i){t=Math.max(0,t-2*v);var a=e.height/e.width,o=S(a,n,t,r);return{scale:2*o/e.width,rCenter:M(a,o/t),rotate:A(i+Math.PI/2)}}function M(e,t){return Math.cos(t)-e*t}function A(e){return(180/Math.PI*e+720)%180-90}function S(e,t,r,n){var i=e+1/(2*Math.tan(t));return r*Math.min(1/(Math.sqrt(i*i+.5)+i),n/(Math.sqrt(e*e+n/2)+e))}function E(e,t){return e.v!==t.vTotal||t.trace.hole?Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2):1}function C(e,t){var r=t.pxmid[0],n=t.pxmid[1],i=e.width/2,a=e.height/2;return r<0&&(i*=-1),n<0&&(a*=-1),{scale:1,rCenter:1,rotate:0,x:i+Math.abs(a)*(i>0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function L(e,t){var r,n,i,a=e.trace,o={x:e.cx,y:e.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)*e.r,s.ty-=e.titleBox.height):-1!==a.title.position.indexOf("bottom")&&(o.y+=(1+i)*e.r);var l,u,c=(l=e.r,u=e.trace.aspectratio,l/(void 0===u?1:u)),f=t.w*(a.domain.x[1]-a.domain.x[0])/2;return-1!==a.title.position.indexOf("left")?(f+=c,o.x-=(1+i)*c,s.tx+=e.titleBox.width/2):-1!==a.title.position.indexOf("center")?f*=2:-1!==a.title.position.indexOf("right")&&(f+=c,o.x+=(1+i)*c,s.tx-=e.titleBox.width/2),r=f/e.titleBox.width,n=P(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function P(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function O(e){var t,r=e.pull;if(!r)return 0;if(Array.isArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function I(e,t){for(var r=[],n=0;n1?c=(u=r.r)/i.aspectratio:u=(c=r.r)*i.aspectratio,l=(u*=(1+i.baseratio)/2)*c}o=Math.min(o,l/r.vTotal)}for(n=0;n")}if(a){var x=l.castOption(i,t.i,"texttemplate");if(x){var b=function(e){return{label:e.label,value:e.v,valueLabel:m.formatPieValue(e.v,n.separators),percent:e.v/r.vTotal,percentLabel:m.formatPiePercent(e.v/r.vTotal,n.separators),color:e.color,text:e.text,customdata:l.castOption(i,e.i,"customdata")}}(t),_=m.getFirstFilled(i.text,t.pts);(y(_)||""===_)&&(b.text=_),t.text=l.texttemplateString(x,b,e._fullLayout._d3locale,b,i._meta||{})}else t.text=""}}function z(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}e.exports={plot:function(e,t){var r=e._context.staticPlot,a=e._fullLayout,d=a._size;p("pie",a),_(t,e),I(t,d);var v=l.makeTraceGroups(a._pielayer,t,"trace").each((function(t){var p=n.select(this),v=t[0],g=v.trace;!function(e){var t,r,n,i=e[0],a=i.r,o=i.trace,s=m.getRotationAngle(o.rotation),l=2*Math.PI/i.vTotal,u="px0",c="px1";if("counterclockwise"===o.direction){for(t=0;ti.vTotal/2?1:0,r.halfangle=Math.PI*Math.min(r.v/i.vTotal,.5),r.ring=1-o.hole,r.rInscribed=E(r,i))}(t),p.attr("stroke-linejoin","round"),p.each((function(){var y=n.select(this).selectAll("g.slice").data(t);y.enter().append("g").classed("slice",!0),y.exit().remove();var _=[[[],[]],[[],[]]],k=!1;y.each((function(i,o){if(i.hidden)n.select(this).selectAll("path,g").remove();else{i.pointNumber=i.i,i.curveNumber=g.index,_[i.pxmid[1]<0?0:1][i.pxmid[0]<0?0:1].push(i);var u=v.cx,c=v.cy,d=n.select(this),p=d.selectAll("path.surface").data([i]);if(p.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),d.call(x,e,t),g.pull){var y=+m.castOption(g.pull,i.pts)||0;y>0&&(u+=y*i.pxmid[0],c+=y*i.pxmid[1])}i.cxFinal=u,i.cyFinal=c;var T=g.hole;if(i.v===v.vTotal){var M="M"+(u+i.px0[0])+","+(c+i.px0[1])+P(i.px0,i.pxmid,!0,1)+P(i.pxmid,i.px0,!0,1)+"Z";T?p.attr("d","M"+(u+T*i.px0[0])+","+(c+T*i.px0[1])+P(i.px0,i.pxmid,!1,T)+P(i.pxmid,i.px0,!1,T)+"Z"+M):p.attr("d",M)}else{var A=P(i.px0,i.px1,!0,1);if(T){var S=1-T;p.attr("d","M"+(u+T*i.px1[0])+","+(c+T*i.px1[1])+P(i.px1,i.px0,!1,T)+"l"+S*i.px0[0]+","+S*i.px0[1]+A+"Z")}else p.attr("d","M"+u+","+c+"l"+i.px0[0]+","+i.px0[1]+A+"Z")}R(e,i,v);var E=m.castOption(g.textposition,i.pts),L=d.selectAll("g.slicetext").data(i.text&&"none"!==E?[0]:[]);L.enter().append("g").classed("slicetext",!0),L.exit().remove(),L.each((function(){var r=l.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),d=l.ensureUniformFontSize(e,"outside"===E?function(e,t,r){var n=m.castOption(e.outsidetextfont.color,t.pts)||m.castOption(e.textfont.color,t.pts)||r.color,i=m.castOption(e.outsidetextfont.family,t.pts)||m.castOption(e.textfont.family,t.pts)||r.family,a=m.castOption(e.outsidetextfont.size,t.pts)||m.castOption(e.textfont.size,t.pts)||r.size;return{color:n,family:i,size:a}}(g,i,a.font):b(g,i,a.font));r.text(i.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(s.font,d).call(f.convertToTspans,e);var p,y=s.bBox(r.node());if("outside"===E)p=C(y,i);else if(p=w(y,i,v),"auto"===E&&p.scale<1){var x=l.ensureUniformFontSize(e,g.outsidetextfont);r.call(s.font,x),p=C(y=s.bBox(r.node()),i)}var _=p.textPosAngle,T=void 0===_?i.pxmid:D(v.r,_);if(p.targetX=u+T[0]*p.rCenter+(p.x||0),p.targetY=c+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=d.size,h(g.type,p,a),t[o].transform=p,l.setTransormAndDisplay(r,p)}))}function P(e,t,r,n){var a=n*(t[0]-e[0]),o=n*(t[1]-e[1]);return"a"+n*v.r+","+n*v.r+" 0 "+i.largeArc+(r?" 1 ":" 0 ")+a+","+o}}));var T=n.select(this).selectAll("g.titletext").data(g.title.text?[0]:[]);if(T.enter().append("g").classed("titletext",!0),T.exit().remove(),T.each((function(){var t,r=l.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),i=g.title.text;g._meta&&(i=l.templateString(i,g._meta)),r.text(i).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(s.font,g.title.font).call(f.convertToTspans,e),t="middle center"===g.title.position?function(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}(v):L(v,d),r.attr("transform",c(t.x,t.y)+u(Math.min(1,t.scale))+c(t.tx,t.ty))})),k&&function(e,t){var r,n,i,a,o,s,l,u,c,f,d,h,p;function v(e,t){return e.pxmid[1]-t.pxmid[1]}function g(e,t){return t.pxmid[1]-e.pxmid[1]}function y(e,r){r||(r={});var i,u,c,d,h=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),p=n?e.yLabelMin:e.yLabelMax,v=n?e.yLabelMax:e.yLabelMin,g=e.cyFinal+o(e.px0[1],e.px1[1]),y=h-p;if(y*l>0&&(e.labelExtraY=y),Array.isArray(t.pull))for(u=0;u=(m.castOption(t.pull,c.pts)||0)||((e.pxmid[1]-c.pxmid[1])*l>0?(y=c.cyFinal+o(c.px0[1],c.px1[1])-p-e.labelExtraY)*l>0&&(e.labelExtraY+=y):(v+e.labelExtraY-g)*l>0&&(i=3*s*Math.abs(u-f.indexOf(e)),(d=c.cxFinal+a(c.px0[0],c.px1[0])+i-(e.cxFinal+e.pxmid[0])-e.labelExtraX)*s>0&&(e.labelExtraX+=d)))}for(n=0;n<2;n++)for(i=n?v:g,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,(u=e[n][r]).sort(i),c=e[1-n][r],f=c.concat(u),h=[],d=0;dMath.abs(f)?s+="l"+f*e.pxmid[0]/e.pxmid[1]+","+f+"H"+(a+e.labelExtraX+u):s+="l"+e.labelExtraX+","+c+"v"+(f-c)+"h"+u}else s+="V"+(e.yLabelMid+e.labelExtraY)+"h"+u;l.ensureSingle(r,"path","textline").call(o.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})}else r.select("path.textline").remove()}))}(y,g),k&&g.automargin){var M=s.bBox(p.node()),A=g.domain,S=d.w*(A.x[1]-A.x[0]),E=d.h*(A.y[1]-A.y[0]),P=(.5*S-v.r)/d.w,O=(.5*E-v.r)/d.h;i.autoMargin(e,"pie."+g.uid+".automargin",{xl:A.x[0]-P,xr:A.x[1]+P,yb:A.y[0]-O,yt:A.y[1]+O,l:Math.max(v.cx-v.r-M.left,0),r:Math.max(M.right-(v.cx+v.r),0),b:Math.max(M.bottom-(v.cy+v.r),0),t:Math.max(v.cy-v.r-M.top,0),pad:5})}}))}));setTimeout((function(){v.selectAll("tspan").each((function(){var e=n.select(this);e.attr("dy")&&e.attr("dy",e.attr("dy"))}))}),0)},formatSliceLabel:R,transformInsideText:w,determineInsideTextFont:b,positionTitleOutside:L,prerenderTitles:_,layoutAreas:I,attachFxHandlers:x,computeTransform:z}},68357:function(e,t,r){"use strict";var n=r(39898),i=r(63463),a=r(72597).resizeText;e.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");a(e,t,"pie"),t.each((function(e){var t=e[0].trace,r=n.select(this);r.style({opacity:t.opacity}),r.selectAll("path.surface").each((function(e){n.select(this).call(i,e,t)}))}))}},63463:function(e,t,r){"use strict";var n=r(7901),i=r(53581).castOption;e.exports=function(e,t,r){var a=r.marker.line,o=i(a.color,t.pts)||n.defaultLine,s=i(a.width,t.pts)||0;e.style("stroke-width",s).call(n.fill,t.color).call(n.stroke,o)}},10959:function(e,t,r){"use strict";var n=r(82196);e.exports={x:n.x,y:n.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:n.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(e,t,r){"use strict";var n=r(9330).gl_pointcloud2d,i=r(78614),a=r(71739).findExtremes,o=r(34603);function s(e,t){this.scene=e,this.uid=t,this.type="pointcloud",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color="rgb(0, 0, 0)",this.name="",this.hoverinfo="all",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=n(e.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(e){var t=this.idToIndex[e.pointId];return{trace:this,dataCoord:e.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*t],this.pickXYData[2*t+1]]:[this.pickXData[t],this.pickYData[t]],textLabel:Array.isArray(this.textLabels)?this.textLabels[t]:this.textLabels,color:this.color,name:this.name,pointIndex:t,hoverinfo:this.hoverinfo}},l.update=function(e){this.index=e.index,this.textLabels=e.text,this.name=e.name,this.hoverinfo=e.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(e),this.color=o(e,{})},l.updateFast=function(e){var t,r,n,o,s,l,u=this.xData=this.pickXData=e.x,c=this.yData=this.pickYData=e.y,f=this.pickXYData=e.xy,d=e.xbounds&&e.ybounds,h=e.indices,p=this.bounds;if(f){if(n=f,t=f.length>>>1,d)p[0]=e.xbounds[0],p[2]=e.xbounds[1],p[1]=e.ybounds[0],p[3]=e.ybounds[1];else for(l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);if(h)r=h;else for(r=new Int32Array(t),l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);this.idToIndex=r,this.pointcloudOptions.idToIndex=r,this.pointcloudOptions.positions=n;var v=i(e.marker.color),m=i(e.marker.border.color),g=e.opacity*e.marker.opacity;v[3]*=g,this.pointcloudOptions.color=v;var y=e.marker.blend;null===y&&(y=u.length<100||c.length<100),this.pointcloudOptions.blend=y,m[3]*=g,this.pointcloudOptions.borderColor=m;var x=e.marker.sizemin,b=Math.max(e.marker.sizemax,e.marker.sizemin);this.pointcloudOptions.sizeMin=x,this.pointcloudOptions.sizeMax=b,this.pointcloudOptions.areaRatio=e.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var _=this.scene.xaxis,w=this.scene.yaxis,k=b/2||.5;e._extremes[_._id]=a(_,[p[0],p[2]],{ppad:k}),e._extremes[w._id]=a(w,[p[1],p[3]],{ppad:k})},l.dispose=function(){this.pointcloud.dispose()},e.exports=function(e,t){var r=new s(e,t.uid);return r.update(t),r}},33876:function(e,t,r){"use strict";var n=r(71828),i=r(10959);e.exports=function(e,t,r){function a(r,a){return n.coerce(e,t,i,r,a)}a("x"),a("y"),a("xbounds"),a("ybounds"),e.xy&&e.xy instanceof Float32Array&&(t.xy=e.xy),e.indices&&e.indices instanceof Int32Array&&(t.indices=e.indices),a("text"),a("marker.color",r),a("marker.opacity"),a("marker.blend"),a("marker.sizemin"),a("marker.sizemax"),a("marker.border.color",r),a("marker.border.arearatio"),t._length=null}},20593:function(e,t,r){"use strict";["*pointcloud* trace is deprecated!","Please consider switching to the *scattergl* trace type."].join(" "),e.exports={attributes:r(10959),supplyDefaults:r(33876),calc:r(36563),plot:r(42743),moduleType:"trace",name:"pointcloud",basePlotModule:r(4796),categories:["gl","gl2d","showLegend"],meta:{}}},39953:function(e,t,r){"use strict";var n=r(41940),i=r(9012),a=r(22399),o=r(77914),s=r(27670).Y,l=r(5386).fF,u=r(50693),c=r(44467).templatedArray,f=r(12663).descriptionOnlyNumbers,d=r(1426).extendFlat,h=r(30962).overrideAll;(e.exports=h({hoverinfo:d({},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:n({}),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:c("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:d(u().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")).transforms=void 0},75536:function(e,t,r){"use strict";var n=r(30962).overrideAll,i=r(27659).a0,a=r(60436),o=r(528),s=r(6964),l=r(28569),u=r(47322).prepSelect,c=r(71828),f=r(73972),d="sankey";function h(e,t){var r=e._fullData[t],n=e._fullLayout,i=n.dragmode,a="pan"===n.dragmode?"move":"crosshair",o=r._bgRect;if(o&&"pan"!==i&&"zoom"!==i){s(o,a);var d={_id:"x",c2p:c.identity,_offset:r._sankey.translateX,_length:r._sankey.width},h={_id:"y",c2p:c.identity,_offset:r._sankey.translateY,_length:r._sankey.height},p={gd:e,element:o.node(),plotinfo:{id:t,xaxis:d,yaxis:h,fillRangeItems:c.noop},subplot:t,xaxes:[d],yaxes:[h],doneFnCompleted:function(r){var n,i=e._fullData[t],a=i.node.groups.slice(),o=[];function s(e){for(var t=i._sankey.graph.nodes,r=0;ry&&(y=a.source[t]),a.target[t]>y&&(y=a.target[t]);var x,b=y+1;e.node._count=b;var _=e.node.groups,w={};for(t=0;t<_.length;t++){var k=_[t];for(x=0;x0&&s(E,b)&&s(C,b)&&(!w.hasOwnProperty(E)||!w.hasOwnProperty(C)||w[E]!==w[C])){w.hasOwnProperty(C)&&(C=w[C]),w.hasOwnProperty(E)&&(E=w[E]),C=+C,d[E=+E]=d[C]=!0;var L="";a.label&&a.label[t]&&(L=a.label[t]);var P=null;L&&h.hasOwnProperty(L)&&(P=h[L]),u.push({pointNumber:t,label:L,color:c?a.color[t]:a.color,customdata:f?a.customdata[t]:a.customdata,concentrationscale:P,source:E,target:C,value:+S}),A.source.push(E),A.target.push(C)}}var O=b+_.length,I=o(r.color),D=o(r.customdata),R=[];for(t=0;tb-1,childrenNodes:[],pointNumber:t,label:z,color:I?r.color[t]:r.color,customdata:D?r.customdata[t]:r.customdata})}var F=!1;return function(e,t,r){for(var a=i.init2dArray(e,0),o=0;o1}))}(O,A.source,A.target)&&(F=!0),{circular:F,links:u,nodes:R,groups:_,groupLookup:w}}e.exports=function(e,t){var r=u(t);return a({circular:r.circular,_nodes:r.nodes,_links:r.links,_groups:r.groups,_groupLookup:r.groupLookup})}},85247:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(39953),a=r(7901),o=r(84267),s=r(27670).c,l=r(38048),u=r(44467),c=r(85501);function f(e,t){function r(r,a){return n.coerce(e,t,i.link.colorscales,r,a)}r("label"),r("cmin"),r("cmax"),r("colorscale")}e.exports=function(e,t,r,d){function h(r,a){return n.coerce(e,t,i,r,a)}var p=n.extendDeep(d.hoverlabel,e.hoverlabel),v=e.node,m=u.newContainer(t,"node");function g(e,t){return n.coerce(v,m,i.node,e,t)}g("label"),g("groups"),g("x"),g("y"),g("pad"),g("thickness"),g("line.color"),g("line.width"),g("hoverinfo",e.hoverinfo),l(v,m,g,p),g("hovertemplate");var y=d.colorway;g("color",m.label.map((function(e,t){return a.addOpacity(function(e){return y[e%y.length]}(t),.8)}))),g("customdata");var x=e.link||{},b=u.newContainer(t,"link");function _(e,t){return n.coerce(x,b,i.link,e,t)}_("label"),_("arrowlen"),_("source"),_("target"),_("value"),_("line.color"),_("line.width"),_("hoverinfo",e.hoverinfo),l(x,b,_,p),_("hovertemplate");var w,k=o(d.paper_bgcolor).getLuminance()<.333?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)";_("color",n.repeat(k,b.value.length)),_("customdata"),c(x,b,{name:"colorscales",handleItemDefaults:f}),s(t,d,h),h("orientation"),h("valueformat"),h("valuesuffix"),m.x.length&&m.y.length&&(w="freeform"),h("arrangement",w),n.coerceFont(h,"textfont",n.extendFlat({},d.font)),t._length=null}},29396:function(e,t,r){"use strict";e.exports={attributes:r(39953),supplyDefaults:r(26857),calc:r(92930),plot:r(60436),moduleType:"trace",name:"sankey",basePlotModule:r(75536),selectPoints:r(84564),categories:["noOpacity"],meta:{}}},60436:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.numberFormat,o=r(3393),s=r(30211),l=r(7901),u=r(85247).cn,c=i._;function f(e){return""!==e}function d(e,t){return e.filter((function(e){return e.key===t.traceId}))}function h(e,t){n.select(e).select("path").style("fill-opacity",t),n.select(e).select("rect").style("fill-opacity",t)}function p(e){n.select(e).select("text.name").style("fill","black")}function v(e){return function(t){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function m(e){return function(t){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function g(e,t,r){t&&r&&d(r,t).selectAll("."+u.sankeyLink).filter(v(t)).call(x.bind(0,t,r,!1))}function y(e,t,r){t&&r&&d(r,t).selectAll("."+u.sankeyLink).filter(v(t)).call(b.bind(0,t,r,!1))}function x(e,t,r,n){var i=n.datum().link.label;n.style("fill-opacity",(function(e){if(!e.link.concentrationscale)return.4})),i&&d(t,e).selectAll("."+u.sankeyLink).filter((function(e){return e.link.label===i})).style("fill-opacity",(function(e){if(!e.link.concentrationscale)return.4})),r&&d(t,e).selectAll("."+u.sankeyNode).filter(m(e)).call(g)}function b(e,t,r,n){var i=n.datum().link.label;n.style("fill-opacity",(function(e){return e.tinyColorAlpha})),i&&d(t,e).selectAll("."+u.sankeyLink).filter((function(e){return e.link.label===i})).style("fill-opacity",(function(e){return e.tinyColorAlpha})),r&&d(t,e).selectAll(u.sankeyNode).filter(m(e)).call(y)}function _(e,t){var r=e.hoverlabel||{},n=i.nestedProperty(r,t).get();return!Array.isArray(n)&&n}e.exports=function(e,t){for(var r=e._fullLayout,i=r._paper,d=r._size,v=0;v"),color:_(o,"bgcolor")||l.addOpacity(v.color,1),borderColor:_(o,"bordercolor"),fontFamily:_(o,"font.family"),fontSize:_(o,"font.size"),fontColor:_(o,"font.color"),nameLength:_(o,"namelength"),textAlign:_(o,"align"),idealAlign:n.event.x"),color:_(o,"bgcolor")||i.tinyColorHue,borderColor:_(o,"bordercolor"),fontFamily:_(o,"font.family"),fontSize:_(o,"font.size"),fontColor:_(o,"font.color"),nameLength:_(o,"namelength"),textAlign:_(o,"align"),idealAlign:"left",hovertemplate:o.hovertemplate,hovertemplateLabels:y,eventData:[i.node]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:e});h(w,.85),p(w)}}},unhover:function(t,i,a){!1!==e._fullLayout.hovermode&&(n.select(t).call(y,i,a),"skip"!==i.node.trace.node.hoverinfo&&(i.node.fullData=i.node.trace,e.emit("plotly_unhover",{event:n.event,points:[i.node]})),s.loneUnhover(r._hoverlayer.node()))},select:function(t,r,i){var a=r.node;a.originalEvent=n.event,e._hoverdata=[a],n.select(t).call(y,r,i),s.click(e,{target:!0})}}})}},3393:function(e,t,r){"use strict";var n=r(49887),i=r(81684).k4,a=r(39898),o=r(30838),s=r(86781),l=r(85247),u=r(84267),c=r(7901),f=r(91424),d=r(71828),h=d.strTranslate,p=d.strRotate,v=r(28984),m=v.keyFun,g=v.repeat,y=v.unwrap,x=r(63893),b=r(73972),_=r(18783),w=_.CAP_SHIFT,k=_.LINE_SPACING;function T(e,t,r){var n,i=y(t),a=i.trace,c=a.domain,f="h"===a.orientation,h=a.node.pad,p=a.node.thickness,v=e.width*(c.x[1]-c.x[0]),m=e.height*(c.y[1]-c.y[0]),g=i._nodes,x=i._links,b=i.circular;(n=b?s.sankeyCircular().circularLinkGap(0):o.sankey()).iterations(l.sankeyIterations).size(f?[v,m]:[m,v]).nodeWidth(p).nodePadding(h).nodeId((function(e){return e.pointNumber})).nodes(g).links(x);var _,w,k,T=n();for(var M in n.nodePadding()=i||(r=i-t.y0)>1e-6&&(t.y0+=r,t.y1+=r),i=t.y1+h}))}(function(e){var t,r,n=e.map((function(e,t){return{x0:e.x0,index:t}})).sort((function(e,t){return e.x0-t.x0})),i=[],a=-1,o=-1/0;for(_=0;_o+p&&(a+=1,t=s.x0),o=s.x0,i[a]||(i[a]=[]),i[a].push(s),r=t-s.x0,s.x0+=r,s.x1+=r}return i}(g=T.nodes)),n.update(T)}return{circular:b,key:r,trace:a,guid:d.randstr(),horizontal:f,width:v,height:m,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:c.x[0]*e.width+e.margin.l,translateY:e.height-c.y[1]*e.height+e.margin.t,dragParallel:f?m:v,dragPerpendicular:f?v:m,arrangement:a.arrangement,sankey:n,graph:T,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function M(e,t,r){var n=u(t.color),i=t.source.label+"|"+t.target.label+"__"+r;return t.trace=e.trace,t.curveNumber=e.trace.index,{circular:e.circular,key:i,traceId:e.key,pointNumber:t.pointNumber,link:t,tinyColorHue:c.tinyRGB(n),tinyColorAlpha:n.getAlpha(),linkPath:A,linkLineColor:e.linkLineColor,linkLineWidth:e.linkLineWidth,linkArrowLength:e.linkArrowLength,valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,parent:e,interactionState:e.interactionState,flow:t.flow}}function A(){return function(e){var t=e.linkArrowLength;if(e.link.circular)return function(e,t){var r=e.width/2,n=e.circularPathData;return"top"===e.circularLinkType?"M "+(n.targetX-t)+" "+(n.targetY+r)+" L"+(n.rightInnerExtent-t)+" "+(n.targetY+r)+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightSmallArcRadius+r)+" 0 0 1 "+(n.rightFullExtent-r-t)+" "+(n.targetY-n.rightSmallArcRadius)+"L"+(n.rightFullExtent-r-t)+" "+n.verticalRightInnerExtent+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightLargeArcRadius+r)+" 0 0 1 "+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent-r)+"L"+n.leftInnerExtent+" "+(n.verticalFullExtent-r)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftLargeArcRadius+r)+" 0 0 1 "+(n.leftFullExtent+r)+" "+n.verticalLeftInnerExtent+"L"+(n.leftFullExtent+r)+" "+(n.sourceY-n.leftSmallArcRadius)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftSmallArcRadius+r)+" 0 0 1 "+n.leftInnerExtent+" "+(n.sourceY+r)+"L"+n.sourceX+" "+(n.sourceY+r)+"L"+n.sourceX+" "+(n.sourceY-r)+"L"+n.leftInnerExtent+" "+(n.sourceY-r)+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftSmallArcRadius-r)+" 0 0 0 "+(n.leftFullExtent-r)+" "+(n.sourceY-n.leftSmallArcRadius)+"L"+(n.leftFullExtent-r)+" "+n.verticalLeftInnerExtent+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftLargeArcRadius-r)+" 0 0 0 "+n.leftInnerExtent+" "+(n.verticalFullExtent+r)+"L"+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent+r)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightLargeArcRadius-r)+" 0 0 0 "+(n.rightFullExtent+r-t)+" "+n.verticalRightInnerExtent+"L"+(n.rightFullExtent+r-t)+" "+(n.targetY-n.rightSmallArcRadius)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightSmallArcRadius-r)+" 0 0 0 "+(n.rightInnerExtent-t)+" "+(n.targetY-r)+"L"+(n.targetX-t)+" "+(n.targetY-r)+(t>0?"L"+n.targetX+" "+n.targetY:"")+"Z":"M "+(n.targetX-t)+" "+(n.targetY-r)+" L"+(n.rightInnerExtent-t)+" "+(n.targetY-r)+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightSmallArcRadius+r)+" 0 0 0 "+(n.rightFullExtent-r-t)+" "+(n.targetY+n.rightSmallArcRadius)+"L"+(n.rightFullExtent-r-t)+" "+n.verticalRightInnerExtent+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightLargeArcRadius+r)+" 0 0 0 "+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent+r)+"L"+n.leftInnerExtent+" "+(n.verticalFullExtent+r)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftLargeArcRadius+r)+" 0 0 0 "+(n.leftFullExtent+r)+" "+n.verticalLeftInnerExtent+"L"+(n.leftFullExtent+r)+" "+(n.sourceY+n.leftSmallArcRadius)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftSmallArcRadius+r)+" 0 0 0 "+n.leftInnerExtent+" "+(n.sourceY-r)+"L"+n.sourceX+" "+(n.sourceY-r)+"L"+n.sourceX+" "+(n.sourceY+r)+"L"+n.leftInnerExtent+" "+(n.sourceY+r)+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftSmallArcRadius-r)+" 0 0 1 "+(n.leftFullExtent-r)+" "+(n.sourceY+n.leftSmallArcRadius)+"L"+(n.leftFullExtent-r)+" "+n.verticalLeftInnerExtent+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftLargeArcRadius-r)+" 0 0 1 "+n.leftInnerExtent+" "+(n.verticalFullExtent-r)+"L"+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent-r)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightLargeArcRadius-r)+" 0 0 1 "+(n.rightFullExtent+r-t)+" "+n.verticalRightInnerExtent+"L"+(n.rightFullExtent+r-t)+" "+(n.targetY+n.rightSmallArcRadius)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightSmallArcRadius-r)+" 0 0 1 "+(n.rightInnerExtent-t)+" "+(n.targetY+r)+"L"+(n.targetX-t)+" "+(n.targetY+r)+(t>0?"L"+n.targetX+" "+n.targetY:"")+"Z"}(e.link,t);var r=Math.abs((e.link.target.x0-e.link.source.x1)/2);t>r&&(t=r);var n=e.link.source.x1,a=e.link.target.x0-t,o=i(n,a),s=o(.5),l=o(.5),u=e.link.y0-e.link.width/2,c=e.link.y0+e.link.width/2,f=e.link.y1-e.link.width/2,d=e.link.y1+e.link.width/2,h="M"+n+","+u,p="C"+s+","+u+" "+l+","+f+" "+a+","+f,v="C"+l+","+d+" "+s+","+c+" "+n+","+c,m=t>0?"L"+(a+t)+","+(f+e.link.width/2):"";return h+p+(m+="L"+a+","+d)+v+"Z"}}function S(e,t){var r=u(t.color),n=l.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=d.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:1===t.originalLayer,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:c.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function E(e){e.attr("transform",(function(e){return h(e.node.x0.toFixed(3),e.node.y0.toFixed(3))}))}function C(e){e.call(E)}function L(e,t){e.call(C),t.attr("d",A())}function P(e){e.attr("width",(function(e){return e.node.x1-e.node.x0})).attr("height",(function(e){return e.visibleHeight}))}function O(e){return e.link.width>1||e.linkLineWidth>0}function I(e){return h(e.translateX,e.translateY)+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function D(e,t,r){e.on(".basic",null).on("mouseover.basic",(function(e){e.interactionState.dragInProgress||e.partOfGroup||(r.hover(this,e,t),e.interactionState.hovered=[this,e])})).on("mousemove.basic",(function(e){e.interactionState.dragInProgress||e.partOfGroup||(r.follow(this,e),e.interactionState.hovered=[this,e])})).on("mouseout.basic",(function(e){e.interactionState.dragInProgress||e.partOfGroup||(r.unhover(this,e,t),e.interactionState.hovered=!1)})).on("click.basic",(function(e){e.interactionState.hovered&&(r.unhover(this,e,t),e.interactionState.hovered=!1),e.interactionState.dragInProgress||e.partOfGroup||r.select(this,e,t)}))}function R(e,t,r,i){var o=a.behavior.drag().origin((function(e){return{x:e.node.x0+e.visibleWidth/2,y:e.node.y0+e.visibleHeight/2}})).on("dragstart",(function(a){if("fixed"!==a.arrangement&&(d.ensureSingle(i._fullLayout._infolayer,"g","dragcover",(function(e){i._fullLayout._dragCover=e})),d.raiseToTop(this),a.interactionState.dragInProgress=a.node,F(a.node),a.interactionState.hovered&&(r.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(e,t,r,i){!function(e){for(var t=0;t0&&n.forceLayouts[t].alpha(0)}}(0,t,a,r)).stop()}(0,o,a),function(e,t,r,n,i){window.requestAnimationFrame((function a(){var o;for(o=0;o0)window.requestAnimationFrame(a);else{var s=r.node.originalX;r.node.x0=s-r.visibleWidth/2,r.node.x1=s+r.visibleWidth/2,z(r,i)}}))}(e,t,a,o,i)}})).on("drag",(function(r){if("fixed"!==r.arrangement){var n=a.event.x,i=a.event.y;"snap"===r.arrangement?(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2,r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2):("freeform"===r.arrangement&&(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2),i=Math.max(0,Math.min(r.size-r.visibleHeight/2,i)),r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2),F(r.node),"snap"!==r.arrangement&&(r.sankey.update(r.graph),L(e.filter(N(r)),t))}})).on("dragend",(function(e){if("fixed"!==e.arrangement){e.interactionState.dragInProgress=!1;for(var t=0;tl&&L[g].gap;)g--;for(x=L[g].s,v=L.length-1;v>g;v--)L[v].s=x;for(;lS[f]&&f=0;f--){var d=e[f];if("scatter"===d.type&&d.xaxis===u.xaxis&&d.yaxis===u.yaxis){d.opacity=void 0;break}}}}}},17438:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(82196),o=r(47581),s=r(34098),l=r(67513),u=r(73927),c=r(565),f=r(49508),d=r(11058),h=r(94039),p=r(82410),v=r(28908),m=r(71828).coercePattern;e.exports=function(e,t,r,g){function y(r,i){return n.coerce(e,t,a,r,i)}var x=l(e,t,g,y);if(x||(t.visible=!1),t.visible){u(e,t,g,y),y("xhoverformat"),y("yhoverformat");var b=c(e,t,g,y);"group"===g.scattermode&&void 0===t.orientation&&y("orientation","v");var _=!b&&x=Math.min(t,r)&&p<=Math.max(t,r)?0:1/0}var n=Math.max(3,e.mrc||0),i=1-1/n,a=Math.abs(d.c2p(e.x)-p);return a=Math.min(t,r)&&v<=Math.max(t,r)?0:1/0}var n=Math.max(3,e.mrc||0),i=1-1/n,a=Math.abs(h.c2p(e.y)-v);return aY!==(B=D[O][1])>=Y&&(z=D[O-1][0],F=D[O][0],B-N&&(R=z+(F-z)*(Y-N)/(B-N),H=Math.min(H,R),q=Math.max(q,R)));H=Math.max(H,0),q=Math.min(q,d._length);var Z=s.defaultLine;return s.opacity(f.fillcolor)?Z=f.fillcolor:s.opacity((f.line||{}).color)&&(Z=f.line.color),n.extendFlat(e,{distance:e.maxHoverDistance,x0:H,x1:q,y0:Y,y1:Y,color:Z,hovertemplate:!1}),delete e.index,f.text&&!Array.isArray(f.text)?e.text=String(f.text):e.text=f.name,[e]}}}},67368:function(e,t,r){"use strict";var n=r(34098);e.exports={hasLines:n.hasLines,hasMarkers:n.hasMarkers,hasText:n.hasText,isBubble:n.isBubble,attributes:r(82196),layoutAttributes:r(21479),supplyDefaults:r(17438),crossTraceDefaults:r(34936),supplyLayoutDefaults:r(79334),calc:r(47761).calc,crossTraceCalc:r(72626),arraysToCalcdata:r(75225),plot:r(32663),colorbar:r(4898),formatLabels:r(8225),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(33720),selectPoints:r(98002),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:r(93612),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}},21479:function(e){"use strict";e.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}},79334:function(e,t,r){"use strict";var n=r(71828),i=r(21479);e.exports=function(e,t){var r,a,o="group"===t.barmode;"group"===t.scattermode&&(r="scattergap",a=o?t.bargap:.2,n.coerce(e,t,i,r,a))}},11058:function(e,t,r){"use strict";var n=r(71828).isArrayOrTypedArray,i=r(52075).hasColorscale,a=r(1586);e.exports=function(e,t,r,o,s,l){l||(l={});var u=(e.marker||{}).color;s("line.color",r),i(e,"line")?a(e,t,o,s,{prefix:"line.",cLetter:"c"}):s("line.color",!n(u)&&u||r),s("line.width"),l.noDash||s("line.dash"),l.backoff&&s("line.backoff")}},34621:function(e,t,r){"use strict";var n=r(91424),i=r(50606),a=i.BADNUM,o=i.LOG_CLIP,s=o+.5,l=o-.5,u=r(71828),c=u.segmentsIntersect,f=u.constrain,d=r(47581);e.exports=function(e,t){var r,i,o,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S,E=t.trace||{},C=t.xaxis,L=t.yaxis,P="log"===C.type,O="log"===L.type,I=C._length,D=L._length,R=t.backoff,z=E.marker,F=t.connectGaps,N=t.baseTolerance,B=t.shape,j="linear"===B,U=E.fill&&"none"!==E.fill,V=[],H=d.minTolerance,q=e.length,W=new Array(q),G=0;function Y(r){var n=e[r];if(!n)return!1;var i=t.linearized?C.l2p(n.x):C.c2p(n.x),o=t.linearized?L.l2p(n.y):L.c2p(n.y);if(i===a){if(P&&(i=C.c2p(n.x,!0)),i===a)return!1;O&&o===a&&(i*=Math.abs(C._m*D*(C._m>0?s:l)/(L._m*I*(L._m>0?s:l)))),i*=1e3}if(o===a){if(O&&(o=L.c2p(n.y,!0)),o===a)return!1;o*=1e3}return[i,o]}function Z(e,t,r,n){var i=r-e,a=n-t,o=.5-e,s=.5-t,l=i*i+a*a,u=i*o+a*s;if(u>0&&uoe||e[1]le)return[f(e[0],ae,oe),f(e[1],se,le)]}function fe(e,t){return e[0]===t[0]&&(e[0]===ae||e[0]===oe)||e[1]===t[1]&&(e[1]===se||e[1]===le)||void 0}function de(e,t,r){return function(n,i){var a=ce(n),o=ce(i),s=[];if(a&&o&&fe(a,o))return s;a&&s.push(a),o&&s.push(o);var l=2*u.constrain((n[e]+i[e])/2,t,r)-((a||n)[e]+(o||i)[e]);return l&&((a&&o?l>0===a[e]>o[e]?a:o:a||o)[e]+=l),s}}function he(e){var t=e[0],r=e[1],n=t===W[G-1][0],i=r===W[G-1][1];if(!n||!i)if(G>1){var a=t===W[G-2][0],o=r===W[G-2][1];n&&(t===ae||t===oe)&&a?o?G--:W[G-1]=e:i&&(r===se||r===le)&&o?a?G--:W[G-1]=e:W[G++]=e}else W[G++]=e}function pe(e){W[G-1][0]!==e[0]&&W[G-1][1]!==e[1]&&he([Q,ee]),he(e),te=null,Q=ee=0}"linear"===B||"spline"===B?ne=function(e,t){for(var r=[],n=0,i=0;i<4;i++){var a=ue[i],o=c(e[0],e[1],t[0],t[1],a[0],a[1],a[2],a[3]);o&&(!n||Math.abs(o.x-r[0][0])>1||Math.abs(o.y-r[0][1])>1)&&(o=[o.x,o.y],n&&K(o,e)oe?oe:0,J=t[1]le?le:0,$||J){if(G)if(te){var n=ne(te,t);n.length>1&&(pe(n[0]),W[G++]=n[1])}else re=ne(W[G-1],t)[0],W[G++]=re;else W[G++]=[$||t[0],J||t[1]];var i=W[G-1];$&&J&&(i[0]!==$||i[1]!==J)?(te&&(Q!==$&&ee!==J?he(Q&&ee?function(e,t){var r=t[0]-e[0],n=(t[1]-e[1])/r;return(e[1]*t[0]-t[1]*e[0])/r>0?[n>0?ae:oe,le]:[n>0?oe:ae,se]}(te,t):[Q||$,ee||J]):Q&&ee&&he([Q,ee])),he([$,J])):Q-$&&ee-J&&he([$||Q,J||ee]),te=t,Q=$,ee=J}else te&&pe(ne(te,t)[0]),W[G++]=t}for(r=0;rX(v,ge))break;o=v,(w=y[0]*g[0]+y[1]*g[1])>b?(b=w,h=v,m=!1):w<_&&(_=w,p=v,m=!0)}if(m?(me(h),o!==p&&me(p)):(p!==i&&me(p),o!==h&&me(h)),me(o),r>=e.length||!v)break;me(v),i=v}}else me(h)}te&&he([Q||te[0],ee||te[1]]),V.push(W.slice(0,G))}var ye=B.slice(B.length-1);if(R&&"h"!==ye&&"v"!==ye){for(var xe=!1,be=-1,_e=[],we=0;we=0?l=h:(l=h=d,d++),l0?Math.max(r,a):0}}},4898:function(e){"use strict";e.exports={container:"marker",min:"cmin",max:"cmax"}},49508:function(e,t,r){"use strict";var n=r(7901),i=r(52075).hasColorscale,a=r(1586),o=r(34098);e.exports=function(e,t,r,s,l,u){var c=o.isBubble(e),f=(e.line||{}).color;u=u||{},f&&(r=f),l("marker.symbol"),l("marker.opacity",c?.7:1),l("marker.size"),u.noAngle||(l("marker.angle"),u.noAngleRef||l("marker.angleref"),u.noStandOff||l("marker.standoff")),l("marker.color",r),i(e,"marker")&&a(e,t,s,l,{prefix:"marker.",cLetter:"c"}),u.noSelect||(l("selected.marker.color"),l("unselected.marker.color"),l("selected.marker.size"),l("unselected.marker.size")),u.noLine||(l("marker.line.color",f&&!Array.isArray(f)&&t.marker.color!==f?f:c?n.background:n.defaultLine),i(e,"marker.line")&&a(e,t,s,l,{prefix:"marker.line.",cLetter:"c"}),l("marker.line.width",c?1:0)),c&&(l("marker.sizeref"),l("marker.sizemin"),l("marker.sizemode")),u.gradient&&"none"!==l("marker.gradient.type")&&l("marker.gradient.color")}},73927:function(e,t,r){"use strict";var n=r(71828).dateTick0,i=r(50606).ONEWEEK;function a(e,t){return n(t,e%i===0?1:0)}e.exports=function(e,t,r,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n("xperiod");o&&(n("xperiod0",a(o,t.xcalendar)),n("xperiodalignment"))}if(i.y){var s=n("yperiod");s&&(n("yperiod0",a(s,t.ycalendar)),n("yperiodalignment"))}}},32663:function(e,t,r){"use strict";var n=r(39898),i=r(73972),a=r(71828),o=a.ensureSingle,s=a.identity,l=r(91424),u=r(34098),c=r(34621),f=r(68687),d=r(61082).tester;function h(e,t,r,f,h,p,v){var m,g=e._context.staticPlot;!function(e,t,r,i,o){var s=r.xaxis,l=r.yaxis,c=n.extent(a.simpleMap(s.range,s.r2c)),f=n.extent(a.simpleMap(l.range,l.r2c)),d=i[0].trace;if(u.hasMarkers(d)){var h=d.marker.maxdisplayed;if(0!==h){var p=i.filter((function(e){return e.x>=c[0]&&e.x<=c[1]&&e.y>=f[0]&&e.y<=f[1]})),v=Math.ceil(p.length/h),m=0;o.forEach((function(e,r){var n=e[0].trace;u.hasMarkers(n)&&n.marker.maxdisplayed>0&&r0;function x(e){return y?e.transition():e}var b=r.xaxis,_=r.yaxis,w=f[0].trace,k=w.line,T=n.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")(e,M,r,v),!0===w.visible){var C,L;x(T).style("opacity",w.opacity);var P=w.fill.charAt(w.fill.length-1);"x"!==P&&"y"!==P&&(P=""),f[0][r.isRangePlot?"nodeRangePlot3":"node3"]=T;var O,I,D="",R=[],z=w._prevtrace;z&&(D=z._prevRevpath||"",L=z._nextFill,R=z._polygons);var F,N,B,j,U,V,H,q="",W="",G=[],Y=a.noop;if(C=w._ownFill,u.hasLines(w)||"none"!==w.fill){for(L&&L.datum(f),-1!==["hv","vh","hvh","vhv"].indexOf(k.shape)?(F=l.steps(k.shape),N=l.steps(k.shape.split("").reverse().join(""))):F=N="spline"===k.shape?function(e){var t=e[e.length-1];return e.length>1&&e[0][0]===t[0]&&e[0][1]===t[1]?l.smoothclosed(e.slice(1),k.smoothing):l.smoothopen(e,k.smoothing)}:function(e){return"M"+e.join("L")},B=function(e){return N(e.reverse())},G=c(f,{xaxis:b,yaxis:_,trace:w,connectGaps:w.connectgaps,baseTolerance:Math.max(k.width||1,3)/4,shape:k.shape,backoff:k.backoff,simplify:k.simplify,fill:w.fill}),H=w._polygons=new Array(G.length),m=0;m0,m=f(e,t,r);(c=i.selectAll("g.trace").data(m,(function(e){return e[0].trace.uid}))).enter().append("g").attr("class",(function(e){return"trace scatter trace"+e[0].trace.uid})).style("stroke-miterlimit",2),c.order(),function(e,t,r){t.each((function(t){var i=o(n.select(this),"g","fills");l.setClipUrl(i,r.layerClipId,e);var a=t[0].trace,u=[];a._ownfill&&u.push("_ownFill"),a._nexttrace&&u.push("_nextFill");var c=i.selectAll("g").data(u,s);c.enter().append("g"),c.exit().each((function(e){a[e]=null})).remove(),c.order().each((function(e){a[e]=o(n.select(this),"path","js-fill")}))}))}(e,c,t),v?(u&&(d=u()),n.transition().duration(a.duration).ease(a.easing).each("end",(function(){d&&d()})).each("interrupt",(function(){d&&d()})).each((function(){i.selectAll("g.trace").each((function(r,n){h(e,n,t,r,m,this,a)}))}))):c.each((function(r,n){h(e,n,t,r,m,this,a)})),p&&c.exit().remove(),i.selectAll("path:not([d])").remove()}},98002:function(e,t,r){"use strict";var n=r(34098);e.exports=function(e,t){var r,i,a,o,s=e.cd,l=e.xaxis,u=e.yaxis,c=[],f=s[0].trace;if(!n.hasMarkers(f)&&!n.hasText(f))return[];if(!1===t)for(r=0;r0){var d=i.c2l(c);i._lowerLogErrorBound||(i._lowerLogErrorBound=d),i._lowerErrorBound=Math.min(i._lowerLogErrorBound,d)}}else o[s]=[-l[0]*r,l[1]*r]}return o}e.exports=function(e,t,r){var n=[i(e.x,e.error_x,t[0],r.xaxis),i(e.y,e.error_y,t[1],r.yaxis),i(e.z,e.error_z,t[2],r.zaxis)],a=function(e){for(var t=0;t-1?-1:e.indexOf("right")>-1?1:0}function b(e){return null===e||void 0===e?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function _(e,t){return t(4*e)}function w(e){return h[e]}function k(e,t,r,n,i){var a=null;if(l.isArrayOrTypedArray(e)){a=[];for(var o=0;o=0){var v=function(e,t,r){var n,i=(r+1)%3,a=(r+2)%3,o=[],l=[];for(n=0;n=0&&f("surfacecolor",h||p);for(var v=["x","y","z"],m=0;m<3;++m){var g="projection."+v[m];f(g+".show")&&(f(g+".opacity"),f(g+".scale"))}var y=n.getComponentMethod("errorbars","supplyDefaults");y(e,t,h||p||r,{axis:"z"}),y(e,t,h||p||r,{axis:"y",inherit:"z"}),y(e,t,h||p||r,{axis:"x",inherit:"z"})}else t.visible=!1}},13551:function(e,t,r){"use strict";e.exports={plot:r(58925),attributes:r(44542),markerSymbols:r(87381),supplyDefaults:r(21428),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:r(36563),moduleType:"trace",name:"scatter3d",basePlotModule:r(58547),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}},97001:function(e,t,r){"use strict";var n=r(82196),i=r(9012),a=r(5386).fF,o=r(5386).si,s=r(50693),l=r(1426).extendFlat,u=n.marker,c=n.line,f=u.line;e.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:l({},n.mode,{dflt:"markers"}),text:l({},n.text,{}),texttemplate:o({editType:"plot"},{keys:["a","b","text"]}),hovertext:l({},n.hovertext,{}),line:{color:c.color,width:c.width,dash:c.dash,backoff:c.backoff,shape:l({},c.shape,{values:["linear","spline"]}),smoothing:c.smoothing,editType:"calc"},connectgaps:n.connectgaps,fill:l({},n.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:n.fillcolor,marker:l({symbol:u.symbol,opacity:u.opacity,maxdisplayed:u.maxdisplayed,angle:u.angle,angleref:u.angleref,standoff:u.standoff,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,line:l({width:f.width,editType:"calc"},s("marker.line")),gradient:u.gradient,editType:"calc"},s("marker")),textfont:n.textfont,textposition:n.textposition,selected:n.selected,unselected:n.unselected,hoverinfo:l({},i.hoverinfo,{flags:["a","b","text","name"]}),hoveron:n.hoveron,hovertemplate:a()}},34618:function(e,t,r){"use strict";var n=r(92770),i=r(36922),a=r(75225),o=r(66279),s=r(47761).calcMarkerSize,l=r(22882);e.exports=function(e,t){var r=t._carpetTrace=l(e,t);if(r&&r.visible&&"legendonly"!==r.visible){var u;t.xaxis=r.xaxis,t.yaxis=r.yaxis;var c,f,d=t._length,h=new Array(d),p=!1;for(u=0;u")}return o}function y(e,t){var r;r=e.labelprefix&&e.labelprefix.length>0?e.labelprefix.replace(/ = $/,""):e._hovertitle,m.push(r+": "+t.toFixed(3)+e.labelsuffix)}}},46858:function(e,t,r){"use strict";e.exports={attributes:r(97001),supplyDefaults:r(98965),colorbar:r(4898),formatLabels:r(48953),calc:r(34618),plot:r(1913),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(22931),selectPoints:r(98002),eventData:r(16165),moduleType:"trace",name:"scattercarpet",basePlotModule:r(93612),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}},1913:function(e,t,r){"use strict";var n=r(32663),i=r(89298),a=r(91424);e.exports=function(e,t,r,o){var s,l,u,c=r[0][0].carpet,f=i.getFromId(e,c.xaxis||"x"),d=i.getFromId(e,c.yaxis||"y"),h={xaxis:f,yaxis:d,plot:t.plot};for(s=0;s")}function h(e){return e+"\xb0"}}(u,v,e,l[0].t.labels),e.hovertemplate=u.hovertemplate,[e]}}},17988:function(e,t,r){"use strict";e.exports={attributes:r(19316),supplyDefaults:r(10659),colorbar:r(4898),formatLabels:r(82719),calc:r(84622),calcGeoJSON:r(89171).calcGeoJSON,plot:r(89171).plot,style:r(33095),styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(14977),eventData:r(84084),selectPoints:r(20548),moduleType:"trace",name:"scattergeo",basePlotModule:r(44622),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}},89171:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(90973).getTopojsonFeatures,o=r(18214),s=r(41327),l=r(71739).findExtremes,u=r(50606).BADNUM,c=r(47761).calcMarkerSize,f=r(34098),d=r(33095);e.exports={calcGeoJSON:function(e,t){var r,n,i=e[0].trace,o=t[i.geo],f=o._subplot,d=i._length;if(Array.isArray(i.locations)){var h=i.locationmode,p="geojson-id"===h?s.extractTraceFeature(e):a(i,f.topojson);for(r=0;r=m,w=2*b,k={},T=l.makeCalcdata(t,"x"),M=y.makeCalcdata(t,"y"),A=s(t,l,"x",T),S=s(t,y,"y",M),E=A.vals,C=S.vals;t._x=E,t._y=C,t.xperiodalignment&&(t._origX=T,t._xStarts=A.starts,t._xEnds=A.ends),t.yperiodalignment&&(t._origY=M,t._yStarts=S.starts,t._yEnds=S.ends);var L=new Array(w),P=new Array(b);for(r=0;r1&&i.extendFlat(s.line,h.linePositions(e,r,n)),s.errorX||s.errorY){var l=h.errorBarPositions(e,r,n,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:n},h.textPosition(e,r,s.text,s.marker)),i.extendFlat(s.textSel,{positions:n},h.textPosition(e,r,s.text,s.markerSel)),i.extendFlat(s.textUnsel,{positions:n},h.textPosition(e,r,s.text,s.markerUnsel))),s}(e,0,t,L,E,C),D=p(e,x);return f(o,t),_?I.marker&&(O=I.marker.sizeAvg||Math.max(I.marker.size,3)):O=u(t,b),c(e,t,l,y,E,C,O),I.errorX&&g(t,l,I.errorX),I.errorY&&g(t,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=b),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=L,D.count++,[{x:!1,y:!1,t:k,trace:t}]}},78232:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(92770),i=r(82019),a=r(25075),o=r(73972),s=r(71828),l=r(91424),u=r(41675),c=r(81697).formatColor,f=r(34098),d=r(39984),h=r(68645),p=r(78232),v=r(37822).DESELECTDIM,m={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},g=r(23469).appendArrayPointValue;function y(e,t){var r,i=e._fullLayout,a=t._length,o=t.textfont,l=t.textposition,u=Array.isArray(l)?l:[l],c=o.color,f=o.size,d=o.family,h={},p=e._context.plotGlPixelRatio,v=t.texttemplate;if(v){h.text=[];var m=i._d3locale,y=Array.isArray(v),x=y?Math.min(v.length,a):a,b=y?function(e){return v[e]}:function(){return v};for(r=0;rp.TOO_MANY_POINTS||f.hasMarkers(t)?"rect":"round";if(u&&t.connectgaps){var d=n[0],h=n[1];for(i=0;i1?l[i]:l[0]:l,p=Array.isArray(u)?u.length>1?u[i]:u[0]:u,v=m[h],g=m[p],y=c?c/.8+1:0,x=-g*y-.5*g;o.offset[i]=[v*y/d,x/d]}}return o}}},47148:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(68645),o=r(42341),s=r(47581),l=r(34098),u=r(67513),c=r(73927),f=r(49508),d=r(11058),h=r(28908),p=r(82410);e.exports=function(e,t,r,v){function m(r,i){return n.coerce(e,t,o,r,i)}var g=!!e.marker&&a.isOpenSymbol(e.marker.symbol),y=l.isBubble(e),x=u(e,t,v,m);if(x){c(e,t,v,m),m("xhoverformat"),m("yhoverformat");var b=x100},t.isDotSymbol=function(e){return"string"===typeof e?n.DOT_RE.test(e):e>200}},20794:function(e,t,r){"use strict";var n=r(73972),i=r(71828),a=r(34603);function o(e,t,r,o){var s=e.xa,l=e.ya,u=e.distance,c=e.dxy,f=e.index,d={pointNumber:f,x:t[f],y:r[f]};d.tx=Array.isArray(o.text)?o.text[f]:o.text,d.htx=Array.isArray(o.hovertext)?o.hovertext[f]:o.hovertext,d.data=Array.isArray(o.customdata)?o.customdata[f]:o.customdata,d.tp=Array.isArray(o.textposition)?o.textposition[f]:o.textposition;var h=o.textfont;h&&(d.ts=i.isArrayOrTypedArray(h.size)?h.size[f]:h.size,d.tc=Array.isArray(h.color)?h.color[f]:h.color,d.tf=Array.isArray(h.family)?h.family[f]:h.family);var p=o.marker;p&&(d.ms=i.isArrayOrTypedArray(p.size)?p.size[f]:p.size,d.mo=i.isArrayOrTypedArray(p.opacity)?p.opacity[f]:p.opacity,d.mx=i.isArrayOrTypedArray(p.symbol)?p.symbol[f]:p.symbol,d.ma=i.isArrayOrTypedArray(p.angle)?p.angle[f]:p.angle,d.mc=i.isArrayOrTypedArray(p.color)?p.color[f]:p.color);var v=p&&p.line;v&&(d.mlc=Array.isArray(v.color)?v.color[f]:v.color,d.mlw=i.isArrayOrTypedArray(v.width)?v.width[f]:v.width);var m=p&&p.gradient;m&&"none"!==m.type&&(d.mgt=Array.isArray(m.type)?m.type[f]:m.type,d.mgc=Array.isArray(m.color)?m.color[f]:m.color);var g=s.c2p(d.x,!0),y=l.c2p(d.y,!0),x=d.mrc||1,b=o.hoverlabel;b&&(d.hbg=Array.isArray(b.bgcolor)?b.bgcolor[f]:b.bgcolor,d.hbc=Array.isArray(b.bordercolor)?b.bordercolor[f]:b.bordercolor,d.hts=i.isArrayOrTypedArray(b.font.size)?b.font.size[f]:b.font.size,d.htc=Array.isArray(b.font.color)?b.font.color[f]:b.font.color,d.htf=Array.isArray(b.font.family)?b.font.family[f]:b.font.family,d.hnl=i.isArrayOrTypedArray(b.namelength)?b.namelength[f]:b.namelength);var _=o.hoverinfo;_&&(d.hi=Array.isArray(_)?_[f]:_);var w=o.hovertemplate;w&&(d.ht=Array.isArray(w)?w[f]:w);var k={};k[e.index]=d;var T=o._origX,M=o._origY,A=i.extendFlat({},e,{color:a(o,d),x0:g-x,x1:g+x,xLabelVal:T?T[f]:d.x,y0:y-x,y1:y+x,yLabelVal:M?M[f]:d.y,cd:k,distance:u,spikeDistance:c,hovertemplate:d.ht});return d.htx?A.text=d.htx:d.tx?A.text=d.tx:o.text&&(A.text=o.text),i.fillText(d,o,A),n.getComponentMethod("errorbars","hoverInfo")(d,o,A),A}e.exports={hoverPoints:function(e,t,r,n){var i,a,s,l,u,c,f,d,h,p,v=e.cd,m=v[0].t,g=v[0].trace,y=e.xa,x=e.ya,b=m.x,_=m.y,w=y.c2p(t),k=x.c2p(r),T=e.distance;if(m.tree){var M=y.p2c(w-T),A=y.p2c(w+T),S=x.p2c(k-T),E=x.p2c(k+T);i="x"===n?m.tree.range(Math.min(M,A),Math.min(x._rl[0],x._rl[1]),Math.max(M,A),Math.max(x._rl[0],x._rl[1])):m.tree.range(Math.min(M,A),Math.min(S,E),Math.max(M,A),Math.max(S,E))}else i=m.ids;var C=T;if("x"===n){var L=!!g.xperiodalignment,P=!!g.yperiodalignment;for(c=0;c=Math.min(O,I)&&w<=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+d*d),s=i[c]}}}else for(c=i.length-1;c>-1;c--)l=b[a=i[c]],u=_[a],f=y.c2p(l)-w,d=x.c2p(u)-k,(h=Math.sqrt(f*f+d*d))y.glText.length){var k=_-y.glText.length;for(v=0;vr&&(isNaN(t[n])||isNaN(t[n+1]));)n-=2;e.positions=t.slice(r,n+2)}return e})),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,_),y.fill2d&&(y.fillOptions=y.fillOptions.map((function(e,t){var n=r[t];if(e&&n&&n[0]&&n[0].trace){var i,a,o=n[0],s=o.trace,l=o.t,u=y.lineOptions[t],c=[];s._ownfill&&c.push(t),s._nexttrace&&c.push(t+1),c.length&&(y.fillOrder[t]=c);var f,d,h=[],p=u&&u.positions||l.positions;if("tozeroy"===s.fill){for(f=0;ff&&isNaN(p[d+1]);)d-=2;0!==p[f+1]&&(h=[p[f],0]),h=h.concat(p.slice(f,d+2)),0!==p[d+1]&&(h=h.concat([p[d],0]))}else if("tozerox"===s.fill){for(f=0;ff&&isNaN(p[d]);)d-=2;0!==p[f]&&(h=[0,p[f+1]]),h=h.concat(p.slice(f,d+2)),0!==p[d]&&(h=h.concat([0,p[d+1]]))}else if("toself"===s.fill||"tonext"===s.fill){for(h=[],i=0,e.splitNull=!0,a=0;a-1;for(v=0;v<_;v++){var C=r[v][0],L=C.trace,P=C.t,O=P.index,I=L._length,D=P.x,R=P.y;if(L.selectedpoints||S||E){if(S||(S=!0),L.selectedpoints){var z=y.selectBatch[O]=s.selIndices2selPoints(L),F={};for(m=0;m")}function c(e){return e+"\xb0"}}e.exports={hoverPoints:function(e,t,r){var o=e.cd,c=o[0].trace,f=e.xa,d=e.ya,h=e.subplot,p=[],v=l+c.uid+"-circle",m=c.cluster&&c.cluster.enabled;if(m){var g=h.map.queryRenderedFeatures(null,{layers:[v]});p=g.map((function(e){return e.id}))}var y=360*(t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360)),x=t-y;if(n.getClosest(o,(function(e){var t=e.lonlat;if(t[0]===s)return 1/0;if(m&&-1===p.indexOf(e.i+1))return 1/0;var n=i.modHalf(t[0],360),a=t[1],o=h.project([n,a]),l=o.x-f.c2p([x,a]),u=o.y-d.c2p([n,r]),c=Math.max(3,e.mrc||0);return Math.max(Math.sqrt(l*l+u*u)-c,1-3/c)}),e),!1!==e.index){var b=o[e.index],_=b.lonlat,w=[i.modHalf(_[0],360)+y,_[1]],k=f.c2p(w),T=d.c2p(w),M=b.mrc||1;e.x0=k-M,e.x1=k+M,e.y0=T-M,e.y1=T+M;var A={};A[c.subplot]={_subplot:h};var S=c._module.formatLabels(b,c,A);return e.lonLabel=S.lonLabel,e.latLabel=S.latLabel,e.color=a(c,b),e.extraText=u(c,b,o[0].t.labels),e.hovertemplate=c.hovertemplate,[e]}},getExtraText:u}},20467:function(e,t,r){"use strict";e.exports={attributes:r(99181),supplyDefaults:r(76645),colorbar:r(4898),formatLabels:r(15636),calc:r(84622),plot:r(86951),hoverPoints:r(28178).hoverPoints,eventData:r(53353),selectPoints:r(86387),styleOnSelect:function(e,t){t&&t[0].trace._glTrace.update(t)},moduleType:"trace",name:"scattermapbox",basePlotModule:r(50101),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}},86951:function(e,t,r){"use strict";var n=r(71828),i=r(15790),a=r(77734).traceLayerPrefix,o={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function s(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:a+t+"-fill",line:a+t+"-line",circle:a+t+"-circle",symbol:a+t+"-symbol",cluster:a+t+"-cluster",clusterCount:a+t+"-cluster-count"},this.below=null}var l=s.prototype;l.addSource=function(e,t,r){var i={type:"geojson",data:t.geojson};r&&r.enabled&&n.extendFlat(i,{cluster:!0,clusterMaxZoom:r.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[e]);a?a.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],i)},l.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)},l.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i,a=this.layerIds[e],o=this.subplot.getMapLayers(),s=0;s=0;r--){var i=t[r];n.removeLayer(c.layerIds[i])}e||n.removeSource(c.sourceIds.circle)}(e):function(e){for(var t=o.nonCluster,r=t.length-1;r>=0;r--){var i=t[r];n.removeLayer(c.layerIds[i]),e||n.removeSource(c.sourceIds[i])}}(e)}function d(e){l?function(e){e||c.addSource("circle",a.circle,t.cluster);for(var r=o.cluster,n=0;n=0;r--){var n=t[r];e.removeLayer(this.layerIds[n]),e.removeSource(this.sourceIds[n])}},e.exports=function(e,t){var r,n,a,l=t[0].trace,u=l.cluster&&l.cluster.enabled,c=!0!==l.visible,f=new s(e,l.uid,u,c),d=i(e.gd,t),h=f.below=e.belowLookup["trace-"+l.uid];if(u)for(f.addSource("circle",d.circle,l.cluster),r=0;r")}}e.exports={hoverPoints:function(e,t,r,a){var o=n(e,t,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=e.subplot,u=s.cd[s.index],c=s.trace;if(l.isPtInside(u))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(u,c,l,s),s.hovertemplate=c.hovertemplate,o}},makeHoverPointText:i}},91271:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:r(23580),categories:["polar","symbols","showLegend","scatter-like"],attributes:r(81245),supplyDefaults:r(22184).supplyDefaults,colorbar:r(4898),formatLabels:r(98608),calc:r(26442),plot:r(45162),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(59150).hoverPoints,selectPoints:r(98002),meta:{}}},45162:function(e,t,r){"use strict";var n=r(32663),i=r(50606).BADNUM;e.exports=function(e,t,r){for(var a=t.layers.frontplot.select("g.scatterlayer"),o=t.xaxis,s=t.yaxis,l={xaxis:o,yaxis:s,plot:t.framework,layerClipId:t._hasClipOnAxisFalse?t.clipIds.forTraces:null},u=t.radialAxis,c=t.angularAxis,f=0;f=u&&(y.marker.cluster=p.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=_),y.line&&_.length>1&&l.extendFlat(y.line,s.linePositions(e,h,_)),y.text&&(l.extendFlat(y.text,{positions:_},s.textPosition(e,h,y.text,y.marker)),l.extendFlat(y.textSel,{positions:_},s.textPosition(e,h,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:_},s.textPosition(e,h,y.text,y.markerUnsel))),y.fill&&!d.fill2d&&(d.fill2d=!0),y.marker&&!d.scatter2d&&(d.scatter2d=!0),y.line&&!d.line2d&&(d.line2d=!0),y.text&&!d.glText&&(d.glText=!0),d.lineOptions.push(y.line),d.fillOptions.push(y.fill),d.markerOptions.push(y.marker),d.markerSelectedOptions.push(y.markerSel),d.markerUnselectedOptions.push(y.markerUnsel),d.textOptions.push(y.text),d.textSelectedOptions.push(y.textSel),d.textUnselectedOptions.push(y.textUnsel),d.selectBatch.push([]),d.unselectBatch.push([]),p.x=w,p.y=k,p.rawx=w,p.rawy=k,p.r=m,p.theta=g,p.positions=_,p._scene=d,p.index=d.count,d.count++}})),a(e,t,r)}},e.exports.reglPrecompiled={}},48300:function(e,t,r){"use strict";var n=r(5386).fF,i=r(5386).si,a=r(1426).extendFlat,o=r(82196),s=r(9012),l=o.line;e.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:n(),selected:o.selected,unselected:o.unselected}},30621:function(e,t,r){"use strict";var n=r(92770),i=r(50606).BADNUM,a=r(36922),o=r(75225),s=r(66279),l=r(47761).calcMarkerSize;e.exports=function(e,t){for(var r=e._fullLayout,u=t.subplot,c=r[u].realaxis,f=r[u].imaginaryaxis,d=c.makeCalcdata(t,"real"),h=f.makeCalcdata(t,"imag"),p=t._length,v=new Array(p),m=0;m")}}e.exports={hoverPoints:function(e,t,r,a){var o=n(e,t,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=e.subplot,u=s.cd[s.index],c=s.trace;if(l.isPtInside(u))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(u,c,l,s),s.hovertemplate=c.hovertemplate,o}},makeHoverPointText:i}},85956:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"scattersmith",basePlotModule:r(7504),categories:["smith","symbols","showLegend","scatter-like"],attributes:r(48300),supplyDefaults:r(65269),colorbar:r(4898),formatLabels:r(62047),calc:r(30621),plot:r(12480),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(11350).hoverPoints,selectPoints:r(98002),meta:{}}},12480:function(e,t,r){"use strict";var n=r(32663),i=r(50606).BADNUM,a=r(23893).smith;e.exports=function(e,t,r){for(var o=t.layers.frontplot.select("g.scatterlayer"),s=t.xaxis,l=t.yaxis,u={xaxis:s,yaxis:l,plot:t.framework,layerClipId:t._hasClipOnAxisFalse?t.clipIds.forTraces:null},c=0;c"),o.hovertemplate=d.hovertemplate,a}function x(e,t){g.push(e._hovertitle+": "+t)}}},52979:function(e,t,r){"use strict";e.exports={attributes:r(50413),supplyDefaults:r(46008),colorbar:r(4898),formatLabels:r(93645),calc:r(54337),plot:r(7507),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(47250),selectPoints:r(98002),eventData:r(4524),moduleType:"trace",name:"scatterternary",basePlotModule:r(61639),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}},7507:function(e,t,r){"use strict";var n=r(32663);e.exports=function(e,t,r){var i=t.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=t.xaxis,o=t.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:t._hasClipOnAxisFalse?t.clipIdRelative:null},l=t.layers.frontplot.select("g.scatterlayer"),u=0;ud?b.sizeAvg||Math.max(b.size,3):a(t,x),h=0;ha&&l||i-1,P=!0;if(o(x)||h.selectedpoints||L){var O=h._length;if(h.selectedpoints){v.selectBatch=h.selectedpoints;var I=h.selectedpoints,D={};for(l=0;l1&&(c=v[y-1],d=m[y-1],p=g[y-1]),t=0;tc?"-":"+")+"x")).replace("y",(f>d?"-":"+")+"y")).replace("z",(h>p?"-":"+")+"z");var C=function(){y=0,A=[],S=[],E=[]};(!y||y2?e.slice(1,t-1):2===t?[(e[0]+e[1])/2]:e}function h(e){var t=e.length;return 1===t?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function p(e,t){var r=e.fullSceneLayout,i=e.dataScale,c=t._len,f={};function p(e,t){var n=r[t],o=i[u[t]];return a.simpleMap(e,(function(e){return n.d2l(e)*o}))}if(f.vectors=l(p(t._u,"xaxis"),p(t._v,"yaxis"),p(t._w,"zaxis"),c),!c)return{positions:[],cells:[]};var v=p(t._Xs,"xaxis"),m=p(t._Ys,"yaxis"),g=p(t._Zs,"zaxis");if(f.meshgrid=[v,m,g],f.gridFill=t._gridFill,t._slen)f.startingPositions=l(p(t._startsX,"xaxis"),p(t._startsY,"yaxis"),p(t._startsZ,"zaxis"));else{for(var y=m[0],x=d(v),b=d(g),_=new Array(x.length*b.length),w=0,k=0;k=0};y?(r=Math.min(g.length,b.length),l=function(e){return A(g[e])&&S(e)},f=function(e){return String(g[e])}):(r=Math.min(x.length,b.length),l=function(e){return A(x[e])&&S(e)},f=function(e){return String(x[e])}),w&&(r=Math.min(r,_.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")||x.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:P,eventData:l};m&&(F.x0=E-i.rInscribed*i.rpx1,F.x1=E+i.rInscribed*i.rpx1,F.idealAlign=i.pxmid[0]<0?"left":"right"),g&&(F.x=E,F.idealAlign=E<0?"left":"right");var N=[];o.loneHover(F,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:r,inOut_bbox:N}),l[0].bbox=N[0],p._hasHoverLabel=!0}if(g){var B=e.select("path.surface");d.styleOne(B,i,y,{hovered:!0})}p._hasHoverEvent=!0,r.emit("plotly_hover",{points:l||[f(i,y,d.eventDataKeys)],event:n.event})}})),e.on("mouseout",(function(t){var i=r._fullLayout,a=r._fullData[p.index],s=n.select(this).datum();if(p._hasHoverEvent&&(t.originalEvent=n.event,r.emit("plotly_unhover",{points:[f(s,a,d.eventDataKeys)],event:n.event}),p._hasHoverEvent=!1),p._hasHoverLabel&&(o.loneUnhover(i._hoverlayer.node()),p._hasHoverLabel=!1),g){var l=e.select("path.surface");d.styleOne(l,s,a,{hovered:!1})}})),e.on("click",(function(e){var t=r._fullLayout,a=r._fullData[p.index],s=m&&(u.isHierarchyRoot(e)||u.isLeaf(e)),c=u.getPtId(e),h=u.isEntry(e)?u.findEntryWithChild(v,c):u.findEntryWithLevel(v,c),g=u.getPtId(h),y={points:[f(e,a,d.eventDataKeys)],event:n.event};s||(y.nextLevel=g);var x=l.triggerHandler(r,"plotly_"+p.type+"click",y);if(!1!==x&&t.hovermode&&(r._hoverdata=[f(e,a,d.eventDataKeys)],o.click(r,n.event)),!s&&!1!==x&&!r._dragging&&!r._transitioning){i.call("_storeDirectGUIEdit",a,t._tracePreGUI[a.uid],{level:a.level});var b={data:[{level:g}],traces:[p.index]},_={frame:{redraw:!1,duration:d.transitionTime},transition:{duration:d.transitionTime,easing:d.transitionEasing},mode:"immediate",fromcurrent:!0};o.loneUnhover(t._hoverlayer.node()),i.call("animate",r,b,_)}}))}},2791:function(e,t,r){"use strict";var n=r(71828),i=r(7901),a=r(6964),o=r(53581);function s(e){return e.data.data.pid}t.findEntryWithLevel=function(e,r){var n;return r&&e.eachAfter((function(e){if(t.getPtId(e)===r)return n=e.copy()})),n||e},t.findEntryWithChild=function(e,r){var n;return e.eachAfter((function(e){for(var i=e.children||[],a=0;a0)},t.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0},t.isHeader=function(e,r){return!(t.isLeaf(e)||e.depth===r._maxDepth-1)},t.getParent=function(e,r){return t.findEntryWithLevel(e,s(r))},t.listPath=function(e,r){var n=e.parent;if(!n)return[];var i=r?[n.data[r]]:[n];return t.listPath(n,r).concat(i)},t.getPath=function(e){return t.listPath(e,"label").join("/")+"/"},t.formatValue=o.formatPieValue,t.formatPercent=function(e,t){var r=n.formatPercent(e,0);return"0%"===r&&(r=o.formatPiePercent(e,t)),r}},87619:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"sunburst",basePlotModule:r(66888),categories:[],animatable:!0,attributes:r(57564),layoutAttributes:r(2654),supplyDefaults:r(17094),supplyLayoutDefaults:r(57034),calc:r(52147).calc,crossTraceCalc:r(52147).crossTraceCalc,plot:r(24714).plot,style:r(29969).style,colorbar:r(4898),meta:{}}},2654:function(e){"use strict";e.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57034:function(e,t,r){"use strict";var n=r(71828),i=r(2654);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}r("sunburstcolorway",t.colorway),r("extendsunburstcolors")}},24714:function(e,t,r){"use strict";var n=r(39898),i=r(674),a=r(81684).sX,o=r(91424),s=r(71828),l=r(63893),u=r(72597),c=u.recordMinTextSize,f=u.clearMinTextSize,d=r(14575),h=r(53581).getRotationAngle,p=d.computeTransform,v=d.transformInsideText,m=r(29969).styleOne,g=r(16688).resizeText,y=r(83523),x=r(7055),b=r(2791);function _(e,r,u,f){var d=e._context.staticPlot,g=e._fullLayout,_=!g.uniformtext.mode&&b.hasTransition(f),k=n.select(u).selectAll("g.slice"),T=r[0],M=T.trace,A=T.hierarchy,S=b.findEntryWithLevel(A,M.level),E=b.getMaxDepth(M),C=g._size,L=M.domain,P=C.w*(L.x[1]-L.x[0]),O=C.h*(L.y[1]-L.y[0]),I=.5*Math.min(P,O),D=T.cx=C.l+C.w*(L.x[1]+L.x[0])/2,R=T.cy=C.t+C.h*(1-L.y[0])-O/2;if(!S)return k.remove();var z=null,F={};_&&k.each((function(e){F[b.getPtId(e)]={rpx0:e.rpx0,rpx1:e.rpx1,x0:e.x0,x1:e.x1,transform:e.transform},!z&&b.isEntry(e)&&(z=e)}));var N=function(e){return i.partition().size([2*Math.PI,e.height+1])(e)}(S).descendants(),B=S.height+1,j=0,U=E;T.hasMultipleRoots&&b.isHierarchyRoot(S)&&(N=N.slice(1),B-=1,j=1,U+=1),N=N.filter((function(e){return e.y1<=U}));var V=h(M.rotation);V&&N.forEach((function(e){e.x0+=V,e.x1+=V}));var H=Math.min(B,E),q=function(e){return(e-j)/H*I},W=function(e,t){return[e*Math.cos(t),-e*Math.sin(t)]},G=function(e){return s.pathAnnulus(e.rpx0,e.rpx1,e.x0,e.x1,D,R)},Y=function(e){return D+w(e)[0]*(e.transform.rCenter||0)+(e.transform.x||0)},Z=function(e){return R+w(e)[1]*(e.transform.rCenter||0)+(e.transform.y||0)};(k=k.data(N,b.getPtId)).enter().append("g").classed("slice",!0),_?k.exit().transition().each((function(){var e=n.select(this);e.select("path.surface").transition().attrTween("d",(function(e){var t=function(e){var t,r=b.getPtId(e),n=F[r],i=F[b.getPtId(S)];if(i){var o=(e.x1>i.x1?2*Math.PI:0)+V;t=e.rpx1X?2*Math.PI:0)+V;t={x0:i,x1:i}}else t={rpx0:I,rpx1:I},s.extendFlat(t,J(e));else t={rpx0:0,rpx1:0};else t={x0:V,x1:V};return a(t,n)}(e);return function(e){return G(t(e))}})):f.attr("d",G),u.call(y,S,e,r,{eventDataKeys:x.eventDataKeys,transitionTime:x.CLICK_TRANSITION_TIME,transitionEasing:x.CLICK_TRANSITION_EASING}).call(b.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),f.call(m,i,M);var h=s.ensureSingle(u,"g","slicetext"),w=s.ensureSingle(h,"text","",(function(e){e.attr("data-notex",1)})),k=s.ensureUniformFontSize(e,b.determineTextFont(M,i,g.font));w.text(t.formatSliceLabel(i,S,M,r,g)).classed("slicetext",!0).attr("text-anchor","middle").call(o.font,k).call(l.convertToTspans,e);var A=o.bBox(w.node());i.transform=v(A,i,T),i.transform.targetX=Y(i),i.transform.targetY=Z(i);var E=function(e,t){var r=e.transform;return p(r,t),r.fontSize=k.size,c(M.type,r,g),s.getTextTransform(r)};_?w.transition().attrTween("transform",(function(e){var t=function(e){var t,r=F[b.getPtId(e)],n=e.transform;if(r)t=r;else if(t={rpx1:e.rpx1,transform:{textPosAngle:n.textPosAngle,scale:0,rotate:n.rotate,rCenter:n.rCenter,x:n.x,y:n.y}},z)if(e.parent)if(X){var i=e.x1>X?2*Math.PI:0;t.x0=t.x1=i}else s.extendFlat(t,J(e));else t.x0=t.x1=V;else t.x0=t.x1=V;var o=a(t.transform.textPosAngle,e.transform.textPosAngle),l=a(t.rpx1,e.rpx1),u=a(t.x0,e.x0),f=a(t.x1,e.x1),d=a(t.transform.scale,n.scale),h=a(t.transform.rotate,n.rotate),p=0===n.rCenter?3:0===t.transform.rCenter?1/3:1,v=a(t.transform.rCenter,n.rCenter),m=function(e){return v(Math.pow(e,p))};return function(e){var t=l(e),r=u(e),i=f(e),a=m(e),s={pxmid:W(t,(r+i)/2),rpx1:t,transform:{textPosAngle:o(e),rCenter:a,x:n.x,y:n.y}};return c(M.type,n,g),{transform:{targetX:Y(s),targetY:Z(s),scale:d(e),rotate:h(e),rCenter:a}}}}(e);return function(e){return E(t(e),A)}})):w.attr("transform",E(i,A))}))}function w(e){return t=e.rpx1,r=e.transform.textPosAngle,[t*Math.sin(r),-t*Math.cos(r)];var t,r}t.plot=function(e,t,r,i){var a,o,s=e._fullLayout,l=s._sunburstlayer,u=!r,c=!s.uniformtext.mode&&b.hasTransition(r);f("sunburst",s),(a=l.selectAll("g.trace.sunburst").data(t,(function(e){return e[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),a.order(),c?(i&&(o=i()),n.transition().duration(r.duration).ease(r.easing).each("end",(function(){o&&o()})).each("interrupt",(function(){o&&o()})).each((function(){l.selectAll("g.trace").each((function(t){_(e,t,this,r)}))}))):(a.each((function(t){_(e,t,this,r)})),s.uniformtext.mode&&g(e,s._sunburstlayer.selectAll(".trace"),"sunburst")),u&&a.exit().remove()},t.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||"none"===o))return"";var l=i.separators,u=n[0],c=e.data.data,f=u.hierarchy,d=b.isHierarchyRoot(e),h=b.getParent(f,e),p=b.getValue(e);if(!a){var v,m=o.split("+"),g=function(e){return-1!==m.indexOf(e)},y=[];if(g("label")&&c.label&&y.push(c.label),c.hasOwnProperty("v")&&g("value")&&y.push(b.formatValue(c.v,l)),!d){g("current path")&&y.push(b.getPath(e.data));var x=0;g("percent parent")&&x++,g("percent entry")&&x++,g("percent root")&&x++;var _=x>1;if(x){var w,k=function(e){v=b.formatPercent(w,l),_&&(v+=" of "+e),y.push(v)};g("percent parent")&&!d&&(w=p/b.getValue(h),k("parent")),g("percent entry")&&(w=p/b.getValue(t),k("entry")),g("percent root")&&(w=p/b.getValue(f),k("root"))}}return g("text")&&(v=s.castOption(r,c.i,"text"),s.isValidTextValue(v)&&y.push(v)),y.join("
")}var T=s.castOption(r,c.i,"texttemplate");if(!T)return"";var M={};c.label&&(M.label=c.label),c.hasOwnProperty("v")&&(M.value=c.v,M.valueLabel=b.formatValue(c.v,l)),M.currentPath=b.getPath(e.data),d||(M.percentParent=p/b.getValue(h),M.percentParentLabel=b.formatPercent(M.percentParent,l),M.parent=b.getPtLabel(h)),M.percentEntry=p/b.getValue(t),M.percentEntryLabel=b.formatPercent(M.percentEntry,l),M.entry=b.getPtLabel(t),M.percentRoot=p/b.getValue(f),M.percentRootLabel=b.formatPercent(M.percentRoot,l),M.root=b.getPtLabel(f),c.hasOwnProperty("color")&&(M.color=c.color);var A=s.castOption(r,c.i,"text");return(s.isValidTextValue(A)||""===A)&&(M.text=A),M.customdata=s.castOption(r,c.i,"customdata"),s.texttemplateString(T,M,i._d3locale,M,r._meta||{})}},29969:function(e,t,r){"use strict";var n=r(39898),i=r(7901),a=r(71828),o=r(72597).resizeText;function s(e,t,r){var n=t.data.data,o=!t.children,s=n.i,l=a.castOption(r,s,"marker.line.color")||i.defaultLine,u=a.castOption(r,s,"marker.line.width")||0;e.style("stroke-width",u).call(i.fill,n.color).call(i.stroke,l).style("opacity",o?r.leaf.opacity:null)}e.exports={style:function(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");o(e,t,"sunburst"),t.each((function(e){var t=n.select(this),r=e[0].trace;t.style("opacity",r.opacity),t.selectAll("path.surface").each((function(e){n.select(this).call(s,e,r)}))}))},styleOne:s}},54532:function(e,t,r){"use strict";var n=r(7901),i=r(50693),a=r(12663).axisHoverFormat,o=r(5386).fF,s=r(9012),l=r(1426).extendFlat,u=r(30962).overrideAll;function c(e){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:n.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:n.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var f=e.exports=u(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:c(),y:c(),z:c()},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(e,t,r){"use strict";var n=r(78803);e.exports=function(e,t){t.surfacecolor?n(e,t,{vals:t.surfacecolor,containerStr:"",cLetter:"c"}):n(e,t,{vals:t.z,containerStr:"",cLetter:"c"})}},43768:function(e,t,r){"use strict";var n=r(9330).gl_surface3d,i=r(9330).ndarray,a=r(9330).ndarray_linear_interpolate.d2,o=r(824),s=r(43907),l=r(71828).isArrayOrTypedArray,u=r(81697).parseColorScale,c=r(78614),f=r(21081).extractOpts;function d(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var h=d.prototype;h.getXat=function(e,t,r,n){var i=l(this.data.x)?l(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return void 0===r?i:n.d2l(i,0,r)},h.getYat=function(e,t,r,n){var i=l(this.data.y)?l(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return void 0===r?i:n.d2l(i,0,r)},h.getZat=function(e,t,r,n){var i=this.data.z[t][e];return null===i&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),void 0===r?i:n.d2l(i,0,r)},h.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];null!==o&&void 0!==o&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[i]&&void 0!==s[i][n]?e.textLabel=s[i][n]:e.textLabel=s||"",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.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 v(e,t){if(e0){r=p[n];break}return r}function y(e,t){if(!(e<1||t<1)){for(var r=m(e),n=m(t),i=1,a=0;a_;)r--,r/=g(r),++r1?n:1},h.refineCoords=function(e){for(var t=this.dataScaleX,r=this.dataScaleY,n=e[0].shape[0],a=e[0].shape[1],o=0|Math.floor(e[0].shape[0]*t+1),s=0|Math.floor(e[0].shape[1]*r+1),l=1+n+1,u=1+a+1,c=i(new Float32Array(l*u),[l,u]),f=[1/t,0,0,0,1/r,0,0,0,1],d=0;d0&&null!==this.contourStart[e]&&null!==this.contourEnd[e]&&this.contourEnd[e]>this.contourStart[e]))for(i[e]=!0,t=this.contourStart[e];ta&&(this.minValues[t]=a),this.maxValues[t]",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(e,t,r){"use strict";var n=r(49850),i=r(1426).extendFlat,a=r(92770);function o(e){if(Array.isArray(e)){for(var t=0,r=0;r=t||u===e.length-1)&&(n[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=u,o={firstRowIndex:null,lastRowIndex:null,rows:[]},i+=a,s=u+1,a=0);return n}e.exports=function(e,t){var r=l(t.cells.values),h=function(e){return e.slice(t.header.values.length,e.length)},p=l(t.header.values);p.length&&!p[0].length&&(p[0]=[""],p=l(p));var v=p.concat(h(r).map((function(){return u((p[0]||[""]).length)}))),m=t.domain,g=Math.floor(e._fullLayout._size.w*(m.x[1]-m.x[0])),y=Math.floor(e._fullLayout._size.h*(m.y[1]-m.y[0])),x=t.header.values.length?v[0].map((function(){return t.header.height})):[n.emptyHeaderHeight],b=r.length?r[0].map((function(){return t.cells.height})):[],_=x.reduce(s,0),w=d(b,y-_+n.uplift),k=f(d(x,_),[]),T=f(w,k),M={},A=t._fullInput.columnorder.concat(h(r.map((function(e,t){return t})))),S=v.map((function(e,r){var n=Array.isArray(t.columnwidth)?t.columnwidth[Math.min(r,t.columnwidth.length-1)]:t.columnwidth;return a(n)?Number(n):1})),E=S.reduce(s,0);S=S.map((function(e){return e/E*g}));var C=Math.max(o(t.header.line.width),o(t.cells.line.width)),L={key:t.uid+e._context.staticPlot,translateX:m.x[0]*e._fullLayout._size.w,translateY:e._fullLayout._size.h*(1-m.y[1]),size:e._fullLayout._size,width:g,maxLineWidth:C,height:y,columnOrder:A,groupHeight:y,rowBlocks:T,headerRowBlocks:k,scrollY:0,cells:i({},t.cells,{values:r}),headerCells:i({},t.header,{values:v}),gdColumns:v.map((function(e){return e[0]})),gdColumnsOriginalOrder:v.map((function(e){return e[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:v.map((function(e,t){var r=M[e];return M[e]=(r||0)+1,{key:e+"__"+M[e],label:e,specIndex:t,xIndex:A[t],xScale:c,x:void 0,calcdata:void 0,columnWidth:S[t]}}))};return L.columns.forEach((function(e){e.calcdata=L,e.x=c(e)})),L}},56269:function(e,t,r){"use strict";var n=r(1426).extendFlat;t.splitToPanels=function(e){var t=[0,0],r=n({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:n({},e.calcdata,{cells:e.calcdata.headerCells})});return[n({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),n({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),r]},t.splitToCells=function(e){var t=function(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}(e);return(e.values||[]).slice(t[0],t[1]).map((function(r,n){return{keyWithinBlock:n+("string"===typeof r&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}}))}},39754:function(e,t,r){"use strict";var n=r(71828),i=r(44464),a=r(27670).c;e.exports=function(e,t,r,o){function s(r,a){return n.coerce(e,t,i,r,a)}a(t,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"),n.coerceFont(s,"header.font",n.extendFlat({},o.font)),function(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort((function(e,t){return e-t})),o=i.map((function(e){return a.indexOf(e)})),s=o.length;s/i),l=!o||s;e.mayHaveMarkup=o&&i.match(/[<&>]/);var u,c="string"===typeof(u=i)&&u.match(n.latexCheck);e.latex=c;var f,d,h=c?"":k(e.calcdata.cells.prefix,t,r)||"",p=c?"":k(e.calcdata.cells.suffix,t,r)||"",v=c?null:k(e.calcdata.cells.format,t,r)||null,m=h+(v?a(v)(e.value):e.value)+p;if(e.wrappingNeeded=!e.wrapped&&!l&&!c&&(f=w(m)),e.cellHeightMayIncrease=s||c||e.mayHaveMarkup||(void 0===f?w(m):f),e.needsConvertToTspans=e.mayHaveMarkup||e.wrappingNeeded||e.latex,e.wrappingNeeded){var g=(" "===n.wrapSplitCharacter?m.replace(/i&&n.push(a),i+=l}return n}(i,l,s);1===u.length&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each((function(e,t){e.page=u[t],e.scrollY=l})),t.attr("transform",(function(e){var t=R(e.rowBlocks,e.page)-e.scrollY;return c(0,t)})),e&&(L(e,r,t,u,n.prevPages,n,0),L(e,r,t,u,n.prevPages,n,1),x(r,e))}}function C(e,t,r,a){return function(o){var s=o.calcdata?o.calcdata:o,l=t.filter((function(e){return s.key===e.key})),u=r||s.scrollbarState.dragMultiplier,c=s.scrollY;s.scrollY=void 0===a?s.scrollY+u*i.event.dy:a;var f=l.selectAll("."+n.cn.yColumn).selectAll("."+n.cn.columnBlock).filter(M);return E(e,f,l),s.scrollY===c}}function L(e,t,r,n,i,a,o){n[o]!==i[o]&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout((function(){var a=r.filter((function(e,t){return t===o&&n[t]!==i[t]}));b(e,t,a,r),i[o]=n[o]})))}function P(e,t,r,a){return function(){var o=i.select(t.parentNode);o.each((function(e){var t=e.fragments;o.selectAll("tspan.line").each((function(e,r){t[r].width=this.getComputedTextLength()}));var r,i,a=t[t.length-1].width,s=t.slice(0,-1),l=[],u=0,c=e.column.columnWidth-2*n.cellPad;for(e.value="";s.length;)u+(i=(r=s.shift()).width+a)>c&&(e.value+=l.join(n.wrapSpacer)+n.lineBreaker,l=[],u=0),l.push(r.text),u+=i;u&&(e.value+=l.join(n.wrapSpacer)),e.wrapped=!0})),o.selectAll("tspan.line").remove(),_(o.select("."+n.cn.cellText),r,e,a),i.select(t.parentNode.parentNode).call(D)}}function O(e,t,r,a,o){return function(){if(!o.settledY){var s=i.select(t.parentNode),l=N(o),u=o.key-l.firstRowIndex,f=l.rows[u].rowHeight,d=o.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*n.cellPad:f,h=Math.max(d,f);h-l.rows[u].rowHeight&&(l.rows[u].rowHeight=h,e.selectAll("."+n.cn.columnCell).call(D),E(null,e.filter(M),0),x(r,a,!0)),s.attr("transform",(function(){var e=this,t=e.parentNode.getBoundingClientRect(),r=i.select(e.parentNode).select("."+n.cn.cellRect).node().getBoundingClientRect(),a=e.transform.baseVal.consolidate(),s=r.top-t.top+(a?a.matrix.f:n.cellPad);return c(I(o,i.select(e.parentNode).select("."+n.cn.cellTextHolder).node().getBoundingClientRect().width),s)})),o.settledY=!0}}}function I(e,t){switch(e.align){case"left":default:return n.cellPad;case"right":return e.column.columnWidth-(t||0)-n.cellPad;case"center":return(e.column.columnWidth-(t||0))/2}}function D(e){e.attr("transform",(function(e){var t=e.rowBlocks[0].auxiliaryBlocks.reduce((function(e,t){return e+z(t,1/0)}),0),r=z(N(e),e.key);return c(0,r+t)})).selectAll("."+n.cn.cellRect).attr("height",(function(e){return(t=N(e),r=e.key,t.rows[r-t.firstRowIndex]).rowHeight;var t,r}))}function R(e,t){for(var r=0,n=t-1;n>=0;n--)r+=F(e[n]);return r}function z(e,t){for(var r=0,n=0;n","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:c({},s.textfont,{}),editType:"calc"},text:s.text,textinfo:l.textinfo,texttemplate:i({editType:"plot"},{keys:u.eventDataKeys.concat(["label","value"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:n({},{keys:u.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:c({},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(e,t,r){"use strict";var n=r(74875);t.name="treemap",t.plot=function(e,r,i,a){n.plotBasePlot(t.name,e,r,i,a)},t.clean=function(e,r,i,a){n.cleanBasePlot(t.name,e,r,i,a)}},65039:function(e,t,r){"use strict";var n=r(52147);t.y=function(e,t){return n.calc(e,t)},t.T=function(e){return n._runCrossTraceCalc("treemap",e)}},43473:function(e){"use strict";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}},91174:function(e,t,r){"use strict";var n=r(71828),i=r(45802),a=r(7901),o=r(27670).c,s=r(90769).handleText,l=r(97313).TEXTPAD,u=r(21081),c=u.hasColorscale,f=u.handleDefaults;e.exports=function(e,t,r,u){function d(r,a){return n.coerce(e,t,i,r,a)}var h=d("labels"),p=d("parents");if(h&&h.length&&p&&p.length){var v=d("values");v&&v.length?d("branchvalues"):d("count"),d("level"),d("maxdepth"),"squarify"===d("tiling.packing")&&d("tiling.squarifyratio"),d("tiling.flip"),d("tiling.pad");var m=d("text");d("texttemplate"),t.texttemplate||d("textinfo",Array.isArray(m)?"text+label":"label"),d("hovertext"),d("hovertemplate");var g=d("pathbar.visible");s(e,t,u,d,"auto",{hasPathbar:g,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),d("textposition");var y=-1!==t.textposition.indexOf("bottom");d("marker.line.width")&&d("marker.line.color",u.paper_bgcolor);var x=d("marker.colors");(t._hasColorscale=c(e,"marker","colors")||(e.marker||{}).coloraxis)?f(e,t,u,d,{prefix:"marker.",cLetter:"c"}):d("marker.depthfade",!(x||[]).length);var b=2*t.textfont.size;d("marker.pad.t",y?b/4:b),d("marker.pad.l",b/4),d("marker.pad.r",b/4),d("marker.pad.b",y?b:b/4),d("marker.cornerradius"),t._hovered={marker:{line:{width:2,color:a.contrast(u.paper_bgcolor)}}},g&&(d("pathbar.thickness",t.pathbar.textfont.size+2*l),d("pathbar.side"),d("pathbar.edgeshape")),d("sort"),d("root.color"),o(t,u,d),t._length=null}else t.visible=!1}},80694:function(e,t,r){"use strict";var n=r(39898),i=r(2791),a=r(72597).clearMinTextSize,o=r(16688).resizeText,s=r(46650);e.exports=function(e,t,r,l,u){var c,f,d=u.type,h=u.drawDescendants,p=e._fullLayout,v=p["_"+d+"layer"],m=!r;a(d,p),(c=v.selectAll("g.trace."+d).data(t,(function(e){return e[0].trace.uid}))).enter().append("g").classed("trace",!0).classed(d,!0),c.order(),!p.uniformtext.mode&&i.hasTransition(r)?(l&&(f=l()),n.transition().duration(r.duration).ease(r.easing).each("end",(function(){f&&f()})).each("interrupt",(function(){f&&f()})).each((function(){v.selectAll("g.trace").each((function(t){s(e,t,this,r,h)}))}))):(c.each((function(t){s(e,t,this,r,h)})),p.uniformtext.mode&&o(e,v.selectAll(".trace"),d)),m&&c.exit().remove()}},66209:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(91424),o=r(63893),s=r(37210),l=r(96362).styleOne,u=r(43473),c=r(2791),f=r(83523),d=!0;e.exports=function(e,t,r,h,p){var v=p.barDifY,m=p.width,g=p.height,y=p.viewX,x=p.viewY,b=p.pathSlice,_=p.toMoveInsideSlice,w=p.strTransform,k=p.hasTransition,T=p.handleSlicesExit,M=p.makeUpdateSliceInterpolator,A=p.makeUpdateTextInterpolator,S={},E=e._context.staticPlot,C=e._fullLayout,L=t[0],P=L.trace,O=L.hierarchy,I=m/P._entryDepth,D=c.listPath(r.data,"id"),R=s(O.copy(),[m,g],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(R=R.filter((function(e){var t=D.indexOf(e.data.id);return-1!==t&&(e.x0=I*t,e.x1=I*(t+1),e.y0=v,e.y1=v+g,e.onPathbar=!0,!0)}))).reverse(),(h=h.data(R,c.getPtId)).enter().append("g").classed("pathbar",!0),T(h,d,S,[m,g],b),h.order();var z=h;k&&(z=z.transition().each("end",(function(){var t=n.select(this);c.setSliceCursor(t,e,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),z.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=y(s.x1-Math.min(m,g)/2),s._hoverY=x(s.y1-g/2);var h=n.select(this),p=i.ensureSingle(h,"path","surface",(function(e){e.style("pointer-events",E?"none":"all")}));k?p.transition().attrTween("d",(function(e){var t=M(e,d,S,[m,g]);return function(e){return b(t(e))}})):p.attr("d",b),h.call(f,r,e,t,{styleOne:l,eventDataKeys:u.eventDataKeys,transitionTime:u.CLICK_TRANSITION_TIME,transitionEasing:u.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,e,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:e._transitioning}),p.call(l,s,P,{hovered:!1}),s._text=(c.getPtLabel(s)||"").split("
").join(" ")||"";var v=i.ensureSingle(h,"g","slicetext"),T=i.ensureSingle(v,"text","",(function(e){e.attr("data-notex",1)})),L=i.ensureUniformFontSize(e,c.determineTextFont(P,s,C.font,{onPathbar:!0}));T.text(s._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(a.font,L).call(o.convertToTspans,e),s.textBB=a.bBox(T.node()),s.transform=_(s,{fontSize:L.size,onPathbar:!0}),s.transform.fontSize=L.size,k?T.transition().attrTween("transform",(function(e){var t=A(e,d,S,[m,g]);return function(e){return w(t(e))}})):T.attr("transform",w(s))}))}},52583:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(91424),o=r(63893),s=r(37210),l=r(96362).styleOne,u=r(43473),c=r(2791),f=r(83523),d=r(24714).formatSliceLabel,h=!1;e.exports=function(e,t,r,p,v){var m=v.width,g=v.height,y=v.viewX,x=v.viewY,b=v.pathSlice,_=v.toMoveInsideSlice,w=v.strTransform,k=v.hasTransition,T=v.handleSlicesExit,M=v.makeUpdateSliceInterpolator,A=v.makeUpdateTextInterpolator,S=v.prevEntry,E=e._context.staticPlot,C=e._fullLayout,L=t[0].trace,P=-1!==L.textposition.indexOf("left"),O=-1!==L.textposition.indexOf("right"),I=-1!==L.textposition.indexOf("bottom"),D=!I&&!L.marker.pad.t||I&&!L.marker.pad.b,R=s(r,[m,g],{packing:L.tiling.packing,squarifyratio:L.tiling.squarifyratio,flipX:L.tiling.flip.indexOf("x")>-1,flipY:L.tiling.flip.indexOf("y")>-1,pad:{inner:L.tiling.pad,top:L.marker.pad.t,left:L.marker.pad.l,right:L.marker.pad.r,bottom:L.marker.pad.b}}).descendants(),z=1/0,F=-1/0;R.forEach((function(e){var t=e.depth;t>=L._maxDepth?(e.x0=e.x1=(e.x0+e.x1)/2,e.y0=e.y1=(e.y0+e.y1)/2):(z=Math.min(z,t),F=Math.max(F,t))})),p=p.data(R,c.getPtId),L._maxVisibleLayers=isFinite(F)?F-z+1:0,p.enter().append("g").classed("slice",!0),T(p,h,{},[m,g],b),p.order();var N=null;if(k&&S){var B=c.getPtId(S);p.each((function(e){null===N&&c.getPtId(e)===B&&(N={x0:e.x0,x1:e.x1,y0:e.y0,y1:e.y1})}))}var j=function(){return N||{x0:0,x1:m,y0:0,y1:g}},U=p;return k&&(U=U.transition().each("end",(function(){var t=n.select(this);c.setSliceCursor(t,e,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),U.each((function(s){var p=c.isHeader(s,L);s._x0=y(s.x0),s._x1=y(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=y(s.x1-L.marker.pad.r),s._hoverY=x(I?s.y1-L.marker.pad.b/2:s.y0+L.marker.pad.t/2);var v=n.select(this),T=i.ensureSingle(v,"path","surface",(function(e){e.style("pointer-events",E?"none":"all")}));k?T.transition().attrTween("d",(function(e){var t=M(e,h,j(),[m,g]);return function(e){return b(t(e))}})):T.attr("d",b),v.call(f,r,e,t,{styleOne:l,eventDataKeys:u.eventDataKeys,transitionTime:u.CLICK_TRANSITION_TIME,transitionEasing:u.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,e,{isTransitioning:e._transitioning}),T.call(l,s,L,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=p?D?"":c.getPtLabel(s)||"":d(s,r,L,t,C)||"";var S=i.ensureSingle(v,"g","slicetext"),R=i.ensureSingle(S,"text","",(function(e){e.attr("data-notex",1)})),z=i.ensureUniformFontSize(e,c.determineTextFont(L,s,C.font));R.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":P||p?"start":"middle").call(a.font,z).call(o.convertToTspans,e),s.textBB=a.bBox(R.node()),s.transform=_(s,{fontSize:z.size,isHeader:p}),s.transform.fontSize=z.size,k?R.transition().attrTween("transform",(function(e){var t=A(e,h,j(),[m,g]);return function(e){return w(t(e))}})):R.attr("transform",w(s))})),N}},14102:function(e){"use strict";e.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o-1?L+I:-(O+I):0,R={x0:P,x1:P,y0:D,y1:D+O},z=function(e,t,r){var n=g.tiling.pad,i=function(e){return e-n<=t.x0},a=function(e){return e+n>=t.x1},o=function(e){return e-n<=t.y0},s=function(e){return e+n>=t.y1};return e.x0===t.x0&&e.x1===t.x1&&e.y0===t.y0&&e.y1===t.y1?{x0:e.x0,x1:e.x1,y0:e.y0,y1:e.y1}:{x0:i(e.x0-n)?0:a(e.x0-n)?r[0]:e.x0,x1:i(e.x1+n)?0:a(e.x1+n)?r[0]:e.x1,y0:o(e.y0-n)?0:s(e.y0-n)?r[1]:e.y0,y1:o(e.y1+n)?0:s(e.y1+n)?r[1]:e.y1}},F=null,N={},B={},j=null,U=function(e,t){return t?N[d(e)]:B[d(e)]},V=function(e,t,r,n){if(t)return N[d(x)]||R;var i=B[g.level]||r;return function(e){return e.data.depth-b.data.depth=(n-=(y?te:te.r)-s)){var h=(r+n)/2;r=h,n=h}var p;oe?i<(p=a-(y?te:te.b))&&p"===ee?(l.x-=a,u.x-=a,c.x-=a,f.x-=a):"/"===ee?(c.x-=a,f.x-=a,o.x-=a/2,s.x-=a/2):"\\"===ee?(l.x-=a,u.x-=a,o.x-=a/2,s.x-=a/2):"<"===ee&&(o.x-=a,s.x-=a),Q(l),Q(f),Q(o),Q(u),Q(c),Q(s),"M"+$(l.x,l.y)+"L"+$(u.x,u.y)+"L"+$(s.x,s.y)+"L"+$(c.x,c.y)+"L"+$(f.x,f.y)+"L"+$(o.x,o.y)+"Z"},toMoveInsideSlice:se,makeUpdateSliceInterpolator:ue,makeUpdateTextInterpolator:ce,handleSlicesExit:fe,hasTransition:M,strTransform:de}):w.remove()}},96362:function(e,t,r){"use strict";var n=r(39898),i=r(7901),a=r(71828),o=r(2791),s=r(72597).resizeText;function l(e,t,r,n){var s,l,u=(n||{}).hovered,c=t.data.data,f=c.i,d=c.color,h=o.isHierarchyRoot(t),p=1;if(u)s=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(h&&d===r.root.color)p=100,s="rgba(0,0,0,0)",l=0;else if(s=a.castOption(r,f,"marker.line.color")||i.defaultLine,l=a.castOption(r,f,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var v=r.marker.depthfade;if(v){var m,g=i.combine(i.addOpacity(r._backgroundColor,.75),d);if(!0===v){var y=o.getMaxDepth(r);m=isFinite(y)?o.isLeaf(t)?0:r._maxVisibleLayers-(t.data.depth-r._entryDepth):t.data.height+1}else m=t.data.depth-r._entryDepth,r._atRootLevel||m++;if(m>0)for(var x=0;x0){var b,_,w,k,T,M=e.xa,A=e.ya;"h"===p.orientation?(T=t,b="y",w=A,_="x",k=M):(T=r,b="x",w=M,_="y",k=A);var S=h[e.index];if(T>=S.span[0]&&T<=S.span[1]){var E=i.extendFlat({},e),C=k.c2p(T,!0),L=s.getKdeValue(S,p,T),P=s.getPositionOnKdePath(S,p,C),O=w._offset,I=w._length;E[b+"0"]=P[0],E[b+"1"]=P[1],E[_+"0"]=E[_+"1"]=C,E[_+"Label"]=_+": "+a.hoverLabelText(k,T,p[_+"hoverformat"])+", "+h[0].t.labels.kde+" "+L.toFixed(3);for(var D=0,R=0;R")),c.color=function(e,t){var r=e[t.dir].marker,n=r.color,a=r.line.color,o=r.line.width;return i(n)?n:i(a)&&o?a:void 0}(d,m),[c]}function T(e){return n(v,e,d[p+"hoverformat"])}}},19990:function(e,t,r){"use strict";e.exports={attributes:r(43037),layoutAttributes:r(13494),supplyDefaults:r(83266).supplyDefaults,crossTraceDefaults:r(83266).crossTraceDefaults,supplyLayoutDefaults:r(5176),calc:r(52752),crossTraceCalc:r(70766),plot:r(30436),style:r(55750).style,hoverPoints:r(61326),eventData:r(58593),selectPoints:r(81974),moduleType:"trace",name:"waterfall",basePlotModule:r(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},13494:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(13494);e.exports=function(e,t,r){var a=!1;function o(r,a){return n.coerce(e,t,i,r,a)}for(var s=0;s0&&(m+=d?"M"+f[0]+","+p[1]+"V"+p[0]:"M"+f[1]+","+p[0]+"H"+f[0]),"between"!==h&&(r.isSum||s path").each((function(e){if(!e.isBlank){var t=s[e.dir].marker;n.select(this).call(a.fill,t.color).call(a.stroke,t.line.color).call(i.dashLine,t.line.dash,t.line.width).style("opacity",s.selectedpoints&&!e.selected?o:1)}})),u(r,s,e),r.selectAll(".lines").each((function(){var e=s.connector.line;i.lineGroupStyle(n.select(this).selectAll("path"),e.width,e.color,e.dash)}))}))}}},82887:function(e,t,r){"use strict";var n=r(89298),i=r(71828),a=r(86281),o=r(79344).p,s=r(50606).BADNUM;t.moduleType="transform",t.name="aggregate";var l=t.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"},u=l.aggregations;function c(e,t,r,a){if(a.enabled){for(var o=a.target,l=i.nestedProperty(t,o),u=l.get(),c=function(e,t){var r=e.func,n=t.d2c,a=t.c2d;switch(r){case"count":return f;case"first":return d;case"last":return h;case"sum":return function(e,t){for(var r=0,i=0;ii&&(i=c,o=u)}}return i?a(o):s};case"rms":return function(e,t){for(var r=0,i=0,o=0;o":return function(e){return d(e)>s};case">=":return function(e){return d(e)>=s};case"[]":return function(e){var t=d(e);return t>=s[0]&&t<=s[1]};case"()":return function(e){var t=d(e);return t>s[0]&&t=s[0]&&ts[0]&&t<=s[1]};case"][":return function(e){var t=d(e);return t<=s[0]||t>=s[1]};case")(":return function(e){var t=d(e);return ts[1]};case"](":return function(e){var t=d(e);return t<=s[0]||t>s[1]};case")[":return function(e){var t=d(e);return t=s[1]};case"{}":return function(e){return-1!==s.indexOf(d(e))};case"}{":return function(e){return-1===s.indexOf(d(e))}}}(r,a.getDataToCoordFunc(e,t,s,i),d),x={},b={},_=0;p?(m=function(e){x[e.astr]=n.extendDeep([],e.get()),e.set(new Array(f))},g=function(e,t){var r=x[e.astr][t];e.get()[t]=r}):(m=function(e){x[e.astr]=n.extendDeep([],e.get()),e.set([])},g=function(e,t){var r=x[e.astr][t];e.get().push(r)}),T(m);for(var w=o(t.transforms,r),k=0;k1?"%{group} (%{trace})":"%{group}");var l=e.styles,u=o.styles=[];if(l)for(a=0;ad)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,p.prototype),t}function p(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return g(e)}return v(e,t,r)}function v(e,t,r){if("string"===typeof e)return function(e,t){if("string"===typeof t&&""!==t||(t="utf8"),!p.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|_(e,t),n=h(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(te(e,Uint8Array)){var t=new Uint8Array(e);return x(t.buffer,t.byteOffset,t.byteLength)}return y(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e));if(te(e,ArrayBuffer)||e&&te(e.buffer,ArrayBuffer))return x(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(te(e,SharedArrayBuffer)||e&&te(e.buffer,SharedArrayBuffer)))return x(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return p.from(n,t,r);var i=function(e){if(p.isBuffer(e)){var t=0|b(e.length),r=h(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!==typeof e.length||re(e.length)?h(0):y(e):"Buffer"===e.type&&Array.isArray(e.data)?y(e.data):void 0}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return p.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e))}function m(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function g(e){return m(e),h(e<0?0:0|b(e))}function y(e){for(var t=e.length<0?0:0|b(e.length),r=h(t),n=0;n=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return 0|e}function _(e,t){if(p.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||te(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(e));var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return J(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Q(e).length;default:if(i)return n?-1:J(e).length;t=(""+t).toLowerCase(),i=!0}}function w(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return z(this,t,r);case"utf8":case"utf-8":return O(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return P(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function k(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function T(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),re(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=p.from(t,n)),p.isBuffer(t))return 0===t.length?-1:M(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):M(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function M(e,t,r,n,i){var a,o=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,l/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var c=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){for(var f=!0,d=0;di&&(n=i):n=i;var a,o=t.length;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function P(e,t,r){return 0===t&&r===e.length?u.fromByteArray(e):u.fromByteArray(e.slice(t,r))}function O(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,u=void 0,c=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=e[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=e[i+1],u=e[i+2],128===(192&l)&&128===(192&u)&&(f=(15&a)<<12|(63&l)<<6|63&u)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],128===(192&l)&&128===(192&u)&&128===(192&c)&&(f=(15&a)<<18|(63&l)<<12|(63&u)<<6|63&c)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=s}return function(e){var t=e.length;if(t<=I)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},p.byteLength=_,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;tr&&(e+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(e,t,r,n,i){if(te(e,Uint8Array)&&(e=p.from(e,e.offset,e.byteLength)),!p.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(e));if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0),s=Math.min(a,o),u=this.slice(n,i),c=e.slice(t,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return A(this,e,t,r);case"utf8":case"utf-8":return S(this,e,t,r);case"ascii":case"latin1":case"binary":return E(this,e,t,r);case"base64":return C(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,r,n,i,a){if(!p.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function j(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,r}function U(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o>>=8,e[r+2]=o,o>>=8,e[r+1]=o,o>>=8,e[r]=o,r+8}function V(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function H(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,4),c.write(e,t,r,n,23,4),r+4}function q(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,8),c.write(e,t,r,n,52,8),r+8}p.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},p.prototype.readUint8=p.prototype.readUInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),this[e]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]|this[e+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]<<8|this[e+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},p.prototype.readBigUInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,24),i=this[++e]+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e],i=this[++e]*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+r;return(BigInt(n)<>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},p.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||N(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},p.prototype.readInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},p.prototype.readInt16LE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt16BE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},p.prototype.readInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},p.prototype.readBigInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=this[e+4]+this[e+5]*Math.pow(2,8)+this[e+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=(t<<24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e];return(BigInt(n)<>>=0,t||N(e,4,this.length),c.read(this,e,!0,23,4)},p.prototype.readFloatBE=function(e,t){return e>>>=0,t||N(e,4,this.length),c.read(this,e,!1,23,4)},p.prototype.readDoubleLE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!0,52,8)},p.prototype.readDoubleBE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},p.prototype.writeUint8=p.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,255,0),this[t]=255&e,t+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigUInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},p.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},p.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},p.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},p.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(e,t,r){return H(this,e,t,!0,r)},p.prototype.writeFloatBE=function(e,t,r){return H(this,e,t,!1,r)},p.prototype.writeDoubleLE=function(e,t,r){return q(this,e,t,!0,r)},p.prototype.writeDoubleBE=function(e,t,r){return q(this,e,t,!1,r)},p.prototype.copy=function(e,t,r,n){if(!p.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(a=t;a=n+4;r-=3)t="_".concat(e.slice(r-3,r)).concat(t);return"".concat(e.slice(0,r)).concat(t)}function Z(e,t,r,n,i,a){if(e>r||e3?0===t||t===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(t).concat(s," and <= ").concat(r).concat(s),new W.ERR_OUT_OF_RANGE("value",o,e)}!function(e,t,r){X(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||K(t,e.length-(r+1))}(n,i,a)}function X(e,t){if("number"!==typeof e)throw new W.ERR_INVALID_ARG_TYPE(t,"number",e)}function K(e,t,r){if(Math.floor(e)!==e)throw X(e,r),new W.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new W.ERR_BUFFER_OUT_OF_BOUNDS;throw new W.ERR_OUT_OF_RANGE(r||"offset",">= ".concat(r?1:0," and <= ").concat(t),e)}G("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?"".concat(e," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),G("ERR_INVALID_ARG_TYPE",(function(e,t){return'The "'.concat(e,'" argument must be of type number. Received type ').concat(l(t))}),TypeError),G("ERR_OUT_OF_RANGE",(function(e,t,r){var n='The value of "'.concat(e,'" is out of range.'),i=r;return Number.isInteger(r)&&Math.abs(r)>Math.pow(2,32)?i=Y(String(r)):"bigint"===typeof r&&(i=String(r),(r>Math.pow(BigInt(2),BigInt(32))||r<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),n+=" It must be ".concat(t,". Received ").concat(i)}),RangeError);var $=/[^+/0-9A-Za-z-_]/g;function J(e,t){var r;t=t||1/0;for(var n=e.length,i=null,a=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Q(e){return u.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace($,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function ee(e,t,r,n){var i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function te(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function re(e){return e!==e}var ne=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)t[n+i]=e[r]+e[i];return t}();function ie(e){return"undefined"===typeof BigInt?ae:e}function ae(){throw new Error("BigInt not supported")}},2321:function(e){"use strict";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var t=/(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,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(e){e||(e={});var i=e.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=t.test(i)&&!r.test(i)||!!e.tablet&&n.test(i);return!a&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},3910:function(e,t){"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=s(e),o=a[0],l=a[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,o,l)),c=0,f=l>0?o-4:o;for(r=0;r>16&255,u[c++]=t>>8&255,u[c++]=255&t;return 2===l&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[c++]=255&t),1===l&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[c++]=t>>8&255,u[c++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=16383,s=0,u=n-i;su?u:s+o));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function l(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},3187:function(e,t){t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,l=(1<>1,c=-7,f=r?i-1:0,d=r?-1:1,h=e[t+f];for(f+=d,a=h&(1<<-c)-1,h>>=-c,c+=s;c>0;a=256*a+e[t+f],f+=d,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+e[t+f],f+=d,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,n),a-=u}return(h?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:a-1,p=n?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+f>=1?d/l:d*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+h]=255&s,h+=p,s/=256,i-=8);for(o=o<0;e[r+h]=255&o,h+=p,o/=256,u-=8);e[r+h-p]|=128*v}},1152:function(e,t,r){"use strict";e.exports=function(e){var t=(e=e||{}).eye||[0,0,1],r=e.center||[0,0,0],s=e.up||[0,1,0],l=e.distanceLimits||[0,1/0],u=e.mode||"turntable",c=n(),f=i(),d=a();return c.setDistanceLimits(l[0],l[1]),c.lookAt(0,t,r,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,t,r,s),d.setDistanceLimits(l[0],l[1]),d.lookAt(0,t,r,s),new o({turntable:c,orbit:f,matrix:d},u)};var n=r(3440),i=r(7774),a=r(9298);function o(e,t){this._controllerNames=Object.keys(e),this._controllerList=this._controllerNames.map((function(t){return e[t]})),this._mode=t,this._active=e[t],this._active||(this._mode="turntable",this._active=e.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(e){for(var t=this._controllerList,r=0;r0?u=u.ushln(f):f<0&&(c=c.ushln(-f)),s(u,c)}},234:function(e,t,r){"use strict";var n=r(3218);e.exports=function(e){return Array.isArray(e)&&2===e.length&&n(e[0])&&n(e[1])}},4275:function(e,t,r){"use strict";var n=r(1928);e.exports=function(e){return e.cmp(new n(0))}},9958:function(e,t,r){"use strict";var n=r(4275);e.exports=function(e){var t=e.length,r=e.words,i=0;if(1===t)i=r[0];else if(2===t)i=r[0]+67108864*r[1];else for(var a=0;a20?52:r+32}},3218:function(e,t,r){"use strict";r(1928),e.exports=function(e){return e&&"object"===typeof e&&Boolean(e.words)}},5514:function(e,t,r){"use strict";var n=r(1928),i=r(8362);e.exports=function(e){var t=i.exponent(e);return t<52?new n(e):new n(e*Math.pow(2,52-t)).ushln(t-52)}},8524:function(e,t,r){"use strict";var n=r(5514),i=r(4275);e.exports=function(e,t){var r=i(e),a=i(t);if(0===r)return[n(0),n(1)];if(0===a)return[n(0),n(0)];a<0&&(e=e.neg(),t=t.neg());var o=e.gcd(t);return o.cmpn(1)?[e.div(o),t.div(o)]:[e,t]}},2813:function(e,t,r){"use strict";var n=r(1928);e.exports=function(e){return new n(e)}},3962:function(e,t,r){"use strict";var n=r(8524);e.exports=function(e,t){return n(e[0].mul(t[0]),e[1].mul(t[1]))}},4951:function(e,t,r){"use strict";var n=r(4275);e.exports=function(e){return n(e[0])*n(e[1])}},4354:function(e,t,r){"use strict";var n=r(8524);e.exports=function(e,t){return n(e[0].mul(t[1]).sub(e[1].mul(t[0])),e[1].mul(t[1]))}},7999:function(e,t,r){"use strict";var n=r(9958),i=r(1112);e.exports=function(e){var t=e[0],r=e[1];if(0===t.cmpn(0))return 0;var a=t.abs().divmod(r.abs()),o=a.div,s=n(o),l=a.mod,u=t.negative!==r.negative?-1:1;if(0===l.cmpn(0))return u*s;if(s){var c=i(s)+4;return u*(s+(d=n(l.ushln(c).divRound(r)))*Math.pow(2,-c))}var f=r.bitLength()-l.bitLength()+53,d=n(l.ushln(f).divRound(r));return f<1023?u*d*Math.pow(2,-f):u*(d*=Math.pow(2,-1023))*Math.pow(2,1023-f)}},5070:function(e){"use strict";function t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>=0?(a=o,i=o-1):n=o+1}return a}function r(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>0?(a=o,i=o-1):n=o+1}return a}function n(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<0?(a=o,n=o+1):i=o-1}return a}function i(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<=0?(a=o,n=o+1):i=o-1}return a}function a(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=void 0!==r?r(o,t):o-t;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(e,t,r,n,i,a){return"function"===typeof r?a(e,t,r,void 0===n?0:0|n,void 0===i?e.length-1:0|i):a(e,t,void 0,void 0===r?0:0|r,void 0===n?e.length-1:0|n)}e.exports={ge:function(e,r,n,i,a){return o(e,r,n,i,a,t)},gt:function(e,t,n,i,a){return o(e,t,n,i,a,r)},lt:function(e,t,r,i,a){return o(e,t,r,i,a,n)},le:function(e,t,r,n,a){return o(e,t,r,n,a,i)},eq:function(e,t,r,n,i){return o(e,t,r,n,i,a)}}},2288:function(e,t){"use strict";function r(e){var t=32;return(e&=-e)&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}t.INT_BITS=32,t.INT_MAX=2147483647,t.INT_MIN=-1<<31,t.sign=function(e){return(e>0)-(e<0)},t.abs=function(e){var t=e>>31;return(e^t)-t},t.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=r=((e>>>=t)>255)<<3,t|=r=((e>>>=r)>15)<<2,(t|=r=((e>>>=r)>3)<<1)|(e>>>=r)>>1},t.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},t.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},t.countTrailingZeros=r,t.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},t.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=n<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},t.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},t.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},t.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},t.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},1928:function(e,t,r){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function a(e,t,r){if(a.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var o;"object"===typeof e?e.exports=a:t.BN=a,a.BN=a,a.wordSize=26;try{o="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:r(6601).Buffer}catch(M){}function s(e,t){var r=e.charCodeAt(t);return r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function l(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function u(e,t,r,n){for(var i=0,a=Math.min(e.length,r),o=t;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(e){return e instanceof a||null!==e&&"object"===typeof e&&e.constructor.wordSize===a.wordSize&&Array.isArray(e.words)},a.max=function(e,t){return e.cmp(t)>0?e:t},a.min=function(e,t){return e.cmp(t)<0?e:t},a.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)o=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=l(e,t,n)<=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;this.strip()},a.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var a=e.length-r,o=a%n,s=Math.min(a,a-o)+r,l=0,c=r;c1&&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 c=["","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],d=[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 h(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],a=0|t.words[0],o=i*a,s=67108863&o,l=o/67108864|0;r.words[0]=s;for(var u=1;u>>26,f=67108863&l,d=Math.min(u,t.length-1),h=Math.max(0,u-e.length+1);h<=d;h++){var p=u-h|0;c+=(o=(i=0|e.words[p])*(a=0|t.words[h])+f)/67108864|0,f=67108863&o}r.words[u]=0|f,l=0|c}return 0!==l?r.words[u]=0|l:r.length--,r.strip()}a.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?c[6-l.length]+l+r:l+r,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var u=f[e],h=d[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var v=p.modn(h).toString(e);r=(p=p.idivn(h)).isZero()?v+r:c[u-v.length]+v+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(e,t){return n("undefined"!==typeof o),this.toArrayLike(o,e,t)},a.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},a.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),a=r||Math.max(1,i);n(i<=a,"byte array longer than desired length"),n(a>0,"Requested array length <= 0"),this.strip();var o,s,l="le"===t,u=new e(a),c=this.clone();if(l){for(s=0;!c.isZero();s++)o=c.andln(255),c.iushrn(8),u[s]=o;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},a.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},a.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},a.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},a.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},a.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},a.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},a.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},a.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},a.prototype.notn=function(e){return this.clone().inotn(e)},a.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},a.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var a=0,o=0;o>26,this.words[o]=67108863&t;for(;0!==a&&o>26,this.words[o]=67108863&t;if(0===a&&o>>13,h=0|o[1],p=8191&h,v=h>>>13,m=0|o[2],g=8191&m,y=m>>>13,x=0|o[3],b=8191&x,_=x>>>13,w=0|o[4],k=8191&w,T=w>>>13,M=0|o[5],A=8191&M,S=M>>>13,E=0|o[6],C=8191&E,L=E>>>13,P=0|o[7],O=8191&P,I=P>>>13,D=0|o[8],R=8191&D,z=D>>>13,F=0|o[9],N=8191&F,B=F>>>13,j=0|s[0],U=8191&j,V=j>>>13,H=0|s[1],q=8191&H,W=H>>>13,G=0|s[2],Y=8191&G,Z=G>>>13,X=0|s[3],K=8191&X,$=X>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],ae=8191&ie,oe=ie>>>13,se=0|s[7],le=8191&se,ue=se>>>13,ce=0|s[8],fe=8191&ce,de=ce>>>13,he=0|s[9],pe=8191&he,ve=he>>>13;r.negative=e.negative^t.negative,r.length=19;var me=(u+(n=Math.imul(f,U))|0)+((8191&(i=(i=Math.imul(f,V))+Math.imul(d,U)|0))<<13)|0;u=((a=Math.imul(d,V))+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(p,U),i=(i=Math.imul(p,V))+Math.imul(v,U)|0,a=Math.imul(v,V);var ge=(u+(n=n+Math.imul(f,q)|0)|0)+((8191&(i=(i=i+Math.imul(f,W)|0)+Math.imul(d,q)|0))<<13)|0;u=((a=a+Math.imul(d,W)|0)+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(g,U),i=(i=Math.imul(g,V))+Math.imul(y,U)|0,a=Math.imul(y,V),n=n+Math.imul(p,q)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(v,q)|0,a=a+Math.imul(v,W)|0;var ye=(u+(n=n+Math.imul(f,Y)|0)|0)+((8191&(i=(i=i+Math.imul(f,Z)|0)+Math.imul(d,Y)|0))<<13)|0;u=((a=a+Math.imul(d,Z)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(b,U),i=(i=Math.imul(b,V))+Math.imul(_,U)|0,a=Math.imul(_,V),n=n+Math.imul(g,q)|0,i=(i=i+Math.imul(g,W)|0)+Math.imul(y,q)|0,a=a+Math.imul(y,W)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(v,Y)|0,a=a+Math.imul(v,Z)|0;var xe=(u+(n=n+Math.imul(f,K)|0)|0)+((8191&(i=(i=i+Math.imul(f,$)|0)+Math.imul(d,K)|0))<<13)|0;u=((a=a+Math.imul(d,$)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(k,U),i=(i=Math.imul(k,V))+Math.imul(T,U)|0,a=Math.imul(T,V),n=n+Math.imul(b,q)|0,i=(i=i+Math.imul(b,W)|0)+Math.imul(_,q)|0,a=a+Math.imul(_,W)|0,n=n+Math.imul(g,Y)|0,i=(i=i+Math.imul(g,Z)|0)+Math.imul(y,Y)|0,a=a+Math.imul(y,Z)|0,n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(v,K)|0,a=a+Math.imul(v,$)|0;var be=(u+(n=n+Math.imul(f,Q)|0)|0)+((8191&(i=(i=i+Math.imul(f,ee)|0)+Math.imul(d,Q)|0))<<13)|0;u=((a=a+Math.imul(d,ee)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(A,U),i=(i=Math.imul(A,V))+Math.imul(S,U)|0,a=Math.imul(S,V),n=n+Math.imul(k,q)|0,i=(i=i+Math.imul(k,W)|0)+Math.imul(T,q)|0,a=a+Math.imul(T,W)|0,n=n+Math.imul(b,Y)|0,i=(i=i+Math.imul(b,Z)|0)+Math.imul(_,Y)|0,a=a+Math.imul(_,Z)|0,n=n+Math.imul(g,K)|0,i=(i=i+Math.imul(g,$)|0)+Math.imul(y,K)|0,a=a+Math.imul(y,$)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(v,Q)|0,a=a+Math.imul(v,ee)|0;var _e=(u+(n=n+Math.imul(f,re)|0)|0)+((8191&(i=(i=i+Math.imul(f,ne)|0)+Math.imul(d,re)|0))<<13)|0;u=((a=a+Math.imul(d,ne)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(C,U),i=(i=Math.imul(C,V))+Math.imul(L,U)|0,a=Math.imul(L,V),n=n+Math.imul(A,q)|0,i=(i=i+Math.imul(A,W)|0)+Math.imul(S,q)|0,a=a+Math.imul(S,W)|0,n=n+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,Z)|0)+Math.imul(T,Y)|0,a=a+Math.imul(T,Z)|0,n=n+Math.imul(b,K)|0,i=(i=i+Math.imul(b,$)|0)+Math.imul(_,K)|0,a=a+Math.imul(_,$)|0,n=n+Math.imul(g,Q)|0,i=(i=i+Math.imul(g,ee)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(v,re)|0,a=a+Math.imul(v,ne)|0;var we=(u+(n=n+Math.imul(f,ae)|0)|0)+((8191&(i=(i=i+Math.imul(f,oe)|0)+Math.imul(d,ae)|0))<<13)|0;u=((a=a+Math.imul(d,oe)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(O,U),i=(i=Math.imul(O,V))+Math.imul(I,U)|0,a=Math.imul(I,V),n=n+Math.imul(C,q)|0,i=(i=i+Math.imul(C,W)|0)+Math.imul(L,q)|0,a=a+Math.imul(L,W)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,Z)|0)+Math.imul(S,Y)|0,a=a+Math.imul(S,Z)|0,n=n+Math.imul(k,K)|0,i=(i=i+Math.imul(k,$)|0)+Math.imul(T,K)|0,a=a+Math.imul(T,$)|0,n=n+Math.imul(b,Q)|0,i=(i=i+Math.imul(b,ee)|0)+Math.imul(_,Q)|0,a=a+Math.imul(_,ee)|0,n=n+Math.imul(g,re)|0,i=(i=i+Math.imul(g,ne)|0)+Math.imul(y,re)|0,a=a+Math.imul(y,ne)|0,n=n+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,oe)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,oe)|0;var ke=(u+(n=n+Math.imul(f,le)|0)|0)+((8191&(i=(i=i+Math.imul(f,ue)|0)+Math.imul(d,le)|0))<<13)|0;u=((a=a+Math.imul(d,ue)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(R,U),i=(i=Math.imul(R,V))+Math.imul(z,U)|0,a=Math.imul(z,V),n=n+Math.imul(O,q)|0,i=(i=i+Math.imul(O,W)|0)+Math.imul(I,q)|0,a=a+Math.imul(I,W)|0,n=n+Math.imul(C,Y)|0,i=(i=i+Math.imul(C,Z)|0)+Math.imul(L,Y)|0,a=a+Math.imul(L,Z)|0,n=n+Math.imul(A,K)|0,i=(i=i+Math.imul(A,$)|0)+Math.imul(S,K)|0,a=a+Math.imul(S,$)|0,n=n+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,ee)|0)+Math.imul(T,Q)|0,a=a+Math.imul(T,ee)|0,n=n+Math.imul(b,re)|0,i=(i=i+Math.imul(b,ne)|0)+Math.imul(_,re)|0,a=a+Math.imul(_,ne)|0,n=n+Math.imul(g,ae)|0,i=(i=i+Math.imul(g,oe)|0)+Math.imul(y,ae)|0,a=a+Math.imul(y,oe)|0,n=n+Math.imul(p,le)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(v,le)|0,a=a+Math.imul(v,ue)|0;var Te=(u+(n=n+Math.imul(f,fe)|0)|0)+((8191&(i=(i=i+Math.imul(f,de)|0)+Math.imul(d,fe)|0))<<13)|0;u=((a=a+Math.imul(d,de)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(N,U),i=(i=Math.imul(N,V))+Math.imul(B,U)|0,a=Math.imul(B,V),n=n+Math.imul(R,q)|0,i=(i=i+Math.imul(R,W)|0)+Math.imul(z,q)|0,a=a+Math.imul(z,W)|0,n=n+Math.imul(O,Y)|0,i=(i=i+Math.imul(O,Z)|0)+Math.imul(I,Y)|0,a=a+Math.imul(I,Z)|0,n=n+Math.imul(C,K)|0,i=(i=i+Math.imul(C,$)|0)+Math.imul(L,K)|0,a=a+Math.imul(L,$)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,ee)|0,n=n+Math.imul(k,re)|0,i=(i=i+Math.imul(k,ne)|0)+Math.imul(T,re)|0,a=a+Math.imul(T,ne)|0,n=n+Math.imul(b,ae)|0,i=(i=i+Math.imul(b,oe)|0)+Math.imul(_,ae)|0,a=a+Math.imul(_,oe)|0,n=n+Math.imul(g,le)|0,i=(i=i+Math.imul(g,ue)|0)+Math.imul(y,le)|0,a=a+Math.imul(y,ue)|0,n=n+Math.imul(p,fe)|0,i=(i=i+Math.imul(p,de)|0)+Math.imul(v,fe)|0,a=a+Math.imul(v,de)|0;var Me=(u+(n=n+Math.imul(f,pe)|0)|0)+((8191&(i=(i=i+Math.imul(f,ve)|0)+Math.imul(d,pe)|0))<<13)|0;u=((a=a+Math.imul(d,ve)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(N,q),i=(i=Math.imul(N,W))+Math.imul(B,q)|0,a=Math.imul(B,W),n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(z,Y)|0,a=a+Math.imul(z,Z)|0,n=n+Math.imul(O,K)|0,i=(i=i+Math.imul(O,$)|0)+Math.imul(I,K)|0,a=a+Math.imul(I,$)|0,n=n+Math.imul(C,Q)|0,i=(i=i+Math.imul(C,ee)|0)+Math.imul(L,Q)|0,a=a+Math.imul(L,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(S,re)|0,a=a+Math.imul(S,ne)|0,n=n+Math.imul(k,ae)|0,i=(i=i+Math.imul(k,oe)|0)+Math.imul(T,ae)|0,a=a+Math.imul(T,oe)|0,n=n+Math.imul(b,le)|0,i=(i=i+Math.imul(b,ue)|0)+Math.imul(_,le)|0,a=a+Math.imul(_,ue)|0,n=n+Math.imul(g,fe)|0,i=(i=i+Math.imul(g,de)|0)+Math.imul(y,fe)|0,a=a+Math.imul(y,de)|0;var Ae=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ve)|0)+Math.imul(v,pe)|0))<<13)|0;u=((a=a+Math.imul(v,ve)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(N,Y),i=(i=Math.imul(N,Z))+Math.imul(B,Y)|0,a=Math.imul(B,Z),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,$)|0)+Math.imul(z,K)|0,a=a+Math.imul(z,$)|0,n=n+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,ee)|0)+Math.imul(I,Q)|0,a=a+Math.imul(I,ee)|0,n=n+Math.imul(C,re)|0,i=(i=i+Math.imul(C,ne)|0)+Math.imul(L,re)|0,a=a+Math.imul(L,ne)|0,n=n+Math.imul(A,ae)|0,i=(i=i+Math.imul(A,oe)|0)+Math.imul(S,ae)|0,a=a+Math.imul(S,oe)|0,n=n+Math.imul(k,le)|0,i=(i=i+Math.imul(k,ue)|0)+Math.imul(T,le)|0,a=a+Math.imul(T,ue)|0,n=n+Math.imul(b,fe)|0,i=(i=i+Math.imul(b,de)|0)+Math.imul(_,fe)|0,a=a+Math.imul(_,de)|0;var Se=(u+(n=n+Math.imul(g,pe)|0)|0)+((8191&(i=(i=i+Math.imul(g,ve)|0)+Math.imul(y,pe)|0))<<13)|0;u=((a=a+Math.imul(y,ve)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(N,K),i=(i=Math.imul(N,$))+Math.imul(B,K)|0,a=Math.imul(B,$),n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,ee)|0,n=n+Math.imul(O,re)|0,i=(i=i+Math.imul(O,ne)|0)+Math.imul(I,re)|0,a=a+Math.imul(I,ne)|0,n=n+Math.imul(C,ae)|0,i=(i=i+Math.imul(C,oe)|0)+Math.imul(L,ae)|0,a=a+Math.imul(L,oe)|0,n=n+Math.imul(A,le)|0,i=(i=i+Math.imul(A,ue)|0)+Math.imul(S,le)|0,a=a+Math.imul(S,ue)|0,n=n+Math.imul(k,fe)|0,i=(i=i+Math.imul(k,de)|0)+Math.imul(T,fe)|0,a=a+Math.imul(T,de)|0;var Ee=(u+(n=n+Math.imul(b,pe)|0)|0)+((8191&(i=(i=i+Math.imul(b,ve)|0)+Math.imul(_,pe)|0))<<13)|0;u=((a=a+Math.imul(_,ve)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(N,Q),i=(i=Math.imul(N,ee))+Math.imul(B,Q)|0,a=Math.imul(B,ee),n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(z,re)|0,a=a+Math.imul(z,ne)|0,n=n+Math.imul(O,ae)|0,i=(i=i+Math.imul(O,oe)|0)+Math.imul(I,ae)|0,a=a+Math.imul(I,oe)|0,n=n+Math.imul(C,le)|0,i=(i=i+Math.imul(C,ue)|0)+Math.imul(L,le)|0,a=a+Math.imul(L,ue)|0,n=n+Math.imul(A,fe)|0,i=(i=i+Math.imul(A,de)|0)+Math.imul(S,fe)|0,a=a+Math.imul(S,de)|0;var Ce=(u+(n=n+Math.imul(k,pe)|0)|0)+((8191&(i=(i=i+Math.imul(k,ve)|0)+Math.imul(T,pe)|0))<<13)|0;u=((a=a+Math.imul(T,ve)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(N,re),i=(i=Math.imul(N,ne))+Math.imul(B,re)|0,a=Math.imul(B,ne),n=n+Math.imul(R,ae)|0,i=(i=i+Math.imul(R,oe)|0)+Math.imul(z,ae)|0,a=a+Math.imul(z,oe)|0,n=n+Math.imul(O,le)|0,i=(i=i+Math.imul(O,ue)|0)+Math.imul(I,le)|0,a=a+Math.imul(I,ue)|0,n=n+Math.imul(C,fe)|0,i=(i=i+Math.imul(C,de)|0)+Math.imul(L,fe)|0,a=a+Math.imul(L,de)|0;var Le=(u+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,ve)|0)+Math.imul(S,pe)|0))<<13)|0;u=((a=a+Math.imul(S,ve)|0)+(i>>>13)|0)+(Le>>>26)|0,Le&=67108863,n=Math.imul(N,ae),i=(i=Math.imul(N,oe))+Math.imul(B,ae)|0,a=Math.imul(B,oe),n=n+Math.imul(R,le)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(z,le)|0,a=a+Math.imul(z,ue)|0,n=n+Math.imul(O,fe)|0,i=(i=i+Math.imul(O,de)|0)+Math.imul(I,fe)|0,a=a+Math.imul(I,de)|0;var Pe=(u+(n=n+Math.imul(C,pe)|0)|0)+((8191&(i=(i=i+Math.imul(C,ve)|0)+Math.imul(L,pe)|0))<<13)|0;u=((a=a+Math.imul(L,ve)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(N,le),i=(i=Math.imul(N,ue))+Math.imul(B,le)|0,a=Math.imul(B,ue),n=n+Math.imul(R,fe)|0,i=(i=i+Math.imul(R,de)|0)+Math.imul(z,fe)|0,a=a+Math.imul(z,de)|0;var Oe=(u+(n=n+Math.imul(O,pe)|0)|0)+((8191&(i=(i=i+Math.imul(O,ve)|0)+Math.imul(I,pe)|0))<<13)|0;u=((a=a+Math.imul(I,ve)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(N,fe),i=(i=Math.imul(N,de))+Math.imul(B,fe)|0,a=Math.imul(B,de);var Ie=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,ve)|0)+Math.imul(z,pe)|0))<<13)|0;u=((a=a+Math.imul(z,ve)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var De=(u+(n=Math.imul(N,pe))|0)+((8191&(i=(i=Math.imul(N,ve))+Math.imul(B,pe)|0))<<13)|0;return u=((a=Math.imul(B,ve))+(i>>>13)|0)+(De>>>26)|0,De&=67108863,l[0]=me,l[1]=ge,l[2]=ye,l[3]=xe,l[4]=be,l[5]=_e,l[6]=we,l[7]=ke,l[8]=Te,l[9]=Me,l[10]=Ae,l[11]=Se,l[12]=Ee,l[13]=Ce,l[14]=Le,l[15]=Pe,l[16]=Oe,l[17]=Ie,l[18]=De,0!==u&&(l[19]=u,r.length++),r};function v(e,t,r){return(new m).mulp(e,t,r)}function m(e,t){this.x=e,this.y=t}Math.imul||(p=h),a.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}r.words[a]=s,n=o,o=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,e,t):v(this,e,t),r},m.prototype.makeRBT=function(e){for(var t=new Array(e),r=a.prototype._countBits(e)-1,n=0;n>=1;return n},m.prototype.permute=function(e,t,r,n,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*t;o>=26,t+=i/67108864|0,t+=a>>>26,this.words[r]=67108863&a}return 0!==t&&(this.words[r]=t,this.length++),this},a.prototype.muln=function(e){return this.clone().imuln(e)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new a(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(t=0;t>>26-r}o&&(this.words[t]=o,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,u=0;u=0&&(0!==c||u>=i);u--){var f=0|this.words[u];this.words[u]=c<<26-a|f>>>a,c=f&s}return l&&0!==c&&(l.words[l.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},a.prototype.shln=function(e){return this.clone().ishln(e)},a.prototype.ushln=function(e){return this.clone().iushln(e)},a.prototype.shrn=function(e){return this.clone().ishrn(e)},a.prototype.ushrn=function(e){return this.clone().iushrn(e)},a.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},a.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(l/67108864|0),this.words[i+r]=67108863&a}for(;i>26,this.words[i+r]=67108863&a;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,l=n.length-i.length;if("mod"!==t){(s=new a(null)).length=l+1,s.words=new Array(s.length);for(var u=0;u=0;f--){var d=67108864*(0|n.words[i.length+f])+(0|n.words[i.length+f-1]);for(d=Math.min(d/o|0,67108863),n._ishlnsubmul(i,d,f);0!==n.negative;)d--,n.negative=0,n._ishlnsubmul(i,1,f),n.isZero()||(n.negative^=1);s&&(s.words[f]=d)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(e)),{div:i,mod:o}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(e)),{div:s.div,mod:o}):e.length>this.length||this.cmp(e)<0?{div:new a(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new a(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new a(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,o,s},a.prototype.div=function(e){return this.divmod(e,"div",!1).div},a.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},a.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},a.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},a.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},a.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},a.prototype.divn=function(e){return this.clone().idivn(e)},a.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new a(1),o=new a(0),s=new a(0),l=new a(1),u=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++u;for(var c=r.clone(),f=t.clone();!t.isZero();){for(var d=0,h=1;0===(t.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(c),o.isub(f)),i.iushrn(1),o.iushrn(1);for(var p=0,v=1;0===(r.words[0]&v)&&p<26;++p,v<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(c),l.isub(f)),s.iushrn(1),l.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),o.isub(l)):(r.isub(t),s.isub(i),l.isub(o))}return{a:s,b:l,gcd:r.iushln(u)}},a.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,o=new a(1),s=new a(0),l=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var u=0,c=1;0===(t.words[0]&c)&&u<26;++u,c<<=1);if(u>0)for(t.iushrn(u);u-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var f=0,d=1;0===(r.words[0]&d)&&f<26;++f,d<<=1);if(f>0)for(r.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),o.isub(s)):(r.isub(t),s.isub(o))}return(i=0===t.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(e),i},a.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var a=t;t=r,r=a}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},a.prototype.invm=function(e){return this.egcd(e).a.umod(e)},a.prototype.isEven=function(){return 0===(1&this.words[0])},a.prototype.isOdd=function(){return 1===(1&this.words[0])},a.prototype.andln=function(e){return this.words[0]&e},a.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/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(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},a.prototype.gtn=function(e){return 1===this.cmpn(e)},a.prototype.gt=function(e){return 1===this.cmp(e)},a.prototype.gten=function(e){return this.cmpn(e)>=0},a.prototype.gte=function(e){return this.cmp(e)>=0},a.prototype.ltn=function(e){return-1===this.cmpn(e)},a.prototype.lt=function(e){return-1===this.cmp(e)},a.prototype.lten=function(e){return this.cmpn(e)<=0},a.prototype.lte=function(e){return this.cmp(e)<=0},a.prototype.eqn=function(e){return 0===this.cmpn(e)},a.prototype.eq=function(e){return 0===this.cmp(e)},a.red=function(e){return new k(e)},a.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},a.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(e){return this.red=e,this},a.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},a.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},a.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},a.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},a.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},a.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},a.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},a.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},a.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var g={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new a(t,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function x(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"===typeof e){var t=a._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function T(e){k.call(this,e),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 e=new a(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(x,y),x.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,a=o}a>>>=22,e.words[i-10]=a,0===a&&e.length>10?e.length-=10:e.length-=9},x.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},a._prime=function(e){if(g[e])return g[e];var t;if("k256"===e)t=new x;else if("p224"===e)t=new b;else if("p192"===e)t=new _;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new w}return g[e]=t,t},k.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new a(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);n(!i.isZero());var s=new a(1).toRed(this),l=s.redNeg(),u=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,u).cmp(l);)c.redIAdd(l);for(var f=this.pow(c,i),d=this.pow(e,i.addn(1).iushrn(1)),h=this.pow(e,i),p=o;0!==h.cmp(s);){for(var v=h,m=0;0!==v.cmp(s);m++)v=v.redSqr();n(m=0;n--){for(var u=t.words[n],c=l-1;c>=0;c--){var f=u>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==f||0!==o?(o<<=1,o|=f,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}l=26}return i},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},a.mont=function(e){return new T(e)},i(T,k),T.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},T.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},T.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).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(e,t){if(e.isZero()||t.isZero())return new a(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).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(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},2692:function(e){"use strict";e.exports=function(e){var t,r,n,i=e.length,a=0;for(t=0;t>>1;if(!(c<=0)){var f,d=i.mallocDouble(2*c*s),h=i.mallocInt32(s);if((s=l(e,c,d,h))>0){if(1===c&&n)a.init(s),f=a.sweepComplete(c,r,0,s,d,h,0,s,d,h);else{var p=i.mallocDouble(2*c*u),v=i.mallocInt32(u);(u=l(t,c,p,v))>0&&(a.init(s+u),f=1===c?a.sweepBipartite(c,r,0,s,d,h,0,u,p,v):o(c,r,n,s,d,h,u,p,v),i.free(p),i.free(v))}i.free(d),i.free(h)}return f}}}function c(e,t){n.push([e,t])}},7333:function(e,t){"use strict";function r(e){return e?function(e,t,r,n,i,a,o,s,l,u,c){return i-n>l-s?function(e,t,r,n,i,a,o,s,l,u,c){for(var f=2*e,d=n,h=f*n;du-l?n?function(e,t,r,n,i,a,o,s,l,u,c){for(var f=2*e,d=n,h=f*n;d0;){var D=(O-=1)*b,R=w[D],z=w[D+1],F=w[D+2],N=w[D+3],B=w[D+4],j=w[D+5],U=O*_,V=k[U],H=k[U+1],q=1&j,W=!!(16&j),G=c,Y=S,Z=C,X=L;if(q&&(G=C,Y=L,Z=c,X=S),!(2&j&&z>=(F=m(e,R,z,F,G,Y,H)))&&!(4&j&&(z=g(e,R,z,F,G,Y,V))>=F)){var K=F-z,$=B-N;if(W){if(e*K*(K+$)=p0)&&!(p1>=hi)"),v=c("lo===p0"),m=c("lo>>1,d=2*e,h=f,p=s[d*f+t];u=x?(h=y,p=x):g>=_?(h=m,p=g):(h=b,p=_):x>=_?(h=y,p=x):_>=g?(h=m,p=g):(h=b,p=_);for(var w=d*(c-1),k=d*h,T=0;Tr&&i[f+t]>u;--c,f-=o){for(var d=f,h=f+o,p=0;pd;++d,l+=s)if(i[l+f]===o)if(c===d)c+=1,u+=s;else{for(var h=0;s>h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"lod;++d,l+=s)if(i[l+f]h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"lo<=p0":function(e,t,r,n,i,a,o){for(var s=2*e,l=s*r,u=l,c=r,f=e+t,d=r;n>d;++d,l+=s)if(i[l+f]<=o)if(c===d)c+=1,u+=s;else{for(var h=0;s>h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"hi<=p0":function(e,t,r,n,i,a,o){for(var s=2*e,l=s*r,u=l,c=r,f=e+t,d=r;n>d;++d,l+=s)if(i[l+f]<=o)if(c===d)c+=1,u+=s;else{for(var h=0;s>h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"loh;++h,l+=s){var p=i[l+f],v=i[l+d];if(pm;++m){var g=i[l+m];i[l+m]=i[u],i[u++]=g}var y=a[h];a[h]=a[c],a[c++]=y}}return c},"lo<=p0&&p0<=hi":function(e,t,r,n,i,a,o){for(var s=2*e,l=s*r,u=l,c=r,f=t,d=e+t,h=r;n>h;++h,l+=s){var p=i[l+f],v=i[l+d];if(p<=o&&o<=v)if(c===h)c+=1,u+=s;else{for(var m=0;s>m;++m){var g=i[l+m];i[l+m]=i[u],i[u++]=g}var y=a[h];a[h]=a[c],a[c++]=y}}return c},"!(lo>=p0)&&!(p1>=hi)":function(e,t,r,n,i,a,o,s){for(var l=2*e,u=l*r,c=u,f=r,d=t,h=e+t,p=r;n>p;++p,u+=l){var v=i[u+d],m=i[u+h];if(!(v>=o)&&!(s>=m))if(f===p)f+=1,c+=l;else{for(var g=0;l>g;++g){var y=i[u+g];i[u+g]=i[c],i[c++]=y}var x=a[p];a[p]=a[f],a[f++]=x}}return f}}},309:function(e){"use strict";e.exports=function(e,n){n<=4*t?r(0,n-1,e):u(0,n-1,e)};var t=32;function r(e,t,r){for(var n=2*(e+1),i=e+1;i<=t;++i){for(var a=r[n++],o=r[n++],s=i,l=n-2;s-- >e;){var u=r[l-2],c=r[l-1];if(ur[t+1])}function l(e,t,r,n){var i=n[e*=2];return i>1,m=v-d,g=v+d,y=h,x=m,b=v,_=g,w=p,k=e+1,T=c-1,M=0;s(y,x,f)&&(M=y,y=x,x=M),s(_,w,f)&&(M=_,_=w,w=M),s(y,b,f)&&(M=y,y=b,b=M),s(x,b,f)&&(M=x,x=b,b=M),s(y,_,f)&&(M=y,y=_,_=M),s(b,_,f)&&(M=b,b=_,_=M),s(x,w,f)&&(M=x,x=w,w=M),s(x,b,f)&&(M=x,x=b,b=M),s(_,w,f)&&(M=_,_=w,w=M);for(var A=f[2*x],S=f[2*x+1],E=f[2*_],C=f[2*_+1],L=2*y,P=2*b,O=2*w,I=2*h,D=2*v,R=2*p,z=0;z<2;++z){var F=f[L+z],N=f[P+z],B=f[O+z];f[I+z]=F,f[D+z]=N,f[R+z]=B}i(m,e,f),i(g,c,f);for(var j=k;j<=T;++j)if(l(j,A,S,f))j!==k&&n(j,k,f),++k;else if(!l(j,E,C,f))for(;;){if(l(T,E,C,f)){l(T,A,S,f)?(a(j,k,T,f),++k,--T):(n(j,T,f),--T);break}if(--T>>1;a(p,S);var E=0,C=0;for(k=0;k=o)v(c,f,C--,L=L-o|0);else if(L>=0)v(l,u,E--,L);else if(L<=-o){L=-L-o|0;for(var P=0;P>>1;a(p,E);var C=0,L=0,P=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?v(l,u,C--,D):1===I?v(c,f,L--,D):2===I&&v(d,h,P--,D)}},scanBipartite:function(e,t,r,n,i,s,c,f,d,h,g,y){var x=0,b=2*e,_=t,w=t+e,k=1,T=1;n?T=o:k=o;for(var M=i;M>>1;a(p,C);var L=0;for(M=0;M=o?(O=!n,A-=o):(O=!!n,A-=1),O)m(l,u,L++,A);else{var I=y[A],D=b*A,R=g[D+t+1],z=g[D+t+1+e];e:for(var F=0;F>>1;a(p,k);var T=0;for(x=0;x=o)l[T++]=b-o;else{var A=h[b-=1],S=m*b,E=d[S+t+1],C=d[S+t+1+e];e:for(var L=0;L=0;--L)if(l[L]===b){for(D=L+1;D0;){for(var h=r.pop(),p=(c=-1,f=-1,l=o[s=r.pop()],1);p=0||(t.flip(s,h),i(e,t,r,c,s,f),i(e,t,r,s,f,c),i(e,t,r,f,h,c),i(e,t,r,h,c,f))}}},7098:function(e,t,r){"use strict";var n=r(5070);function i(e,t,r,n,i,a,o){this.cells=e,this.neighbor=t,this.flags=n,this.constraint=r,this.active=i,this.next=a,this.boundary=o}function a(e,t){return e[0]-t[0]||e[1]-t[1]||e[2]-t[2]}e.exports=function(e,t,r){var n=function(e,t){for(var r=e.cells(),n=r.length,o=0;o0||l.length>0;){for(;s.length>0;){var h=s.pop();if(u[h]!==-o){u[h]=o,c[h];for(var p=0;p<3;++p){var v=d[3*h+p];v>=0&&0===u[v]&&(f[3*h+p]?l.push(v):(s.push(v),u[v]=o))}}}var m=l;l=s,s=m,l.length=0,o=-o}var g=function(e,t,r){for(var n=0,i=0;i1&&i(r[d[h-2]],r[d[h-1]],a)>0;)e.push([d[h-1],d[h-2],o]),h-=1;d.length=h,d.push(o);var p=f.upperIds;for(h=p.length;h>1&&i(r[p[h-2]],r[p[h-1]],a)<0;)e.push([p[h-2],p[h-1],o]),h-=1;p.length=h,p.push(o)}}function f(e,t){var r;return(r=e.a[0]v[0]&&i.push(new s(v,p,2,u),new s(p,v,1,u))}i.sort(l);for(var m=i[0].a[0]-(1+Math.abs(i[0].a[0]))*Math.pow(2,-52),g=[new o([m,1],[m,0],-1,[],[],[],[])],y=[],x=(u=0,i.length);u=0}}(),a.removeTriangle=function(e,t,r){var n=this.stars;o(n[e],t,r),o(n[t],r,e),o(n[r],e,t)},a.addTriangle=function(e,t,r){var n=this.stars;n[e].push(t,r),n[t].push(r,e),n[r].push(e,t)},a.opposite=function(e,t){for(var r=this.stars[t],n=1,i=r.length;nt[2]?1:0)}function g(e,t,r){if(0!==e.length){if(t)for(var n=0;n=0;--a){var x=t[c=(S=n[a])[0]],b=x[0],_=x[1],w=e[b],k=e[_];if((w[0]-k[0]||w[1]-k[1])<0){var T=b;b=_,_=T}x[0]=b;var M,A=x[1]=S[1];for(i&&(M=x[2]);a>0&&n[a-1][0]===c;){var S,E=(S=n[--a])[1];i?t.push([A,E,M]):t.push([A,E]),A=E}i?t.push([A,_,M]):t.push([A,_])}return d}(e,t,d,m,r),x=p(e,y);return g(t,x,r),!!x||d.length>0||m.length>0}},5528:function(e,t,r){"use strict";e.exports=function(e,t,r,n){var a=s(t,e),f=s(n,r),d=c(a,f);if(0===o(d))return null;var h=s(e,r),p=c(f,h),v=i(p,d),m=u(a,v);return l(e,m)};var n=r(3962),i=r(9189),a=r(4354),o=r(4951),s=r(6695),l=r(7584),u=r(4469);function c(e,t){return a(n(e[0],t[1]),n(e[1],t[0]))}},5692:function(e){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],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(e,t,r){"use strict";var n=r(5692),i=r(3578);function a(e){return[e[0]/255,e[1]/255,e[2]/255,e[3]]}function o(e){for(var t,r="#",n=0;n<3;++n)r+=("00"+(t=(t=e[n]).toString(16))).substr(t.length);return r}function s(e){return"rgba("+e.join(",")+")"}e.exports=function(e){var t,r,l,u,c,f,d,h,p,v;if(e||(e={}),h=(e.nshades||72)-1,d=e.format||"hex",(f=e.colormap)||(f="jet"),"string"===typeof f){if(f=f.toLowerCase(),!n[f])throw Error(f+" not a supported colorscale");c=n[f]}else{if(!Array.isArray(f))throw Error("unsupported colormap option",f);c=f.slice()}if(c.length>h+1)throw new Error(f+" map requires nshades to be at least size "+c.length);p=Array.isArray(e.alpha)?2!==e.alpha.length?[1,1]:e.alpha.slice():"number"===typeof e.alpha?[e.alpha,e.alpha]:[1,1],t=c.map((function(e){return Math.round(e.index*h)})),p[0]=Math.min(Math.max(p[0],0),1),p[1]=Math.min(Math.max(p[1],0),1);var m=c.map((function(e,t){var r=c[t].index,n=c[t].rgb.slice();return 4===n.length&&n[3]>=0&&n[3]<=1||(n[3]=p[0]+(p[1]-p[0])*r),n})),g=[];for(v=0;v0||l(e,t,a)?-1:1:0===s?u>0||l(e,t,r)?1:-1:i(u-s)}var f=n(e,t,r);return f>0?o>0&&n(e,t,a)>0?1:-1:f<0?o>0||n(e,t,a)>0?1:-1:n(e,t,a)>0||l(e,t,r)?1:-1};var n=r(417),i=r(7538),a=r(87),o=r(2019),s=r(9662);function l(e,t,r){var n=a(e[0],-t[0]),i=a(e[1],-t[1]),l=a(r[0],-t[0]),u=a(r[1],-t[1]),c=s(o(n,l),o(i,u));return c[c.length-1]>=0}},7538:function(e){"use strict";e.exports=function(e){return e<0?-1:e>0?1:0}},9209:function(e){e.exports=function(e,n){var i=e.length,a=e.length-n.length;if(a)return a;switch(i){case 0:return 0;case 1:return e[0]-n[0];case 2:return e[0]+e[1]-n[0]-n[1]||t(e[0],e[1])-t(n[0],n[1]);case 3:var o=e[0]+e[1],s=n[0]+n[1];if(a=o+e[2]-(s+n[2]))return a;var l=t(e[0],e[1]),u=t(n[0],n[1]);return t(l,e[2])-t(u,n[2])||t(l+e[2],o)-t(u+n[2],s);case 4:var c=e[0],f=e[1],d=e[2],h=e[3],p=n[0],v=n[1],m=n[2],g=n[3];return c+f+d+h-(p+v+m+g)||t(c,f,d,h)-t(p,v,m,g,p)||t(c+f,c+d,c+h,f+d,f+h,d+h)-t(p+v,p+m,p+g,v+m,v+g,m+g)||t(c+f+d,c+f+h,c+d+h,f+d+h)-t(p+v+m,p+v+g,p+m+g,v+m+g);default:for(var y=e.slice().sort(r),x=n.slice().sort(r),b=0;be[r][0]&&(r=n);return tr?[[r],[t]]:[[t]]}},8722:function(e,t,r){"use strict";e.exports=function(e){var t=n(e),r=t.length;if(r<=2)return[];for(var i=new Array(r),a=t[r-1],o=0;o=t[l]&&(s+=1);a[o]=s}}return e}(n(a,!0),r)}};var n=r(2183),i=r(2153)},9680:function(e){"use strict";e.exports=function(e,t,r,n,i,a){var o=i-1,s=i*i,l=o*o,u=(1+2*i)*l,c=i*l,f=s*(3-2*i),d=s*o;if(e.length){a||(a=new Array(e.length));for(var h=e.length-1;h>=0;--h)a[h]=u*e[h]+c*t[h]+f*r[h]+d*n[h];return a}return u*e+c*t+f*r+d*n},e.exports.derivative=function(e,t,r,n,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,u=3*i*i-2*i;if(e.length){a||(a=new Array(e.length));for(var c=e.length-1;c>=0;--c)a[c]=o*e[c]+s*t[c]+l*r[c]+u*n[c];return a}return o*e+s*t+l*r[c]+u*n}},4419:function(e,t,r){"use strict";var n=r(2183),i=r(1215);function a(e,t){this.point=e,this.index=t}function o(e,t){for(var r=e.point,n=t.point,i=r.length,a=0;a=2)return!1;e[r]=n}return!0})):_.filter((function(e){for(var t=0;t<=s;++t){var r=g[e[t]];if(r<0)return!1;e[t]=r}return!0})),1&s)for(c=0;c<_.length;++c)d=(b=_[c])[0],b[0]=b[1],b[1]=d;return _}},8362:function(e){var t=!1;if("undefined"!==typeof Float64Array){var r=new Float64Array(1),n=new Uint32Array(r.buffer);r[0]=1,t=!0,1072693248===n[1]?(e.exports=function(e){return r[0]=e,[n[0],n[1]]},e.exports.pack=function(e,t){return n[0]=e,n[1]=t,r[0]},e.exports.lo=function(e){return r[0]=e,n[0]},e.exports.hi=function(e){return r[0]=e,n[1]}):1072693248===n[0]?(e.exports=function(e){return r[0]=e,[n[1],n[0]]},e.exports.pack=function(e,t){return n[1]=e,n[0]=t,r[0]},e.exports.lo=function(e){return r[0]=e,n[1]},e.exports.hi=function(e){return r[0]=e,n[0]}):t=!1}if(!t){var i=new Buffer(8);e.exports=function(e){return i.writeDoubleLE(e,0,!0),[i.readUInt32LE(0,!0),i.readUInt32LE(4,!0)]},e.exports.pack=function(e,t){return i.writeUInt32LE(e,0,!0),i.writeUInt32LE(t,4,!0),i.readDoubleLE(0,!0)},e.exports.lo=function(e){return i.writeDoubleLE(e,0,!0),i.readUInt32LE(0,!0)},e.exports.hi=function(e){return i.writeDoubleLE(e,0,!0),i.readUInt32LE(4,!0)}}e.exports.sign=function(t){return e.exports.hi(t)>>>31},e.exports.exponent=function(t){return(e.exports.hi(t)<<1>>>21)-1023},e.exports.fraction=function(t){var r=e.exports.lo(t),n=e.exports.hi(t),i=1048575&n;return 2146435072&n&&(i+=1<<20),[r,i]},e.exports.denormalized=function(t){return!(2146435072&e.exports.hi(t))}},3094:function(e){"use strict";function t(e,r,n){var i=0|e[n];if(i<=0)return[];var a,o=new Array(i);if(n===e.length-1)for(a=0;a0)return function(e,t){var r,n;for(r=new Array(e),n=0;n=r-1){d=l.length-1;var p=e-t[r-1];for(h=0;h=r-1)for(var c=s.length-1,f=(t[r-1],0);f=0;--r)if(e[--t])return!1;return!0},s.jump=function(e){var t=this.lastT(),r=this.dimension;if(!(e0;--f)n.push(a(l[f-1],u[f-1],arguments[f])),i.push(0)}},s.push=function(e){var t=this.lastT(),r=this.dimension;if(!(e1e-6?1/s:0;this._time.push(e);for(var d=r;d>0;--d){var h=a(u[d-1],c[d-1],arguments[d]);n.push(h),i.push((h-n[o++])*f)}}},s.set=function(e){var t=this.dimension;if(!(e0;--l)r.push(a(o[l-1],s[l-1],arguments[l])),n.push(0)}},s.move=function(e){var t=this.lastT(),r=this.dimension;if(!(e<=t||arguments.length!==r+1)){var n=this._state,i=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],u=s[1],c=e-t,f=c>1e-6?1/c:0;this._time.push(e);for(var d=r;d>0;--d){var h=arguments[d];n.push(a(l[d-1],u[d-1],n[o++]+h)),i.push(h*f)}}},s.idle=function(e){var t=this.lastT();if(!(e=0;--f)n.push(a(l[f],u[f],n[o]+c*i[o])),i.push(0),o+=1}}},7080:function(e){"use strict";function t(e,t,r,n,i,a){this._color=e,this.key=t,this.value=r,this.left=n,this.right=i,this._count=a}function r(e){return new t(e._color,e.key,e.value,e.left,e.right,e._count)}function n(e,r){return new t(e,r.key,r.value,r.left,r.right,r._count)}function i(e){e._count=1+(e.left?e.left._count:0)+(e.right?e.right._count:0)}function a(e,t){this._compare=e,this.root=t}e.exports=function(e){return new a(e||h,null)};var o=a.prototype;function s(e,t){var r;return t.left&&(r=s(e,t.left))?r:(r=e(t.key,t.value))||(t.right?s(e,t.right):void 0)}function l(e,t,r,n){if(t(e,n.key)<=0){var i;if(n.left&&(i=l(e,t,r,n.left)))return i;if(i=r(n.key,n.value))return i}if(n.right)return l(e,t,r,n.right)}function u(e,t,r,n,i){var a,o=r(e,i.key),s=r(t,i.key);if(o<=0){if(i.left&&(a=u(e,t,r,n,i.left)))return a;if(s>0&&(a=n(i.key,i.value)))return a}if(s>0&&i.right)return u(e,t,r,n,i.right)}function c(e,t){this.tree=e,this._stack=t}Object.defineProperty(o,"keys",{get:function(){var e=[];return this.forEach((function(t,r){e.push(t)})),e}}),Object.defineProperty(o,"values",{get:function(){var e=[];return this.forEach((function(t,r){e.push(r)})),e}}),Object.defineProperty(o,"length",{get:function(){return this.root?this.root._count:0}}),o.insert=function(e,r){for(var o=this._compare,s=this.root,l=[],u=[];s;){var c=o(e,s.key);l.push(s),u.push(c),s=c<=0?s.left:s.right}l.push(new t(0,e,r,null,null,1));for(var f=l.length-2;f>=0;--f)s=l[f],u[f]<=0?l[f]=new t(s._color,s.key,s.value,l[f+1],s.right,s._count+1):l[f]=new t(s._color,s.key,s.value,s.left,l[f+1],s._count+1);for(f=l.length-1;f>1;--f){var d=l[f-1];if(s=l[f],1===d._color||1===s._color)break;var h=l[f-2];if(h.left===d)if(d.left===s){if(!(p=h.right)||0!==p._color){h._color=0,h.left=d.right,d._color=1,d.right=h,l[f-2]=d,l[f-1]=s,i(h),i(d),f>=3&&((v=l[f-3]).left===h?v.left=d:v.right=d);break}d._color=1,h.right=n(1,p),h._color=0,f-=1}else{if(!(p=h.right)||0!==p._color){d.right=s.left,h._color=0,h.left=s.right,s._color=1,s.left=d,s.right=h,l[f-2]=s,l[f-1]=d,i(h),i(d),i(s),f>=3&&((v=l[f-3]).left===h?v.left=s:v.right=s);break}d._color=1,h.right=n(1,p),h._color=0,f-=1}else if(d.right===s){if(!(p=h.left)||0!==p._color){h._color=0,h.right=d.left,d._color=1,d.left=h,l[f-2]=d,l[f-1]=s,i(h),i(d),f>=3&&((v=l[f-3]).right===h?v.right=d:v.left=d);break}d._color=1,h.left=n(1,p),h._color=0,f-=1}else{var p;if(!(p=h.left)||0!==p._color){var v;d.left=s.right,h._color=0,h.right=s.left,s._color=1,s.right=d,s.left=h,l[f-2]=s,l[f-1]=d,i(h),i(d),i(s),f>=3&&((v=l[f-3]).right===h?v.right=s:v.left=s);break}d._color=1,h.left=n(1,p),h._color=0,f-=1}}return l[0]._color=1,new a(o,l[0])},o.forEach=function(e,t,r){if(this.root)switch(arguments.length){case 1:return s(e,this.root);case 2:return l(t,this._compare,e,this.root);case 3:if(this._compare(t,r)>=0)return;return u(t,r,this._compare,e,this.root)}},Object.defineProperty(o,"begin",{get:function(){for(var e=[],t=this.root;t;)e.push(t),t=t.left;return new c(this,e)}}),Object.defineProperty(o,"end",{get:function(){for(var e=[],t=this.root;t;)e.push(t),t=t.right;return new c(this,e)}}),o.at=function(e){if(e<0)return new c(this,[]);for(var t=this.root,r=[];;){if(r.push(t),t.left){if(e=t.right._count)break;t=t.right}return new c(this,[])},o.ge=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a<=0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new c(this,n)},o.gt=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a<0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new c(this,n)},o.lt=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a>0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new c(this,n)},o.le=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a>=0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new c(this,n)},o.find=function(e){for(var t=this._compare,r=this.root,n=[];r;){var i=t(e,r.key);if(n.push(r),0===i)return new c(this,n);r=i<=0?r.left:r.right}return new c(this,[])},o.remove=function(e){var t=this.find(e);return t?t.remove():this},o.get=function(e){for(var t=this._compare,r=this.root;r;){var n=t(e,r.key);if(0===n)return r.value;r=n<=0?r.left:r.right}};var f=c.prototype;function d(e,t){e.key=t.key,e.value=t.value,e.left=t.left,e.right=t.right,e._color=t._color,e._count=t._count}function h(e,t){return et?1:0}Object.defineProperty(f,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(f,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),f.clone=function(){return new c(this.tree,this._stack.slice())},f.remove=function(){var e=this._stack;if(0===e.length)return this.tree;var o=new Array(e.length),s=e[e.length-1];o[o.length-1]=new t(s._color,s.key,s.value,s.left,s.right,s._count);for(var l=e.length-2;l>=0;--l)(s=e[l]).left===e[l+1]?o[l]=new t(s._color,s.key,s.value,o[l+1],s.right,s._count):o[l]=new t(s._color,s.key,s.value,s.left,o[l+1],s._count);if((s=o[o.length-1]).left&&s.right){var u=o.length;for(s=s.left;s.right;)o.push(s),s=s.right;var c=o[u-1];for(o.push(new t(s._color,c.key,c.value,s.left,s.right,s._count)),o[u-1].key=s.key,o[u-1].value=s.value,l=o.length-2;l>=u;--l)s=o[l],o[l]=new t(s._color,s.key,s.value,s.left,o[l+1],s._count);o[u-1].left=o[u]}if(0===(s=o[o.length-1])._color){var f=o[o.length-2];for(f.left===s?f.left=null:f.right===s&&(f.right=null),o.pop(),l=0;l=0;--l){if(t=e[l],0===l)return void(t._color=1);if((a=e[l-1]).left===t){if((o=a.right).right&&0===o.right._color)return s=(o=a.right=r(o)).right=r(o.right),a.right=o.left,o.left=a,o.right=s,o._color=a._color,t._color=1,a._color=1,s._color=1,i(a),i(o),l>1&&((u=e[l-2]).left===a?u.left=o:u.right=o),void(e[l-1]=o);if(o.left&&0===o.left._color)return s=(o=a.right=r(o)).left=r(o.left),a.right=s.left,o.left=s.right,s.left=a,s.right=o,s._color=a._color,a._color=1,o._color=1,t._color=1,i(a),i(o),i(s),l>1&&((u=e[l-2]).left===a?u.left=s:u.right=s),void(e[l-1]=s);if(1===o._color){if(0===a._color)return a._color=1,void(a.right=n(0,o));a.right=n(0,o);continue}o=r(o),a.right=o.left,o.left=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((u=e[l-2]).left===a?u.left=o:u.right=o),e[l-1]=o,e[l]=a,l+11&&((u=e[l-2]).right===a?u.right=o:u.left=o),void(e[l-1]=o);if(o.right&&0===o.right._color)return s=(o=a.left=r(o)).right=r(o.right),a.left=s.right,o.right=s.left,s.right=a,s.left=o,s._color=a._color,a._color=1,o._color=1,t._color=1,i(a),i(o),i(s),l>1&&((u=e[l-2]).right===a?u.right=s:u.left=s),void(e[l-1]=s);if(1===o._color){if(0===a._color)return a._color=1,void(a.left=n(0,o));a.left=n(0,o);continue}var u;o=r(o),a.left=o.right,o.right=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((u=e[l-2]).right===a?u.right=o:u.left=o),e[l-1]=o,e[l]=a,l+10)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(f,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(f,"index",{get:function(){var e=0,t=this._stack;if(0===t.length){var r=this.tree.root;return r?r._count:0}t[t.length-1].left&&(e=t[t.length-1].left._count);for(var n=t.length-2;n>=0;--n)t[n+1]===t[n].right&&(++e,t[n].left&&(e+=t[n].left._count));return e},enumerable:!0}),f.next=function(){var e=this._stack;if(0!==e.length){var t=e[e.length-1];if(t.right)for(t=t.right;t;)e.push(t),t=t.left;else for(e.pop();e.length>0&&e[e.length-1].right===t;)t=e[e.length-1],e.pop()}},Object.defineProperty(f,"hasNext",{get:function(){var e=this._stack;if(0===e.length)return!1;if(e[e.length-1].right)return!0;for(var t=e.length-1;t>0;--t)if(e[t-1].left===e[t])return!0;return!1}}),f.update=function(e){var r=this._stack;if(0===r.length)throw new Error("Can't update empty node!");var n=new Array(r.length),i=r[r.length-1];n[n.length-1]=new t(i._color,i.key,e,i.left,i.right,i._count);for(var o=r.length-2;o>=0;--o)(i=r[o]).left===r[o+1]?n[o]=new t(i._color,i.key,i.value,n[o+1],i.right,i._count):n[o]=new t(i._color,i.key,i.value,i.left,n[o+1],i._count);return new a(this.tree._compare,n[0])},f.prev=function(){var e=this._stack;if(0!==e.length){var t=e[e.length-1];if(t.left)for(t=t.left;t;)e.push(t),t=t.right;else for(e.pop();e.length>0&&e[e.length-1].left===t;)t=e[e.length-1],e.pop()}},Object.defineProperty(f,"hasPrev",{get:function(){var e=this._stack;if(0===e.length)return!1;if(e[e.length-1].left)return!0;for(var t=e.length-1;t>0;--t)if(e[t-1].right===e[t])return!0;return!1}})},7453:function(e,t,r){"use strict";e.exports=function(e,t){var r=new c(e);return r.update(t),r};var n=r(9557),i=r(1681),a=r(1011),o=r(2864),s=r(8468),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function u(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function c(e){this.gl=e,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(e)}var f=c.prototype;function d(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}f.update=function(e){function t(t,r,n){if(n in e){var i,a=e[n],o=this[n];(t?Array.isArray(a)&&Array.isArray(a[0]):Array.isArray(a))?this[n]=i=[r(a[0]),r(a[1]),r(a[2])]:this[n]=i=[r(a),r(a),r(a)];for(var s=0;s<3;++s)if(i[s]!==o[s])return!0}return!1}e=e||{};var r,a=t.bind(this,!1,Number),o=t.bind(this,!1,Boolean),l=t.bind(this,!1,String),u=t.bind(this,!0,(function(e){if(Array.isArray(e)){if(3===e.length)return[+e[0],+e[1],+e[2],1];if(4===e.length)return[+e[0],+e[1],+e[2],+e[3]]}return[0,0,0,1]})),c=!1,f=!1;if("bounds"in e)for(var d=e.bounds,h=0;h<2;++h)for(var p=0;p<3;++p)d[h][p]!==this.bounds[h][p]&&(f=!0),this.bounds[h][p]=d[h][p];if("ticks"in e)for(r=e.ticks,c=!0,this.autoTicks=!1,h=0;h<3;++h)this.tickSpacing[h]=0;else a("tickSpacing")&&(this.autoTicks=!0,f=!0);if(this._firstInit&&("ticks"in e||"tickSpacing"in e||(this.autoTicks=!0),f=!0,c=!0,this._firstInit=!1),f&&this.autoTicks&&(r=s.create(this.bounds,this.tickSpacing),c=!0),c){for(h=0;h<3;++h)r[h].sort((function(e,t){return e.x-t.x}));s.equal(r,this.ticks)?c=!1:this.ticks=r}o("tickEnable"),l("tickFont")&&(c=!0),a("tickSize"),a("tickAngle"),a("tickPad"),u("tickColor");var v=l("labels");l("labelFont")&&(v=!0),o("labelEnable"),a("labelSize"),a("labelPad"),u("labelColor"),o("lineEnable"),o("lineMirror"),a("lineWidth"),u("lineColor"),o("lineTickEnable"),o("lineTickMirror"),a("lineTickLength"),a("lineTickWidth"),u("lineTickColor"),o("gridEnable"),a("gridWidth"),u("gridColor"),o("zeroEnable"),u("zeroLineColor"),a("zeroLineWidth"),o("backgroundEnable"),u("backgroundColor"),this._text?this._text&&(v||c)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=n(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&c&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};var h=[new d,new d,new d];function p(e,t,r,n,i){for(var a=e.primalOffset,o=e.primalMinor,s=e.mirrorOffset,l=e.mirrorMinor,u=n[t],c=0;c<3;++c)if(t!==c){var f=a,d=s,h=o,p=l;u&1<0?(h[c]=-1,p[c]=0):(h[c]=0,p[c]=1)}}var v=[0,0,0],m={model:l,view:l,projection:l,_ortho:!1};f.isOpaque=function(){return!0},f.isTransparent=function(){return!1},f.drawTransparent=function(e){};var g=[0,0,0],y=[0,0,0],x=[0,0,0];f.draw=function(e){e=e||m;for(var t=this.gl,r=e.model||l,n=e.view||l,i=e.projection||l,a=this.bounds,s=e._ortho||!1,c=o(r,n,i,a,s),f=c.cubeEdges,d=c.axis,b=n[12],_=n[13],w=n[14],k=n[15],T=(s?2:1)*this.pixelRatio*(i[3]*b+i[7]*_+i[11]*w+i[15]*k)/t.drawingBufferHeight,M=0;M<3;++M)this.lastCubeProps.cubeEdges[M]=f[M],this.lastCubeProps.axis[M]=d[M];var A=h;for(M=0;M<3;++M)p(h[M],M,this.bounds,f,d);t=this.gl;var S,E,C,L=v;for(M=0;M<3;++M)this.backgroundEnable[M]?L[M]=d[M]:L[M]=0;for(this._background.draw(r,n,i,a,L,this.backgroundColor),this._lines.bind(r,n,i,this),M=0;M<3;++M){var P=[0,0,0];d[M]>0?P[M]=a[1][M]:P[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,P,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,P,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=u(g,A[M].primalMinor),z=u(y,A[M].mirrorMinor),F=this.lineTickLength;for(O=0;O<3;++O){var N=T/r[5*O];R[O]*=F[O]*N,z[O]*=F[O]*N}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 B(e){(C=[0,0,0])[e]=1}function j(e,t,r){var n=(e+1)%3,i=(e+2)%3,a=t[n],o=t[i],s=r[n],l=r[i];a>0&&l>0||a>0&&l<0||a<0&&l>0||a<0&&l<0?B(n):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&B(i)}for(this._lines.unbind(),this._text.bind(r,n,i,this.pixelRatio),M=0;M<3;++M){var U=A[M].primalMinor,V=A[M].mirrorMinor,H=u(x,A[M].primalOffset);for(O=0;O<3;++O)this.lineTickEnable[M]&&(H[O]+=T*U[O]*Math.max(this.lineTickLength[O],0)/r[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],j(M,U,V),O=0;O<3;++O)H[O]+=T*U[O]*this.tickPad[O]/r[5*O];this._text.drawTicks(M,this.tickSize[M],this.tickAngle[M],H,this.tickColor[M],q,C,S)}if(this.labelEnable[M]){for(E=0,C=[0,0,0],this.labels[M].length>4&&(B(M),E=1),"auto"===(S=[this.labelAlign[M],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),O=0;O<3;++O)H[O]+=T*U[O]*this.labelPad[O]/r[5*O];H[M]+=.5*(a[0][M]+a[1][M]),this._text.drawLabel(M,this.labelSize[M],this.labelAngle[M],H,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(e,t,r){"use strict";e.exports=function(e){for(var t=[],r=[],s=0,l=0;l<3;++l)for(var u=(l+1)%3,c=(l+2)%3,f=[0,0,0],d=[0,0,0],h=-1;h<=1;h+=2){r.push(s,s+2,s+1,s+1,s+2,s+3),f[l]=h,d[l]=h;for(var p=-1;p<=1;p+=2){f[u]=p;for(var v=-1;v<=1;v+=2)f[c]=v,t.push(f[0],f[1],f[2],d[0],d[1],d[2]),s+=1}var m=u;u=c,c=m}var g=n(e,new Float32Array(t)),y=n(e,new Uint16Array(r),e.ELEMENT_ARRAY_BUFFER),x=i(e,[{buffer:g,type:e.FLOAT,size:3,offset:0,stride:24},{buffer:g,type:e.FLOAT,size:3,offset:12,stride:24}],y),b=a(e);return b.attributes.position.location=0,b.attributes.normal.location=1,new o(e,g,x,b)};var n=r(5827),i=r(2944),a=r(1943).bg;function o(e,t,r,n){this.gl=e,this.buffer=t,this.vao=r,this.shader=n}var s=o.prototype;s.draw=function(e,t,r,n,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:e,view:t,projection:r,bounds:n,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(e,t,r){"use strict";e.exports=function(e,t,r,a,h){i(s,t,e),i(s,r,s);for(var y=0,x=0;x<2;++x){c[2]=a[x][2];for(var b=0;b<2;++b){c[1]=a[b][1];for(var _=0;_<2;++_)c[0]=a[_][0],d(l[y],c,s),y+=1}}var w=-1;for(x=0;x<8;++x){for(var k=l[x][3],T=0;T<3;++T)u[x][T]=l[x][T]/k;h&&(u[x][2]*=-1),k<0&&(w<0||u[x][2]E&&(w|=1<E&&(w|=1<u[x][1])&&(z=x);var F=-1;for(x=0;x<3;++x)(B=z^1<u[N][0]&&(N=B))}var j=v;j[0]=j[1]=j[2]=0,j[n.log2(F^z)]=z&F,j[n.log2(z^N)]=z&N;var U=7^N;U===w||U===R?(U=7^F,j[n.log2(N^U)]=U&N):j[n.log2(F^U)]=U&F;var V=m,H=w;for(M=0;M<3;++M)V[M]=H&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=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}"]);t.f=function(e){return i(e,s,l,null,[{name:"position",type:"vec3"}])};var u=n(["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}"]),c=n(["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}"]);t.bg=function(e){return i(e,u,c,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},9557:function(e,t,r){"use strict";e.exports=function(e,t,r,i,o,l){var u=n(e),f=a(e,[{buffer:u,size:3}]),d=s(e);d.attributes.position.location=0;var h=new c(e,d,u,f);return h.update(t,r,i,o,l),h};var n=r(5827),a=r(2944),o=r(875),s=r(1943).f,l=window||i.global||{},u=l.__TEXT_CACHE||{};function c(e,t,r,n){this.gl=e,this.shader=t,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}l.__TEXT_CACHE={};var f=c.prototype,d=[0,0];f.bind=function(e,t,r,n){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=e,i.view=t,i.projection=r,i.pixelScale=n,d[0]=this.gl.drawingBufferWidth,d[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=d},f.unbind=function(){this.vao.unbind()},f.update=function(e,t,r,n,i){var a=[];function s(e,t,r,n,i,s){var l=u[r];l||(l=u[r]={});var c=l[t];c||(c=l[t]=function(e,t){try{return o(e,t)}catch(r){return console.warn('error vectorizing text:"'+e+'" error:',r),{cells:[],positions:[]}}}(t,{triangles:!0,font:r,textAlign:"center",textBaseline:"middle",lineSpacing:i,styletags:s}));for(var f=(n||12)/12,d=c.positions,h=c.cells,p=0,v=h.length;p=0;--g){var y=d[m[g]];a.push(f*y[0],-f*y[1],e)}}for(var l=[0,0,0],c=[0,0,0],f=[0,0,0],d=[0,0,0],h={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},p=0;p<3;++p){f[p]=a.length/3|0,s(.5*(e[0][p]+e[1][p]),t[p],r[p],12,1.25,h),d[p]=(a.length/3|0)-f[p],l[p]=a.length/3|0;for(var v=0;v=0&&(i=r.length-n-1);var a=Math.pow(10,i),o=Math.round(e*t*a),s=o+"";if(s.indexOf("e")>=0)return s;var l=o/a,u=o%a;o<0?(l=0|-Math.ceil(l),u=0|-u):(l=0|Math.floor(l),u|=0);var c=""+l;if(o<0&&(c="-"+c),i){for(var f=""+u;f.length=e[0][i];--o)a.push({x:o*t[i],text:r(t[i],o)});n.push(a)}return n},t.equal=function(e,t){for(var r=0;r<3;++r){if(e[r].length!==t[r].length)return!1;for(var n=0;nr)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return e.bufferSubData(t,a,i),r}function c(e,t){for(var r=n.malloc(e.length,t),i=e.length,a=0;a=0;--n){if(t[n]!==r)return!1;r*=e[n]}return!0}(e.shape,e.stride))0===e.offset&&e.data.length===e.shape[0]?this.length=u(this.gl,this.type,this.length,this.usage,e.data,t):this.length=u(this.gl,this.type,this.length,this.usage,e.data.subarray(e.offset,e.shape[0]),t);else{var s=n.malloc(e.size,r),l=a(s,e.shape);i.assign(l,e),this.length=u(this.gl,this.type,this.length,this.usage,t<0?s:s.subarray(0,e.size),t),n.free(s)}}else if(Array.isArray(e)){var f;f=this.type===this.gl.ELEMENT_ARRAY_BUFFER?c(e,"uint16"):c(e,"float32"),this.length=u(this.gl,this.type,this.length,this.usage,t<0?f:f.subarray(0,e.length),t),n.free(f)}else if("object"===typeof e&&"number"===typeof e.length)this.length=u(this.gl,this.type,this.length,this.usage,e,t);else{if("number"!==typeof e&&void 0!==e)throw new Error("gl-buffer: Invalid data type");if(t>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");(e|=0)<=0&&(e=1),this.gl.bufferData(this.type,0|e,this.usage),this.length=e}},e.exports=function(e,t,r,n){if(r=r||e.ARRAY_BUFFER,n=n||e.DYNAMIC_DRAW,r!==e.ARRAY_BUFFER&&r!==e.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(n!==e.DYNAMIC_DRAW&&n!==e.STATIC_DRAW&&n!==e.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=e.createBuffer(),a=new s(e,r,i,0,n);return a.update(t),a}},1140:function(e,t,r){"use strict";var n=r(2858);e.exports=function(e,t){var r=e.positions,i=e.vectors,a={positions:[],vertexIntensity:[],vertexIntensityBounds:e.vertexIntensityBounds,vectors:[],cells:[],coneOffset:e.coneOffset,colormap:e.colormap};if(0===e.positions.length)return t&&(t[0]=[0,0,0],t[1]=[0,0,0]),a;for(var o=0,s=1/0,l=-1/0,u=1/0,c=-1/0,f=1/0,d=-1/0,h=null,p=null,v=[],m=1/0,g=!1,y=0;yo&&(o=n.length(b)),y){var _=2*n.distance(h,x)/(n.length(p)+n.length(b));_?(m=Math.min(m,_),g=!1):g=!0}g||(h=x,p=b),v.push(b)}var w=[s,u,f],k=[l,c,d];t&&(t[0]=w,t[1]=k),0===o&&(o=1);var T=1/o;isFinite(m)||(m=1),a.vectorScale=m;var M=e.coneSize||.5;e.absoluteConeSize&&(M=e.absoluteConeSize*T),a.coneScale=M,y=0;for(var A=0;y=1},h.isTransparent=function(){return this.opacity<1},h.pickSlots=1,h.setPickBase=function(e){this.pickId=e},h.update=function(e){e=e||{};var t=this.gl;this.dirty=!0,"lightPosition"in e&&(this.lightPosition=e.lightPosition),"opacity"in e&&(this.opacity=e.opacity),"ambient"in e&&(this.ambientLight=e.ambient),"diffuse"in e&&(this.diffuseLight=e.diffuse),"specular"in e&&(this.specularLight=e.specular),"roughness"in e&&(this.roughness=e.roughness),"fresnel"in e&&(this.fresnel=e.fresnel),void 0!==e.tubeScale&&(this.tubeScale=e.tubeScale),void 0!==e.vectorScale&&(this.vectorScale=e.vectorScale),void 0!==e.coneScale&&(this.coneScale=e.coneScale),void 0!==e.coneOffset&&(this.coneOffset=e.coneOffset),e.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=t.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=t.LINEAR,this.texture.setPixels(function(e){for(var t=c({colormap:e,nshades:256,format:"rgba"}),r=new Uint8Array(1024),n=0;n<256;++n){for(var i=t[n],a=0;a<3;++a)r[4*n+a]=i[a];r[4*n+3]=255*i[3]}return u(r,[256,256,4],[4,0,1])}(e.colormap)),this.texture.generateMipmap());var r=e.cells,n=e.positions,i=e.vectors;if(n&&r&&i){var a=[],o=[],s=[],l=[],f=[];this.cells=r,this.positions=n,this.vectors=i;var d=e.meshColor||[1,1,1,1],h=e.vertexIntensity,p=1/0,v=-1/0;if(h)if(e.vertexIntensityBounds)p=+e.vertexIntensityBounds[0],v=+e.vertexIntensityBounds[1];else for(var m=0;m0){var v=this.triShader;v.bind(),v.uniforms=u,this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},h.drawPick=function(e){e=e||{};for(var t=this.gl,r=e.model||f,n=e.view||f,i=e.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(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[t.drawingBufferWidth,t.drawingBufferHeight];var s={model:r,view:n,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(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},h.pick=function(e){if(!e)return null;if(e.id!==this.pickId)return null;var t=e.value[0]+256*e.value[1]+65536*e.value[2],r=this.cells[t],n=this.positions[r[1]].slice(0,3),i={position:n,dataCoordinate:n,index:Math.floor(r[1]/48)};return"cone"===this.traceType?i.index=Math.floor(r[1]/48):"streamtube"===this.traceType&&(i.intensity=this.intensity[r[1]],i.velocity=this.vectors[r[1]].slice(0,3),i.divergence=this.vectors[r[1]][3],i.index=t),i},h.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()},e.exports=function(e,t,r){var s=r.shaders;1===arguments.length&&(e=(t=e).gl);var l=function(e,t){var r=n(e,t.meshShader.vertex,t.meshShader.fragment,null,t.meshShader.attributes);return r.attributes.position.location=0,r.attributes.color.location=2,r.attributes.uv.location=3,r.attributes.vector.location=4,r}(e,s),c=function(e,t){var r=n(e,t.pickShader.vertex,t.pickShader.fragment,null,t.pickShader.attributes);return r.attributes.position.location=0,r.attributes.id.location=1,r.attributes.vector.location=4,r}(e,s),f=o(e,u(new Uint8Array([255,255,255,255]),[1,1,4]));f.generateMipmap(),f.minFilter=e.LINEAR_MIPMAP_LINEAR,f.magFilter=e.LINEAR;var h=i(e),p=i(e),v=i(e),m=i(e),g=i(e),y=new d(e,f,l,c,h,p,g,v,m,a(e,[{buffer:h,type:e.FLOAT,size:4},{buffer:g,type:e.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:v,type:e.FLOAT,size:4},{buffer:m,type:e.FLOAT,size:2},{buffer:p,type:e.FLOAT,size:4}]),r.traceType||"cone");return y.update(t),y}},7234:function(e,t,r){var n=r(6832),i=n(["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=n(["#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=n(["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=n(["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}"]);t.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},1950:function(e){e.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(e,t,r){var n=r(1950);e.exports=function(e){return n[e]}},3110:function(e,t,r){"use strict";e.exports=function(e){var t=e.gl,r=n(t),o=i(t,[{buffer:r,type:t.FLOAT,size:3,offset:0,stride:40},{buffer:r,type:t.FLOAT,size:4,offset:12,stride:40},{buffer:r,type:t.FLOAT,size:3,offset:28,stride:40}]),l=a(t);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var u=new s(t,r,o,l);return u.update(e),u};var n=r(5827),i=r(2944),a=r(7667),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(e,t,r,n){this.gl=e,this.shader=n,this.buffer=t,this.vao=r,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var l=s.prototype;function u(e,t){for(var r=0;r<3;++r)e[0][r]=Math.min(e[0][r],t[r]),e[1][r]=Math.max(e[1][r],t[r])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(e){var t=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=e.view||o,i=r.projection=e.projection||o;r.model=e.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var a=n[12],s=n[13],l=n[14],u=n[15],c=(e._ortho?2:1)*this.pixelRatio*(i[3]*a+i[7]*s+i[11]*l+i[15]*u)/t.drawingBufferHeight;this.vao.bind();for(var f=0;f<3;++f)t.lineWidth(this.lineWidth[f]*this.pixelRatio),r.capSize=this.capSize[f]*c,this.lineCount[f]&&t.drawArrays(t.LINES,this.lineOffset[f],this.lineCount[f]);this.vao.unbind()};var c=function(){for(var e=new Array(3),t=0;t<3;++t){for(var r=[],n=1;n<=2;++n)for(var i=-1;i<=1;i+=2){var a=[0,0,0];a[(n+t)%3]=i,r.push(a)}e[t]=r}return e}();function f(e,t,r,n){for(var i=c[n],a=0;a0&&((h=c.slice())[s]+=p[1][s],i.push(c[0],c[1],c[2],v[0],v[1],v[2],v[3],0,0,0,h[0],h[1],h[2],v[0],v[1],v[2],v[3],0,0,0),u(this.bounds,h),o+=2+f(i,h,v,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(e,t,r){"use strict";var n=r(6832),i=r(5158),a=n(["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=n(["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}"]);e.exports=function(e){return i(e,a,o,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},4234:function(e,t,r){"use strict";var n=r(8931);e.exports=function(e,t,r,n){i||(i=e.FRAMEBUFFER_UNSUPPORTED,a=e.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=e.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=e.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var u=e.getExtension("WEBGL_draw_buffers");if(!l&&u&&function(e,t){var r=e.getParameter(t.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(r+1);for(var n=0;n<=r;++n){for(var i=new Array(r),a=0;ac||r<0||r>c)throw new Error("gl-fbo: Parameters are too large for FBO");var f=1;if("color"in(n=n||{})){if((f=Math.max(0|n.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(f>1){if(!u)throw new Error("gl-fbo: Multiple draw buffer extension not supported");if(f>e.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+f+" draw buffers")}}var d=e.UNSIGNED_BYTE,h=e.getExtension("OES_texture_float");if(n.float&&f>0){if(!h)throw new Error("gl-fbo: Context does not support floating point textures");d=e.FLOAT}else n.preferFloat&&f>0&&h&&(d=e.FLOAT);var v=!0;"depth"in n&&(v=!!n.depth);var m=!1;return"stencil"in n&&(m=!!n.stencil),new p(e,t,r,d,f,v,m,u)};var i,a,o,s,l=null;function u(e){return[e.getParameter(e.FRAMEBUFFER_BINDING),e.getParameter(e.RENDERBUFFER_BINDING),e.getParameter(e.TEXTURE_BINDING_2D)]}function c(e,t){e.bindFramebuffer(e.FRAMEBUFFER,t[0]),e.bindRenderbuffer(e.RENDERBUFFER,t[1]),e.bindTexture(e.TEXTURE_2D,t[2])}function f(e){switch(e){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 d(e,t,r,i,a,o){if(!i)return null;var s=n(e,t,r,a,i);return s.magFilter=e.NEAREST,s.minFilter=e.NEAREST,s.mipSamples=1,s.bind(),e.framebufferTexture2D(e.FRAMEBUFFER,o,e.TEXTURE_2D,s.handle,0),s}function h(e,t,r,n,i){var a=e.createRenderbuffer();return e.bindRenderbuffer(e.RENDERBUFFER,a),e.renderbufferStorage(e.RENDERBUFFER,n,t,r),e.framebufferRenderbuffer(e.FRAMEBUFFER,i,e.RENDERBUFFER,a),a}function p(e,t,r,n,i,a,o,s){this.gl=e,this._shape=[0|t,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var p=0;p1&&s.drawBuffersWEBGL(l[o]);var y=r.getExtension("WEBGL_depth_texture");y?p?e.depth=d(r,i,a,y.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):v&&(e.depth=d(r,i,a,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):v&&p?e._depth_rb=h(r,i,a,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):v?e._depth_rb=h(r,i,a,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):p&&(e._depth_rb=h(r,i,a,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){for(e._destroyed=!0,r.bindFramebuffer(r.FRAMEBUFFER,null),r.deleteFramebuffer(e.handle),e.handle=null,e.depth&&(e.depth.dispose(),e.depth=null),e._depth_rb&&(r.deleteRenderbuffer(e._depth_rb),e._depth_rb=null),g=0;gi||r<0||r>i)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");e._shape[0]=t,e._shape[1]=r;for(var a=u(n),o=0;o>8*h&255;this.pickOffset=r,i.bind();var p=i.uniforms;p.viewTransform=e,p.pickOffset=t,p.shape=this.shape;var v=i.attributes;return this.positionBuffer.bind(),v.position.pointer(),this.weightBuffer.bind(),v.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),v.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),r+this.shape[0]*this.shape[1]}}}(),c.pick=function(e,t,r){var n=this.pickOffset,i=this.shape[0]*this.shape[1];if(r=n+i)return null;var a=r-n,o=this.xData,s=this.yData;return{object:this,pointId:a,dataCoord:[o[a%this.shape[0]],s[a/this.shape[0]|0]]}},c.update=function(e){var t=(e=e||{}).shape||[0,0],r=e.x||i(t[0]),o=e.y||i(t[1]),s=e.z||new Float32Array(t[0]*t[1]),l=!1!==e.zsmooth;this.xData=r,this.yData=o;var u,c,d,h,p=e.colorLevels||[0],v=e.colorValues||[0,0,0,1],m=p.length,g=this.bounds;l?(u=g[0]=r[0],c=g[1]=o[0],d=g[2]=r[r.length-1],h=g[3]=o[o.length-1]):(u=g[0]=r[0]+(r[1]-r[0])/2,c=g[1]=o[0]+(o[1]-o[0])/2,d=g[2]=r[r.length-1]+(r[r.length-1]-r[r.length-2])/2,h=g[3]=o[o.length-1]+(o[o.length-1]-o[o.length-2])/2);var y=1/(d-u),x=1/(h-c),b=t[0],_=t[1];this.shape=[b,_];var w=(l?(b-1)*(_-1):b*_)*(f.length>>>1);this.numVertices=w;for(var k=a.mallocUint8(4*w),T=a.mallocFloat32(2*w),M=a.mallocUint8(2*w),A=a.mallocUint32(w),S=0,E=l?b-1:b,C=l?_-1:_,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\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=n(["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"}];t.createShader=function(e){return i(e,a,o,null,l)},t.createPickShader=function(e){return i(e,a,s,null,l)}},6086:function(e,t,r){"use strict";e.exports=function(e){var t=e.gl||e.scene&&e.scene.gl,r=f(t);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var o=d(t);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=n(t),l=i(t,[{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}]),c=u(new Array(1024),[256,1,4]),h=0;h<1024;++h)c.data[h]=255;var p=a(t,c);p.wrap=t.REPEAT;var v=new g(t,r,o,s,l,p);return v.update(e),v};var n=r(5827),i=r(2944),a=r(8931),o=new Uint8Array(4),s=new Float32Array(o.buffer),l=r(5070),u=r(5050),c=r(248),f=c.createShader,d=c.createPickShader,h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function p(e,t){for(var r=0,n=0;n<3;++n){var i=e[n]-t[n];r+=i*i}return Math.sqrt(r)}function v(e){for(var t=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;r<3;++r)t[0][r]=Math.max(e[0][r],t[0][r]),t[1][r]=Math.min(e[1][r],t[1][r]);return t}function m(e,t,r,n){this.arcLength=e,this.position=t,this.index=r,this.dataCoordinate=n}function g(e,t,r,n,i,a){this.gl=e,this.shader=t,this.pickShader=r,this.buffer=n,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=g.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(e){this.pickId=e},y.drawTransparent=y.draw=function(e){if(this.vertexCount){var t=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:e.model||h,view:e.view||h,projection:e.projection||h,clipBounds:v(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[t.drawingBufferWidth,t.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(t.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.drawPick=function(e){if(this.vertexCount){var t=this.gl,r=this.pickShader,n=this.vao;r.bind(),r.uniforms={model:e.model||h,view:e.view||h,projection:e.projection||h,pickId:this.pickId,clipBounds:v(this.clipBounds),screenShape:[t.drawingBufferWidth,t.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(t.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.update=function(e){var t,r;this.dirty=!0;var n=!!e.connectGaps;"dashScale"in e&&(this.dashScale=e.dashScale),this.hasAlpha=!1,"opacity"in e&&(this.opacity=+e.opacity,this.opacity<1&&(this.hasAlpha=!0));var i=[],a=[],o=[],s=0,c=0,f=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],d=e.position||e.positions;if(d){var h=e.color||e.colors||[0,0,0,1],v=e.lineWidth||1,m=!1;e:for(t=1;t0){for(var w=0;w<24;++w)i.push(i[i.length-12]);c+=2,m=!0}continue e}f[0][r]=Math.min(f[0][r],b[r],_[r]),f[1][r]=Math.max(f[1][r],b[r],_[r])}Array.isArray(h[0])?(g=h.length>t-1?h[t-1]:h.length>0?h[h.length-1]:[0,0,0,1],y=h.length>t?h[t]:h.length>0?h[h.length-1]:[0,0,0,1]):g=y=h,3===g.length&&(g=[g[0],g[1],g[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&g[3]<1&&(this.hasAlpha=!0),x=Array.isArray(v)?v.length>t-1?v[t-1]:v.length>0?v[v.length-1]:[0,0,0,1]:v;var k=s;if(s+=p(b,_),m){for(r=0;r<2;++r)i.push(b[0],b[1],b[2],_[0],_[1],_[2],k,x,g[0],g[1],g[2],g[3]);c+=2,m=!1}i.push(b[0],b[1],b[2],_[0],_[1],_[2],k,x,g[0],g[1],g[2],g[3],b[0],b[1],b[2],_[0],_[1],_[2],k,-x,g[0],g[1],g[2],g[3],_[0],_[1],_[2],b[0],b[1],b[2],s,-x,y[0],y[1],y[2],y[3],_[0],_[1],_[2],b[0],b[1],b[2],s,x,y[0],y[1],y[2],y[3]),c+=4}}if(this.buffer.update(i),a.push(s),o.push(d[d.length-1].slice()),this.bounds=f,this.vertexCount=c,this.points=o,this.arcLength=a,"dashes"in e){var T=e.dashes.slice();for(T.unshift(0),t=1;t1.0001)return null;g+=m[f]}return Math.abs(g-1)>.001?null:[d,s(e,m),m]}},2056:function(e,t,r){var n=r(6832),i=n(["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=n(["#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=n(["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=n(["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=n(["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}"]),u=n(["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}"]),c=n(["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=n(["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}"]),d=n(["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}"]),h=n(["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=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec3 contourColor;\n\nvoid main() {\n gl_FragColor = vec4(contourColor, 1.0);\n}\n"]);t.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:c,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:d,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:h,fragment:p,attributes:[{name:"position",type:"vec3"}]}},8116:function(e,t,r){"use strict";var n=r(5158),i=r(5827),a=r(2944),o=r(8931),s=r(115),l=r(104),u=r(7437),c=r(5050),f=r(9156),d=r(7212),h=r(5306),p=r(2056),v=r(4340),m=p.meshShader,g=p.wireShader,y=p.pointShader,x=p.pickShader,b=p.pointPickShader,_=p.contourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function k(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,k,T,M,A,S){this.gl=e,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=t,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=c,this.triangleNormals=d,this.triangleUVs=f,this.triangleIds=u,this.triangleVAO=h,this.triangleCount=0,this.lineWidth=1,this.edgePositions=p,this.edgeColors=m,this.edgeUVs=g,this.edgeIds=v,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=x,this.pointColors=_,this.pointUVs=k,this.pointSizes=T,this.pointIds=b,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=w,this._view=w,this._projection=w,this._resolution=[1,1]}var T=k.prototype;function M(e,t){if(!t)return 1;if(!t.length)return 1;for(var r=0;re&&r>0){var n=(t[r][0]-e)/(t[r][0]-t[r-1][0]);return t[r][1]*(1-n)+n*t[r-1][1]}}return 1}function A(e){var t=n(e,y.vertex,y.fragment);return t.attributes.position.location=0,t.attributes.color.location=2,t.attributes.uv.location=3,t.attributes.pointSize.location=4,t}function S(e){var t=n(e,x.vertex,x.fragment);return t.attributes.position.location=0,t.attributes.id.location=1,t}function E(e){var t=n(e,b.vertex,b.fragment);return t.attributes.position.location=0,t.attributes.id.location=1,t.attributes.pointSize.location=4,t}function C(e){var t=n(e,_.vertex,_.fragment);return t.attributes.position.location=0,t}T.isOpaque=function(){return!this.hasAlpha},T.isTransparent=function(){return this.hasAlpha},T.pickSlots=1,T.setPickBase=function(e){this.pickId=e},T.highlight=function(e){if(e&&this.contourEnable){for(var t=d(this.cells,this.intensity,e.intensity),r=t.cells,n=t.vertexIds,i=t.vertexWeights,a=r.length,o=h.mallocFloat32(6*a),s=0,l=0;l0&&((f=this.triShader).bind(),f.uniforms=s,this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((f=this.lineShader).bind(),f.uniforms=s,this.edgeVAO.bind(),t.lineWidth(this.lineWidth*this.pixelRatio),t.drawArrays(t.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((f=this.pointShader).bind(),f.uniforms=s,this.pointVAO.bind(),t.drawArrays(t.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(),t.drawArrays(t.LINES,0,this.contourCount),this.contourVAO.unbind())},T.drawPick=function(e){e=e||{};for(var t=this.gl,r=e.model||w,n=e.view||w,i=e.projection||w,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(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[t.drawingBufferWidth,t.drawingBufferHeight];var s,l={model:r,view:n,projection:i,clipBounds:a,pickId:this.pickId/255};(s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),t.lineWidth(this.lineWidth*this.pixelRatio),t.drawArrays(t.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),t.drawArrays(t.POINTS,0,this.pointCount),this.pointVAO.unbind())},T.pick=function(e){if(!e)return null;if(e.id!==this.pickId)return null;for(var t=e.value[0]+256*e.value[1]+65536*e.value[2],r=this.cells[t],n=this.positions,i=new Array(r.length),a=0;al[T]&&(a.uniforms.dataAxis=e,a.uniforms.screenOffset=t,a.uniforms.color=m[n],a.uniforms.angle=g[n],u.drawArrays(u.TRIANGLES,l[T],l[M]-l[T]))),y[n]&&k&&(t[1^n]-=A*h*x[n],a.uniforms.dataAxis=r,a.uniforms.screenOffset=t,a.uniforms.color=b[n],a.uniforms.angle=_[n],u.drawArrays(u.TRIANGLES,w,k)),t[1^n]=A*c[2+(1^n)]-1,p[n+2]&&(t[1^n]+=A*h*v[n+2],Tl[T]&&(a.uniforms.dataAxis=e,a.uniforms.screenOffset=t,a.uniforms.color=m[n+2],a.uniforms.angle=g[n+2],u.drawArrays(u.TRIANGLES,l[T],l[M]-l[T]))),y[n+2]&&k&&(t[1^n]+=A*h*x[n+2],a.uniforms.dataAxis=r,a.uniforms.screenOffset=t,a.uniforms.color=b[n+2],a.uniforms.angle=_[n+2],u.drawArrays(u.TRIANGLES,w,k))}}(),u.drawTitle=function(){var e=[0,0],t=[0,0];return function(){var r=this.plot,n=this.shader,i=r.gl,a=r.screenBox,o=r.titleCenter,s=r.titleAngle,l=r.titleColor,u=r.pixelRatio;if(this.titleCount){for(var c=0;c<2;++c)t[c]=2*(o[c]*u-a[c])/(a[2+c]-a[c])-1;n.bind(),n.uniforms.dataAxis=e,n.uniforms.screenOffset=t,n.uniforms.angle=s,n.uniforms.color=l,i.drawArrays(i.TRIANGLES,this.titleOffset,this.titleCount)}}}(),u.bind=function(){var e=[0,0],t=[0,0],r=[0,0];return function(){var n=this.plot,i=this.shader,a=n._tickBounds,o=n.dataBox,s=n.screenBox,l=n.viewBox;i.bind();for(var u=0;u<2;++u){var c=a[u],f=a[u+2]-c,d=.5*(o[u+2]+o[u]),h=o[u+2]-o[u],p=l[u],v=l[u+2]-p,m=s[u],g=s[u+2]-m;t[u]=2*f/h*v/g,e[u]=2*(c-d)/h*v/g}r[1]=2*n.pixelRatio/(s[3]-s[1]),r[0]=r[1]*(s[3]-s[1])/(s[2]-s[0]),i.uniforms.dataScale=t,i.uniforms.dataShift=e,i.uniforms.textScale=r,this.vbo.bind(),i.attributes.textCoordinate.pointer()}}(),u.update=function(e){var t,r,n,i,o,s=[],l=e.ticks,u=e.bounds;for(o=0;o<2;++o){var c=[Math.floor(s.length/3)],f=[-1/0],d=l[o];for(t=0;t=0){var v=t[p]-n[p]*(t[p+2]-t[p])/(n[p+2]-n[p]);0===p?o.drawLine(v,t[1],v,t[3],h[p],d[p]):o.drawLine(t[0],v,t[2],v,h[p],d[p])}}for(p=0;p=0;--e)this.objects[e].dispose();for(this.objects.length=0,e=this.overlays.length-1;e>=0;--e)this.overlays[e].dispose();this.overlays.length=0,this.gl=null},u.addObject=function(e){this.objects.indexOf(e)<0&&(this.objects.push(e),this.setDirty())},u.removeObject=function(e){for(var t=this.objects,r=0;rMath.abs(t))u.rotate(a,0,0,-e*r*Math.PI*p.rotateSpeed/window.innerWidth);else if(!p._ortho){var o=-p.zoomSpeed*i*t/window.innerHeight*(a-u.lastT())/20;u.pan(a,0,0,f*(Math.exp(o)-1))}}}),!0)},p.enableMouseListeners(),p};var n=r(8161),i=r(1152),a=r(6145),o=r(6475),s=r(2565),l=r(5233)},8245:function(e,t,r){var n=r(6832),i=r(5158),a=n(["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=n(["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}"]);e.exports=function(e){return i(e,a,o,null,[{name:"position",type:"vec2"}])}},1059:function(e,t,r){"use strict";var n=r(4296),i=r(7453),a=r(2771),o=r(6496),s=r(2611),l=r(4234),u=r(8126),c=r(6145),f=r(1120),d=r(5268),h=r(8245),p=r(2321)({tablet:!0,featureDetect:!0});function v(){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 m(e){var t=Math.round(Math.log(Math.abs(e))/Math.log(10));if(t<0){var r=Math.round(Math.pow(10,-t));return Math.ceil(e*r)/r}return t>0?(r=Math.round(Math.pow(10,t)),Math.ceil(e/r)*r):Math.ceil(e)}function g(e){return"boolean"!==typeof e||e}e.exports={createScene:function(e){(e=e||{}).camera=e.camera||{};var t=e.canvas;t||(t=document.createElement("canvas"),e.container?e.container.appendChild(t):document.body.appendChild(t));var r=e.gl;if(r||(e.glOptions&&(p=!!e.glOptions.preserveDrawingBuffer),r=function(e,t){var r=null;try{(r=e.getContext("webgl",t))||(r=e.getContext("experimental-webgl",t))}catch(n){return null}return r}(t,e.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:p})),!r)throw new Error("webgl not supported");var y=e.bounds||[[-10,-10,-10],[10,10,10]],x=new v,b=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!p}),_=h(r),w=e.cameraObject&&!0===e.cameraObject._ortho||e.camera.projection&&"orthographic"===e.camera.projection.type||!1,k={eye:e.camera.eye||[2,0,0],center:e.camera.center||[0,0,0],up:e.camera.up||[0,1,0],zoomMin:e.camera.zoomMax||.1,zoomMax:e.camera.zoomMin||100,mode:e.camera.mode||"turntable",_ortho:w},T=e.axes||{},M=i(r,T);M.enable=!T.disable;var A=e.spikes||{},S=o(r,A),E=[],C=[],L=[],P=[],O=!0,I=!0,D=new Array(16),R=new Array(16),z={view:null,projection:D,model:R,_ortho:!1},F=(I=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),N=e.cameraObject||n(t,k),B={gl:r,contextLost:!1,pixelRatio:e.pixelRatio||1,canvas:t,selection:x,camera:N,axes:M,axesPixels:null,spikes:S,bounds:y,objects:E,shape:F,aspect:e.aspectRatio||[1,1,1],pickRadius:e.pickRadius||10,zNear:e.zNear||.01,zFar:e.zFar||1e3,fovy:e.fovy||Math.PI/4,clearColor:e.clearColor||[0,0,0,0],autoResize:g(e.autoResize),autoBounds:g(e.autoBounds),autoScale:!!e.autoScale,autoCenter:g(e.autoCenter),clipToBounds:g(e.clipToBounds),snapToData:!!e.snapToData,onselect:e.onselect||null,onrender:e.onrender||null,onclick:e.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(e){this.aspect[0]=e.x,this.aspect[1]=e.y,this.aspect[2]=e.z,I=!0},setBounds:function(e,t){this.bounds[0][e]=t.min,this.bounds[1][e]=t.max},setClearColor:function(e){this.clearColor=e},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)}},j=[r.drawingBufferWidth/B.pixelRatio|0,r.drawingBufferHeight/B.pixelRatio|0];function U(){if(!B._stopped&&B.autoResize){var e=t.parentNode,r=1,n=1;e&&e!==document.body?(r=e.clientWidth,n=e.clientHeight):(r=window.innerWidth,n=window.innerHeight);var i=0|Math.ceil(r*B.pixelRatio),a=0|Math.ceil(n*B.pixelRatio);if(i!==t.width||a!==t.height){t.width=i,t.height=a;var o=t.style;o.position=o.position||"absolute",o.left="0px",o.top="0px",o.width=r+"px",o.height=n+"px",O=!0}}}function V(){for(var e=E.length,t=P.length,n=0;n0&&0===L[t-1];)L.pop(),P.pop().dispose()}function H(){if(B.contextLost)return!0;r.isContextLost()&&(B.contextLost=!0,B.mouseListener.enabled=!1,B.selection.object=null,B.oncontextloss&&B.oncontextloss())}B.autoResize&&U(),window.addEventListener("resize",U),B.update=function(e){B._stopped||(e=e||{},O=!0,I=!0)},B.add=function(e){B._stopped||(e.axes=M,E.push(e),C.push(-1),O=!0,I=!0,V())},B.remove=function(e){if(!B._stopped){var t=E.indexOf(e);t<0||(E.splice(t,1),C.pop(),O=!0,I=!0,V())}},B.dispose=function(){if(!B._stopped&&(B._stopped=!0,window.removeEventListener("resize",U),t.removeEventListener("webglcontextlost",H),B.mouseListener.enabled=!1,!B.contextLost)){M.dispose(),S.dispose();for(var e=0;ex.distance)continue;for(var u=0;u 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"]),t.pickVertex=n(["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"]),t.pickFragment=n(["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(e,t,r){"use strict";var n=r(5158),i=r(5827),a=r(5306),o=r(8023);function s(e,t,r,n,i){this.plot=e,this.offsetBuffer=t,this.pickBuffer=r,this.shader=n,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}e.exports=function(e,t){var r=e.gl,a=i(r),l=i(r),u=n(r,o.pointVertex,o.pointFragment),c=n(r,o.pickVertex,o.pickFragment),f=new s(e,a,l,u,c);return f.update(t),e.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(e){var t;function r(t,r){return t in e?e[t]:r}e=e||{},this.sizeMin=r("sizeMin",.5),this.sizeMax=r("sizeMax",20),this.color=r("color",[1,0,0,1]).slice(),this.areaRatio=r("areaRatio",1),this.borderColor=r("borderColor",[0,0,0,1]).slice(),this.blend=r("blend",!1);var n=e.positions.length>>>1,i=e.positions instanceof Float32Array,o=e.idToIndex instanceof Int32Array&&e.idToIndex.length>=n,s=e.positions,l=i?s:a.mallocFloat32(s.length),u=o?e.idToIndex:a.mallocInt32(n);if(i||l.set(s),!o)for(l.set(s),t=0;t>>1;for(r=0;r=t[0]&&a<=t[2]&&o>=t[1]&&o<=t[3]&&n++}return n}(this.points,o),c=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(u,.33333)));e[0]=2/s,e[4]=2/l,e[6]=-2*o[0]/s-1,e[7]=-2*o[1]/l-1,this.offsetBuffer.bind(),i.bind(),i.attributes.position.pointer(),i.uniforms.matrix=e,i.uniforms.color=this.color,i.uniforms.borderColor=this.borderColor,i.uniforms.pointCloud=c<5,i.uniforms.pointSize=c,i.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),n&&(t[0]=255&r,t[1]=r>>8&255,t[2]=r>>16&255,t[3]=r>>24&255,this.pickBuffer.bind(),i.attributes.pickId.pointer(a.UNSIGNED_BYTE),i.uniforms.pickOffset=t,this.pickOffset=r);var f=a.getParameter(a.BLEND),d=a.getParameter(a.DITHER);return f&&!this.blend&&a.disable(a.BLEND),d&&a.disable(a.DITHER),a.drawArrays(a.POINTS,0,this.pointCount),f&&!this.blend&&a.enable(a.BLEND),d&&a.enable(a.DITHER),r+this.pointCount}}(),l.draw=l.unifiedDraw,l.drawPick=l.unifiedDraw,l.pick=function(e,t,r){var n=this.pickOffset,i=this.pointCount;if(r=n+i)return null;var a=r-n,o=this.points;return{object:this,pointId:a,dataCoord:[o[2*a],o[2*a+1]]}}},6093:function(e){e.exports=function(e,t,r,n){var i,a,o,s,l,u=t[0],c=t[1],f=t[2],d=t[3],h=r[0],p=r[1],v=r[2],m=r[3];return(a=u*h+c*p+f*v+d*m)<0&&(a=-a,h=-h,p=-p,v=-v,m=-m),1-a>1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-n)*i)/o,l=Math.sin(n*i)/o):(s=1-n,l=n),e[0]=s*u+l*h,e[1]=s*c+l*p,e[2]=s*f+l*v,e[3]=s*d+l*m,e}},8240:function(e){"use strict";e.exports=function(e){return e||0===e?e.toString():""}},4123:function(e,t,r){"use strict";var n=r(875);e.exports=function(e,t,r){var a=i[t];if(a||(a=i[t]={}),e in a)return a[e];var o={textAlign:"center",textBaseline:"middle",lineHeight:1,font:t,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=n(e,o);o.triangles=!1;var l,u,c=n(e,o);if(r&&1!==r){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"]),u=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}"]),c=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],f={vertex:a,fragment:l,attributes:c},d={vertex:o,fragment:l,attributes:c},h={vertex:s,fragment:l,attributes:c},p={vertex:a,fragment:u,attributes:c},v={vertex:o,fragment:u,attributes:c},m={vertex:s,fragment:u,attributes:c};function g(e,t){var r=n(e,t),i=r.attributes;return i.position.location=0,i.color.location=1,i.glyph.location=2,i.id.location=3,r}t.createPerspective=function(e){return g(e,f)},t.createOrtho=function(e){return g(e,d)},t.createProject=function(e){return g(e,h)},t.createPickPerspective=function(e){return g(e,p)},t.createPickOrtho=function(e){return g(e,v)},t.createPickProject=function(e){return g(e,m)}},2182:function(e,t,r){"use strict";var n=r(3596),i=r(5827),a=r(2944),o=r(5306),s=r(104),l=r(9282),u=r(4123),c=r(8240),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function d(e,t){var r=e[0],n=e[1],i=e[2],a=e[3];return e[0]=t[0]*r+t[4]*n+t[8]*i+t[12]*a,e[1]=t[1]*r+t[5]*n+t[9]*i+t[13]*a,e[2]=t[2]*r+t[6]*n+t[10]*i+t[14]*a,e[3]=t[3]*r+t[7]*n+t[11]*i+t[15]*a,e}function h(e,t,r,n){return d(n,n),d(n,n),d(n,n)}function p(e,t){this.index=e,this.dataCoordinate=this.position=t}function v(e){return!0===e||e>1?1:e}function m(e,t,r,n,i,a,o,s,l,u,c,f){this.gl=e,this.pixelRatio=1,this.shader=t,this.orthoShader=r,this.projectShader=n,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=u,this.pickOrthoShader=c,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}e.exports=function(e){var t=e.gl,r=l.createPerspective(t),n=l.createOrtho(t),o=l.createProject(t),s=l.createPickPerspective(t),u=l.createPickOrtho(t),c=l.createPickProject(t),f=i(t),d=i(t),h=i(t),p=i(t),v=a(t,[{buffer:f,size:3,type:t.FLOAT},{buffer:d,size:4,type:t.FLOAT},{buffer:h,size:2,type:t.FLOAT},{buffer:p,size:4,type:t.UNSIGNED_BYTE,normalized:!0}]),g=new m(t,r,n,o,f,d,h,p,v,s,u,c);return g.update(e),g};var g=m.prototype;g.pickSlots=1,g.setPickBase=function(e){this.pickId=e},g.isTransparent=function(){if(this.hasAlpha)return!0;for(var e=0;e<3;++e)if(this.axesProject[e]&&this.projectHasAlpha)return!0;return!1},g.isOpaque=function(){if(!this.hasAlpha)return!0;for(var e=0;e<3;++e)if(this.axesProject[e]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],x=[0,0,0],b=[0,0,0],_=[0,0,0,1],w=[0,0,0,1],k=f.slice(),T=[0,0,0],M=[[0,0,0],[0,0,0]];function A(e){return e[0]=e[1]=e[2]=0,e}function S(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=1,e}function E(e,t,r,n){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[r]=n,e}function C(e,t,r,n){var i,a=t.axesProject,o=t.gl,l=e.uniforms,u=r.model||f,c=r.view||f,d=r.projection||f,p=t.axesBounds,v=function(e){for(var t=M,r=0;r<2;++r)for(var n=0;n<3;++n)t[r][n]=Math.max(Math.min(e[r][n],1e8),-1e8);return t}(t.clipBounds);i=t.axes&&t.axes.lastCubeProps?t.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,e.bind(),l.view=c,l.projection=d,l.screenSize=y,l.highlightId=t.highlightId,l.highlightScale=t.highlightScale,l.clipBounds=v,l.pickGroup=t.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(a[m]){l.scale=t.projectScale[m],l.opacity=t.projectOpacity[m];for(var g=k,C=0;C<16;++C)g[C]=0;for(C=0;C<4;++C)g[5*C]=1;g[5*m]=0,i[m]<0?g[12+m]=p[0][m]:g[12+m]=p[1][m],s(g,u,g),l.model=g;var L=(m+1)%3,P=(m+2)%3,O=A(x),I=A(b);O[L]=1,I[P]=1;var D=h(0,0,0,S(_,O)),R=h(0,0,0,S(w,I));if(Math.abs(D[1])>Math.abs(R[1])){var z=D;D=R,R=z,z=O,O=I,I=z;var F=L;L=P,P=F}D[0]<0&&(O[L]=-1),R[1]>0&&(I[P]=-1);var N=0,B=0;for(C=0;C<4;++C)N+=Math.pow(u[4*L+C],2),B+=Math.pow(u[4*P+C],2);O[L]/=Math.sqrt(N),I[P]/=Math.sqrt(B),l.axes[0]=O,l.axes[1]=I,l.fragClipBounds[0]=E(T,v[0],m,-1e8),l.fragClipBounds[1]=E(T,v[1],m,1e8),t.vao.bind(),t.vao.draw(o.TRIANGLES,t.vertexCount),t.lineWidth>0&&(o.lineWidth(t.lineWidth*n),t.vao.draw(o.LINES,t.lineVertexCount,t.vertexCount)),t.vao.unbind()}}var L=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function P(e,t,r,n,i,a,o){var s=r.gl;if((a===r.projectHasAlpha||o)&&C(t,r,n,i),a===r.hasAlpha||o){e.bind();var l=e.uniforms;l.model=n.model||f,l.view=n.view||f,l.projection=n.projection||f,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=r.highlightId,l.highlightScale=r.highlightScale,l.fragClipBounds=L,l.clipBounds=r.axes.bounds,l.opacity=r.opacity,l.pickGroup=r.pickId/255,l.pixelRatio=i,r.vao.bind(),r.vao.draw(s.TRIANGLES,r.vertexCount),r.lineWidth>0&&(s.lineWidth(r.lineWidth*i),r.vao.draw(s.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function O(e,t,r,i){var a;a=Array.isArray(e)?t=this.pointCount||t<0)return null;var r=this.points[t],n=this._selectResult;n.index=t;for(var i=0;i<3;++i)n.position[i]=n.dataCoordinate[i]=r[i];return n},g.highlight=function(e){if(e){var t=e.index,r=255&t,n=t>>8&255,i=t>>16&255;this.highlightId=[r/255,n/255,i/255,0]}else this.highlightId=[1,1,1,1]},g.update=function(e){if("perspective"in(e=e||{})&&(this.useOrtho=!e.perspective),"orthographic"in e&&(this.useOrtho=!!e.orthographic),"lineWidth"in e&&(this.lineWidth=e.lineWidth),"project"in e)if(Array.isArray(e.project))this.axesProject=e.project;else{var t=!!e.project;this.axesProject=[t,t,t]}if("projectScale"in e)if(Array.isArray(e.projectScale))this.projectScale=e.projectScale.slice();else{var r=+e.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,"projectOpacity"in e){Array.isArray(e.projectOpacity)?this.projectOpacity=e.projectOpacity.slice():(r=+e.projectOpacity,this.projectOpacity=[r,r,r]);for(var n=0;n<3;++n)this.projectOpacity[n]=v(this.projectOpacity[n]),this.projectOpacity[n]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in e&&(this.opacity=v(e.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var i,a,s=e.position,l=e.font||"normal",u=e.alignment||[0,0];if(2===u.length)i=u[0],a=u[1];else for(i=[],a=[],n=0;n0){var I=0,D=x,R=[0,0,0,1],z=[0,0,0,1],F=Array.isArray(h)&&Array.isArray(h[0]),N=Array.isArray(g)&&Array.isArray(g[0]);e:for(n=0;n<_;++n){for(y+=1,w=s[n],k=0;k<3;++k){if(isNaN(w[k])||!isFinite(w[k]))continue e;f[k]=Math.max(f[k],w[k]),c[k]=Math.min(c[k],w[k])}T=(B=O(d,n,l,this.pixelRatio)).mesh,M=B.lines,A=B.bounds;var B,j=B.visible;if(j)if(Array.isArray(h)){if(3===(U=F?n0?1-A[0][0]:G<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 g=r*c;o.drawBox(f-g,d-g,h+g,d+g,a),o.drawBox(f-g,p-g,h+g,p+g,a),o.drawBox(f-g,d-g,f+g,p+g,a),o.drawBox(h-g,d-g,h+g,p+g,a)}}}},s.update=function(e){e=e||{},this.innerFill=!!e.innerFill,this.outerFill=!!e.outerFill,this.innerColor=(e.innerColor||[0,0,0,.5]).slice(),this.outerColor=(e.outerColor||[0,0,0,.5]).slice(),this.borderColor=(e.borderColor||[0,0,0,1]).slice(),this.borderWidth=e.borderWidth||0,this.selectBox=(e.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},2611:function(e,t,r){"use strict";e.exports=function(e,t){var r=t[0],a=t[1],o=n(e,r,a,{}),s=i.mallocUint8(r*a*4);return new l(e,o,s)};var n=r(4234),i=r(5306),a=r(5050),o=r(2288).nextPow2;function s(e,t,r,n,i){this.coord=[e,t],this.id=r,this.value=n,this.distance=i}function l(e,t,r){this.gl=e,this.fbo=t,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(t.bind(),e.readPixels(0,0,t.shape[0],t.shape[1],e.RGBA,e.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}var u=l.prototype;Object.defineProperty(u,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(e){if(this.gl){this.fbo.shape=e;var t=this.fbo.shape[0],r=this.fbo.shape[1];if(r*t*4>this.buffer.length){i.free(this.buffer);for(var n=this.buffer=i.mallocUint8(o(r*t*4)),a=0;ar)for(e=r;et)for(e=t;e=0){for(var k=0|w.type.charAt(w.type.length-1),T=new Array(k),M=0;M=0;)A+=1;_[y]=A}var S=new Array(r.length);function E(){d.program=o.program(h,d._vref,d._fref,b,_);for(var e=0;e=0){if((p=d.charCodeAt(d.length-1)-48)<2||p>4)throw new n("","Invalid data type for attribute "+f+": "+d);s(e,t,h[0],i,p,a,f)}else{if(!(d.indexOf("mat")>=0))throw new n("","Unknown data type for attribute "+f+": "+d);var p;if((p=d.charCodeAt(d.length-1)-48)<2||p>4)throw new n("","Invalid data type for attribute "+f+": "+d);l(e,t,h,i,p,a,f)}}}return a};var n=r(9068);function i(e,t,r,n,i,a){this._gl=e,this._wrapper=t,this._index=r,this._locations=n,this._dimension=i,this._constFunc=a}var a=i.prototype;a.pointer=function(e,t,r,n){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,e||a.FLOAT,!!t,r||0,n||0),a.enableVertexAttribArray(o)},a.set=function(e,t,r,n){return this._constFunc(this._locations[this._index],e,t,r,n)},Object.defineProperty(a,"location",{get:function(){return this._locations[this._index]},set:function(e){return e!==this._locations[this._index]&&(this._locations[this._index]=0|e,this._wrapper.program=null),0|e}});var o=[function(e,t,r){return void 0===r.length?e.vertexAttrib1f(t,r):e.vertexAttrib1fv(t,r)},function(e,t,r,n){return void 0===r.length?e.vertexAttrib2f(t,r,n):e.vertexAttrib2fv(t,r)},function(e,t,r,n,i){return void 0===r.length?e.vertexAttrib3f(t,r,n,i):e.vertexAttrib3fv(t,r)},function(e,t,r,n,i,a){return void 0===r.length?e.vertexAttrib4f(t,r,n,i,a):e.vertexAttrib4fv(t,r)}];function s(e,t,r,n,a,s,l){var u=o[a],c=new i(e,t,r,n,a,u);Object.defineProperty(s,l,{set:function(t){return e.disableVertexAttribArray(n[r]),u(e,n[r],t),t},get:function(){return c},enumerable:!0})}function l(e,t,r,n,i,a,o){for(var l=new Array(i),u=new Array(i),c=0;c4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+y);e["uniformMatrix"+g+"fv"](s[f],!1,d);break}throw new i("","Unknown uniform data type for "+name+": "+y)}if((g=y.charCodeAt(y.length-1)-48)<2||g>4)throw new i("","Invalid data type");switch(y.charAt(0)){case"b":case"i":e["uniform"+g+"iv"](s[f],d);break;case"v":e["uniform"+g+"fv"](s[f],d);break;default:throw new i("","Unrecognized data type for vector "+name+": "+y)}}}}}}function u(e,t){if("object"!==typeof t)return[[e,t]];var r=[];for(var n in t){var i=t[n],a=e;parseInt(n)+""===n?a+="["+n+"]":a+="."+n,"object"===typeof i?r.push.apply(r,u(a,i)):r.push([a,i])}return r}function c(e,t,n){if("object"===typeof n){var u=f(n);Object.defineProperty(e,t,{get:a(u),set:l(n),enumerable:!0,configurable:!1})}else s[n]?Object.defineProperty(e,t,{get:(c=n,function(e,t,r){return e.getUniform(t.program,r[c])}),set:l(n),enumerable:!0,configurable:!1}):e[t]=function(e){switch(e){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":case"float":return 0;default:var t=e.indexOf("vec");if(0<=t&&t<=1&&e.length===4+t){if((r=e.charCodeAt(e.length-1)-48)<2||r>4)throw new i("","Invalid data type");return"b"===e.charAt(0)?o(r,!1):o(r,0)}if(0===e.indexOf("mat")&&4===e.length){var r;if((r=e.charCodeAt(e.length-1)-48)<2||r>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+e);return o(r*r,0)}throw new i("","Unknown uniform data type for "+name+": "+e)}}(r[n].type);var c}function f(e){var t;if(Array.isArray(e)){t=new Array(e.length);for(var r=0;r1){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=n(["#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=n(["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=n(["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}"]);t.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7307:function(e,t,r){"use strict";var n=r(2858),i=r(4020),a=["xyz","xzy","yxz","yzx","zxy","zyx"],o=function(e,t,r,a){for(var o=0,s=0;s0)for(k=0;k<8;k++){var T=(k+1)%8;u.push(d[k],h[k],h[T],h[T],d[T],d[k]),f.push(y,g,g,g,y,y),p.push(v,m,m,m,v,v);var M=u.length;c.push([M-6,M-5,M-4],[M-3,M-2,M-1])}var A=d;d=h,h=A;var S=y;y=g,g=S;var E=v;v=m,m=E}return{positions:u,cells:c,vectors:f,vertexIntensity:p}}(e,r,a,o)})),f=[],d=[],h=[],p=[];for(s=0;st)return r-1}return r},l=function(e,t,r){return er?r:e},u=function(e){var t=1/0;e.sort((function(e,t){return e-t}));for(var r=e.length,n=1;nf-1||y>d-1||x>h-1)return n.create();var b,_,w,k,T,M,A=a[0][p],S=a[0][g],E=a[1][v],C=a[1][y],L=a[2][m],P=(o-A)/(S-A),O=(u-E)/(C-E),I=(c-L)/(a[2][x]-L);switch(isFinite(P)||(P=.5),isFinite(O)||(O=.5),isFinite(I)||(I=.5),r.reversedX&&(p=f-1-p,g=f-1-g),r.reversedY&&(v=d-1-v,y=d-1-y),r.reversedZ&&(m=h-1-m,x=h-1-x),r.filled){case 5:T=m,M=x,w=v*h,k=y*h,b=p*h*d,_=g*h*d;break;case 4:T=m,M=x,b=p*h,_=g*h,w=v*h*f,k=y*h*f;break;case 3:w=v,k=y,T=m*d,M=x*d,b=p*d*h,_=g*d*h;break;case 2:w=v,k=y,b=p*d,_=g*d,T=m*d*f,M=x*d*f;break;case 1:b=p,_=g,T=m*f,M=x*f,w=v*f*h,k=y*f*h;break;default:b=p,_=g,w=v*f,k=y*f,T=m*f*d,M=x*f*d}var D=i[b+w+T],R=i[b+w+M],z=i[b+k+T],F=i[b+k+M],N=i[_+w+T],B=i[_+w+M],j=i[_+k+T],U=i[_+k+M],V=n.create(),H=n.create(),q=n.create(),W=n.create();n.lerp(V,D,N,P),n.lerp(H,R,B,P),n.lerp(q,z,j,P),n.lerp(W,F,U,P);var G=n.create(),Y=n.create();n.lerp(G,V,q,O),n.lerp(Y,H,W,O);var Z=n.create();return n.lerp(Z,G,Y,I),Z}(t,e,h)},v=e.getDivergence||function(e,t){var r=n.create(),i=1e-4;n.add(r,e,[i,0,0]);var a=p(r);n.subtract(a,a,t),n.scale(a,a,1/i),n.add(r,e,[0,i,0]);var o=p(r);n.subtract(o,o,t),n.scale(o,o,1/i),n.add(r,e,[0,0,i]);var s=p(r);return n.subtract(s,s,t),n.scale(s,s,1/i),n.add(r,a,o),n.add(r,r,s),r},m=[],g=t[0][0],y=t[0][1],x=t[0][2],b=t[1][0],_=t[1][1],w=t[1][2],k=function(e){var t=e[0],r=e[1],n=e[2];return!(tb||r_||nw)},T=10*n.distance(t[0],t[1])/i,M=T*T,A=1,S=0,E=r.length;E>1&&(A=function(e){for(var t=[],r=[],n=[],i={},a={},o={},s=e.length,l=0;lS&&(S=F),R.push(F),m.push({points:P,velocities:O,divergences:R});for(var N=0;N<100*i&&P.lengthM&&n.scale(B,B,T/Math.sqrt(j)),n.add(B,B,L),I=p(B),n.squaredDistance(D,B)-M>-1e-4*M&&(P.push(B),D=B,O.push(I),z=v(B,I),F=n.length(z),isFinite(F)&&F>S&&(S=F),R.push(F)),L=B}}var U=o(m,e.colormap,S,A);return f?U.tubeScale=f:(0===S&&(S=1),U.tubeScale=.5*c*A/S),U};var c=r(9578),f=r(1140).createMesh;e.exports.createTubeMesh=function(e,t){return f(e,t,{shaders:c,traceType:"streamtube"})}},9054:function(e,t,r){var n=r(5158),i=r(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"]);t.createShader=function(e){var t=n(e,a,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t.attributes.normal.location=2,t},t.createPickShader=function(e){var t=n(e,a,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t.attributes.normal.location=2,t},t.createContourShader=function(e){var t=n(e,s,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t},t.createPickContourShader=function(e){var t=n(e,s,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t}},3754:function(e,t,r){"use strict";e.exports=function(e){var t=e.gl,r=y(t),n=b(t),s=x(t),l=_(t),u=i(t),c=a(t,[{buffer:u,size:4,stride:w,offset:0},{buffer:u,size:3,stride:w,offset:16},{buffer:u,size:3,stride:w,offset:28}]),f=i(t),d=a(t,[{buffer:f,size:4,stride:20,offset:0},{buffer:f,size:1,stride:20,offset:16}]),h=i(t),p=a(t,[{buffer:h,size:2,type:t.FLOAT}]),v=o(t,1,S,t.RGBA,t.UNSIGNED_BYTE);v.minFilter=t.LINEAR,v.magFilter=t.LINEAR;var m=new E(t,[0,0],[[0,0,0],[0,0,0]],r,n,u,c,v,s,l,f,d,h,p,[0,0,0]),g={levels:[[],[],[]]};for(var k in e)g[k]=e[k];return g.colormap=g.colormap||"jet",m.update(g),m};var n=r(2288),i=r(5827),a=r(2944),o=r(8931),s=r(5306),l=r(9156),u=r(7498),c=r(7382),f=r(5050),d=r(4162),h=r(104),p=r(7437),v=r(5070),m=r(9144),g=r(9054),y=g.createShader,x=g.createContourShader,b=g.createPickShader,_=g.createPickContourShader,w=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(e,t,r,n,i){this.position=e,this.index=t,this.uv=r,this.level=n,this.dataCoordinate=i}!function(){for(var e=0;e<3;++e){var t=M[e],r=(e+2)%3;t[(e+1)%3+0]=1,t[r+3]=1,t[e+6]=1}}();var S=256;function E(e,t,r,n,i,a,o,l,u,c,d,h,p,v,m){this.gl=e,this.shape=t,this.bounds=r,this.objectOffset=m,this.intensityBounds=[],this._shader=n,this._pickShader=i,this._coordinateBuffer=a,this._vao=o,this._colorMap=l,this._contourShader=u,this._contourPickShader=c,this._contourBuffer=d,this._contourVAO=h,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=v,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(e,t){var r=!1,n=c([l({colormap:e,nshades:S,format:"rgba"}).map((function(e,n){var i=t?function(e,t){if(!t)return 1;if(!t.length)return 1;for(var r=0;re&&r>0){var n=(t[r][0]-e)/(t[r][0]-t[r-1][0]);return t[r][1]*(1-n)+n*t[r-1][1]}}return 1}(n/255,t):e[3];return i<1&&(r=!0),[e[0],e[1],e[2],255*i]}))]);return u.divseq(n,255),this.hasAlphaScale=r,n},C.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},C.isOpaque=function(){return!this.isTransparent()},C.pickSlots=1,C.setPickBase=function(e){this.pickId=e};var L=[0,0,0],P={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(e,t){var r,n,i,a=t.axes&&t.axes.lastCubeProps.axis||L,o=t.showSurface,s=t.showContour;for(r=0;r<3;++r)for(o=o||t.surfaceProject[r],n=0;n<3;++n)s=s||t.contourProject[r][n];for(r=0;r<3;++r){var l=P.projections[r];for(n=0;n<16;++n)l[n]=0;for(n=0;n<4;++n)l[5*n]=1;l[5*r]=0,l[12+r]=t.axesBounds[+(a[r]>0)][r],h(l,e.model,l);var u=P.clipBounds[r];for(i=0;i<2;++i)for(n=0;n<3;++n)u[i][n]=e.clipBounds[i][n];u[0][r]=-1e8,u[1][r]=1e8}return P.showSurface=o,P.showContour=s,P}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(e,t){e=e||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=I;n.model=e.model||k,n.view=e.view||k,n.projection=e.projection||k,n.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],n.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],n.objectOffset=this.objectOffset,n.contourColor=this.contourColor[0],n.inverseModel=p(n.inverseModel,n.model);for(var i=0;i<2;++i)for(var a=n.clipBounds[i],o=0;o<3;++o)a[o]=Math.min(Math.max(this.clipBounds[i][o],-1e8),1e8);n.kambient=this.ambientLight,n.kdiffuse=this.diffuseLight,n.kspecular=this.specularLight,n.roughness=this.roughness,n.fresnel=this.fresnel,n.opacity=this.opacity,n.height=0,n.permutation=R,n.vertexColor=this.vertexColor;var s=D;for(h(s,n.view,n.model),h(s,n.projection,s),p(s,s),i=0;i<3;++i)n.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 u=s[12+i];for(o=0;o<3;++o)u+=s[4*o+i]*this.lightPosition[o];n.lightPosition[i]=u/l}var c=O(n,this);if(c.showSurface){for(this._shader.bind(),this._shader.uniforms=n,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(r.TRIANGLES,this._vertexCount),i=0;i<3;++i)this.surfaceProject[i]&&this.vertexCount&&(this._shader.uniforms.model=c.projections[i],this._shader.uniforms.clipBounds=c.clipBounds[i],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(c.showContour){var f=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,f.bind(),f.uniforms=n;var d=this._contourVAO;for(d.bind(),i=0;i<3;++i)for(f.uniforms.permutation=M[i],r.lineWidth(this.contourWidth[i]*this.pixelRatio),o=0;o>4)/16)/255,i=Math.floor(n),a=n-i,o=t[1]*(e.value[1]+(15&e.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var u=r.position;u[0]=u[1]=u[2]=0;for(var c=0;c<2;++c)for(var f=c?a:1-a,d=0;d<2;++d)for(var h=i+c,p=s+d,m=f*(d?l:1-l),g=0;g<3;++g)u[g]+=this._field[g].get(h,p)*m;for(var y=this._pickResult.level,x=0;x<3;++x)if(y[x]=v.le(this.contourLevels[x],u[x]),y[x]<0)this.contourLevels[x].length>0&&(y[x]=0);else if(y[x]Math.abs(_-u[x])&&(y[x]+=1)}for(r.index[0]=a<.5?i:i+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/t[0],r.uv[1]=o/t[1],g=0;g<3;++g)r.dataCoordinate[g]=this._field[g].get(r.index[0],r.index[1]);return r},C.padField=function(e,t){var r=t.shape.slice(),n=e.shape.slice();u.assign(e.lo(1,1).hi(r[0],r[1]),t),u.assign(e.lo(1).hi(r[0],1),t.hi(r[0],1)),u.assign(e.lo(1,n[1]-1).hi(r[0],1),t.lo(0,r[1]-1).hi(r[0],1)),u.assign(e.lo(0,1).hi(1,r[1]),t.hi(1)),u.assign(e.lo(n[0]-1,1).hi(1,r[1]),t.lo(r[0]-1)),e.set(0,0,t.get(0,0)),e.set(0,n[1]-1,t.get(0,r[1]-1)),e.set(n[0]-1,0,t.get(r[0]-1,0)),e.set(n[0]-1,n[1]-1,t.get(r[0]-1,r[1]-1))},C.update=function(e){e=e||{},this.objectOffset=e.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in e&&(this.contourWidth=N(e.contourWidth,Number)),"showContour"in e&&(this.showContour=N(e.showContour,Boolean)),"showSurface"in e&&(this.showSurface=!!e.showSurface),"contourTint"in e&&(this.contourTint=N(e.contourTint,Boolean)),"contourColor"in e&&(this.contourColor=j(e.contourColor)),"contourProject"in e&&(this.contourProject=N(e.contourProject,(function(e){return N(e,Boolean)}))),"surfaceProject"in e&&(this.surfaceProject=e.surfaceProject),"dynamicColor"in e&&(this.dynamicColor=j(e.dynamicColor)),"dynamicTint"in e&&(this.dynamicTint=N(e.dynamicTint,Number)),"dynamicWidth"in e&&(this.dynamicWidth=N(e.dynamicWidth,Number)),"opacity"in e&&(this.opacity=e.opacity),"opacityscale"in e&&(this.opacityscale=e.opacityscale),"colorBounds"in e&&(this.colorBounds=e.colorBounds),"vertexColor"in e&&(this.vertexColor=e.vertexColor?1:0),"colormap"in e&&this._colorMap.setPixels(this.genColormap(e.colormap,this.opacityscale));var t=e.field||e.coords&&e.coords[2]||null,r=!1;if(t||(t=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 e||"coords"in e){var i=(t.shape[0]+2)*(t.shape[1]+2);i>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(i))),this._field[2]=f(this._field[2].data,[t.shape[0]+2,t.shape[1]+2]),this.padField(this._field[2],t),this.shape=t.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(e.coords){var l=e.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 u=l[o];for(g=0;g<2;++g)if(u.shape[g]!==a[g])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[o],u)}}else if(e.ticks){var c=e.ticks;if(!Array.isArray(c)||2!==c.length)throw new Error("gl-surface: invalid ticks");for(o=0;o<2;++o){var h=c[o];if((Array.isArray(h)||h.length)&&(h=f(h)),h.shape[0]!==a[o])throw new Error("gl-surface: invalid tick length");var p=f(h.data,a);p.stride[o]=h.stride[0],p.stride[1^o]=0,this.padField(this._field[o],p)}}else{for(o=0;o<2;++o){var v=[0,0];v[o]=1,this._field[o]=f(this._field[o].data,[a[0]+2,a[1]+2],v,0)}this._field[0].set(0,0,0);for(var g=0;g0){for(var xe=0;xe<5;++xe)J.pop();U-=1}continue e}J.push(ne[0],ne[1],oe[0],oe[1],ne[2]),U+=1}}re.push(U)}this._contourOffsets[Q]=te,this._contourCounts[Q]=re}var be=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,t.stride.slice()),u=0;"float32"===r?u=e.FLOAT:"float64"===r?(u=e.FLOAT,l=!1,r="float32"):"uint8"===r?u=e.UNSIGNED_BYTE:(u=e.UNSIGNED_BYTE,l=!1,r="uint8");var f,h,m=0;if(2===o.length)m=e.LUMINANCE,o=[o[0],o[1],1],t=n(t.data,o,[t.stride[0],t.stride[1],1],t.offset);else{if(3!==o.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===o[2])m=e.ALPHA;else if(2===o[2])m=e.LUMINANCE_ALPHA;else if(3===o[2])m=e.RGB;else{if(4!==o[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");m=e.RGBA}}u!==e.FLOAT||e.getExtension("OES_texture_float")||(u=e.UNSIGNED_BYTE,l=!1);var g=t.size;if(l)f=0===t.offset&&t.data.length===g?t.data:t.data.subarray(t.offset,t.offset+g);else{var y=[o[2],o[2]*o[0],1];h=a.malloc(g,r);var x=n(h,o,y,0);"float32"!==r&&"float64"!==r||u!==e.UNSIGNED_BYTE?i.assign(x,t):c(x,t),f=h.subarray(0,g)}var b=v(e);return e.texImage2D(e.TEXTURE_2D,0,m,o[0],o[1],0,m,u,f),l||a.free(h),new d(e,b,o[0],o[1],m,u)}(e,t)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")};var o=null,s=null,l=null;function u(e){return"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement||"undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement||"undefined"!=typeof ImageData&&e instanceof ImageData}var c=function(e,t){i.muls(e,t,255)};function f(e,t,r){var n=e.gl,i=n.getParameter(n.MAX_TEXTURE_SIZE);if(t<0||t>i||r<0||r>i)throw new Error("gl-texture2d: Invalid texture size");return e._shape=[t,r],e.bind(),n.texImage2D(n.TEXTURE_2D,0,e.format,t,r,0,e.format,e.type,null),e._mipLevels=[0],e}function d(e,t,r,n,i,a){this.gl=e,this.handle=t,this.format=i,this.type=a,this._shape=[r,n],this._mipLevels=[0],this._magFilter=e.NEAREST,this._minFilter=e.NEAREST,this._wrapS=e.CLAMP_TO_EDGE,this._wrapT=e.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(e){return o.wrapS=e}},{get:function(){return o._wrapT},set:function(e){return o.wrapT=e}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(e){return o.width=e}},{get:function(){return o._shape[1]},set:function(e){return o.height=e}}]),this._shapeVector=l}var h=d.prototype;function p(e,t){return 3===e.length?1===t[2]&&t[1]===e[0]*e[2]&&t[0]===e[2]:1===t[0]&&t[1]===e[0]}function v(e){var t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),t}function m(e,t,r,n,i){var a=e.getParameter(e.MAX_TEXTURE_SIZE);if(t<0||t>a||r<0||r>a)throw new Error("gl-texture2d: Invalid texture shape");if(i===e.FLOAT&&!e.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var o=v(e);return e.texImage2D(e.TEXTURE_2D,0,n,t,r,0,n,i,null),new d(e,o,t,r,n,i)}Object.defineProperties(h,{minFilter:{get:function(){return this._minFilter},set:function(e){this.bind();var t=this.gl;if(this.type===t.FLOAT&&o.indexOf(e)>=0&&(t.getExtension("OES_texture_float_linear")||(e=t.NEAREST)),s.indexOf(e)<0)throw new Error("gl-texture2d: Unknown filter mode "+e);return t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,e),this._minFilter=e}},magFilter:{get:function(){return this._magFilter},set:function(e){this.bind();var t=this.gl;if(this.type===t.FLOAT&&o.indexOf(e)>=0&&(t.getExtension("OES_texture_float_linear")||(e=t.NEAREST)),s.indexOf(e)<0)throw new Error("gl-texture2d: Unknown filter mode "+e);return t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,e),this._magFilter=e}},mipSamples:{get:function(){return this._anisoSamples},set:function(e){var t=this._anisoSamples;if(this._anisoSamples=0|Math.max(e,1),t!==this._anisoSamples){var r=this.gl.getExtension("EXT_texture_filter_anisotropic");r&&this.gl.texParameterf(this.gl.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(e){if(this.bind(),l.indexOf(e)<0)throw new Error("gl-texture2d: Unknown wrap mode "+e);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,e),this._wrapS=e}},wrapT:{get:function(){return this._wrapT},set:function(e){if(this.bind(),l.indexOf(e)<0)throw new Error("gl-texture2d: Unknown wrap mode "+e);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,e),this._wrapT=e}},wrap:{get:function(){return this._wrapVector},set:function(e){if(Array.isArray(e)||(e=[e,e]),2!==e.length)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var t=0;t<2;++t)if(l.indexOf(e[t])<0)throw new Error("gl-texture2d: Unknown wrap mode "+e);this._wrapS=e[0],this._wrapT=e[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),e}},shape:{get:function(){return this._shapeVector},set:function(e){if(Array.isArray(e)){if(2!==e.length)throw new Error("gl-texture2d: Invalid texture shape")}else e=[0|e,0|e];return f(this,0|e[0],0|e[1]),[0|e[0],0|e[1]]}},width:{get:function(){return this._shape[0]},set:function(e){return f(this,e|=0,this._shape[1]),e}},height:{get:function(){return this._shape[1]},set:function(e){return e|=0,f(this,this._shape[0],e),e}}}),h.bind=function(e){var t=this.gl;return void 0!==e&&t.activeTexture(t.TEXTURE0+(0|e)),t.bindTexture(t.TEXTURE_2D,this.handle),void 0!==e?0|e:t.getParameter(t.ACTIVE_TEXTURE)-t.TEXTURE0},h.dispose=function(){this.gl.deleteTexture(this.handle)},h.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var e=Math.min(this._shape[0],this._shape[1]),t=0;e>0;++t,e>>>=1)this._mipLevels.indexOf(t)<0&&this._mipLevels.push(t)},h.setPixels=function(e,t,r,o){var s=this.gl;this.bind(),Array.isArray(t)?(o=r,r=0|t[1],t=0|t[0]):(t=t||0,r=r||0),o=o||0;var l=u(e)?e:e.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,t,r,this.format,this.type,l);else{if(!(e.shape&&e.stride&&e.data))throw new Error("gl-texture2d: Unsupported data type");if(e.shape.length<2||t+e.shape[1]>this._shape[1]>>>o||r+e.shape[0]>this._shape[0]>>>o||t<0||r<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");!function(e,t,r,o,s,l,u,f){var d=f.dtype,h=f.shape.slice();if(h.length<2||h.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var v=0,m=0,g=p(h,f.stride.slice());if("float32"===d?v=e.FLOAT:"float64"===d?(v=e.FLOAT,g=!1,d="float32"):"uint8"===d?v=e.UNSIGNED_BYTE:(v=e.UNSIGNED_BYTE,g=!1,d="uint8"),2===h.length)m=e.LUMINANCE,h=[h[0],h[1],1],f=n(f.data,h,[f.stride[0],f.stride[1],1],f.offset);else{if(3!==h.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===h[2])m=e.ALPHA;else if(2===h[2])m=e.LUMINANCE_ALPHA;else if(3===h[2])m=e.RGB;else{if(4!==h[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");m=e.RGBA}h[2]}if(m!==e.LUMINANCE&&m!==e.ALPHA||s!==e.LUMINANCE&&s!==e.ALPHA||(m=s),m!==s)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var y=f.size,x=u.indexOf(o)<0;if(x&&u.push(o),v===l&&g)0===f.offset&&f.data.length===y?x?e.texImage2D(e.TEXTURE_2D,o,s,h[0],h[1],0,s,l,f.data):e.texSubImage2D(e.TEXTURE_2D,o,t,r,h[0],h[1],s,l,f.data):x?e.texImage2D(e.TEXTURE_2D,o,s,h[0],h[1],0,s,l,f.data.subarray(f.offset,f.offset+y)):e.texSubImage2D(e.TEXTURE_2D,o,t,r,h[0],h[1],s,l,f.data.subarray(f.offset,f.offset+y));else{var b;b=l===e.FLOAT?a.mallocFloat32(y):a.mallocUint8(y);var _=n(b,h,[h[2],h[2]*h[0],1]);v===e.FLOAT&&l===e.UNSIGNED_BYTE?c(_,f):i.assign(_,f),x?e.texImage2D(e.TEXTURE_2D,o,s,h[0],h[1],0,s,l,b.subarray(0,y)):e.texSubImage2D(e.TEXTURE_2D,o,t,r,h[0],h[1],s,l,b.subarray(0,y)),l===e.FLOAT?a.freeFloat32(b):a.freeUint8(b)}}(s,t,r,o,this.format,this.type,this._mipLevels,e)}}},3056:function(e){"use strict";e.exports=function(e,t,r){t?t.bind():e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,null);var n=0|e.getParameter(e.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error("gl-vao: Too many vertex attributes");for(var i=0;i1?0:Math.acos(s)};var n=r(5415),i=r(899),a=r(9305)},8827:function(e){e.exports=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e}},7622:function(e){e.exports=function(e){var t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},8782:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},8501:function(e){e.exports=function(){var e=new Float32Array(3);return e[0]=0,e[1]=0,e[2]=0,e}},903:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2];return e[0]=i*l-a*s,e[1]=a*o-n*l,e[2]=n*s-i*o,e}},5981:function(e,t,r){e.exports=r(8288)},8288:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2];return Math.sqrt(r*r+n*n+i*i)}},8629:function(e,t,r){e.exports=r(7979)},7979:function(e){e.exports=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e}},9305:function(e){e.exports=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}},154:function(e){e.exports=1e-6},4932:function(e,t,r){e.exports=function(e,t){var r=e[0],i=e[1],a=e[2],o=t[0],s=t[1],l=t[2];return Math.abs(r-o)<=n*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(i-s)<=n*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(a-l)<=n*Math.max(1,Math.abs(a),Math.abs(l))};var n=r(154)},5777:function(e){e.exports=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}},3306:function(e){e.exports=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e}},7447:function(e,t,r){e.exports=function(e,t,r,i,a,o){var s,l;for(t||(t=3),r||(r=0),l=i?Math.min(i*t+r,e.length):e.length,s=r;s0&&(a=1/Math.sqrt(a),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a),e}},6660:function(e){e.exports=function(e,t){t=t||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,i=Math.sqrt(1-n*n)*t;return e[0]=Math.cos(r)*i,e[1]=Math.sin(r)*i,e[2]=n*t,e}},392:function(e){e.exports=function(e,t,r,n){var i=r[1],a=r[2],o=t[1]-i,s=t[2]-a,l=Math.sin(n),u=Math.cos(n);return e[0]=t[0],e[1]=i+o*u-s*l,e[2]=a+o*l+s*u,e}},3222:function(e){e.exports=function(e,t,r,n){var i=r[0],a=r[2],o=t[0]-i,s=t[2]-a,l=Math.sin(n),u=Math.cos(n);return e[0]=i+s*l+o*u,e[1]=t[1],e[2]=a+s*u-o*l,e}},3388:function(e){e.exports=function(e,t,r,n){var i=r[0],a=r[1],o=t[0]-i,s=t[1]-a,l=Math.sin(n),u=Math.cos(n);return e[0]=i+o*u-s*l,e[1]=a+o*l+s*u,e[2]=t[2],e}},1624:function(e){e.exports=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e}},5685:function(e){e.exports=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e}},6722:function(e){e.exports=function(e,t,r,n){return e[0]=t[0]+r[0]*n,e[1]=t[1]+r[1]*n,e[2]=t[2]+r[2]*n,e}},831:function(e){e.exports=function(e,t,r,n){return e[0]=t,e[1]=r,e[2]=n,e}},5294:function(e,t,r){e.exports=r(6403)},3303:function(e,t,r){e.exports=r(4337)},6403:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2];return r*r+n*n+i*i}},4337:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2];return t*t+r*r+n*n}},8921:function(e,t,r){e.exports=r(911)},911:function(e){e.exports=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e}},9908:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2];return e[0]=n*r[0]+i*r[3]+a*r[6],e[1]=n*r[1]+i*r[4]+a*r[7],e[2]=n*r[2]+i*r[5]+a*r[8],e}},3255:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[3]*n+r[7]*i+r[11]*a+r[15];return o=o||1,e[0]=(r[0]*n+r[4]*i+r[8]*a+r[12])/o,e[1]=(r[1]*n+r[5]*i+r[9]*a+r[13])/o,e[2]=(r[2]*n+r[6]*i+r[10]*a+r[14])/o,e}},6568:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2],u=r[3],c=u*n+s*a-l*i,f=u*i+l*n-o*a,d=u*a+o*i-s*n,h=-o*n-s*i-l*a;return e[0]=c*u+h*-o+f*-l-d*-s,e[1]=f*u+h*-s+d*-o-c*-l,e[2]=d*u+h*-l+c*-s-f*-o,e}},3433:function(e){e.exports=function(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e[3]=t[3]+r[3],e}},1413:function(e){e.exports=function(e){var t=new Float32Array(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},3470:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},5313:function(e){e.exports=function(){var e=new Float32Array(4);return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e}},5446:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2],a=t[3]-e[3];return Math.sqrt(r*r+n*n+i*i+a*a)}},205:function(e){e.exports=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e[3]=t[3]/r[3],e}},4242:function(e){e.exports=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}},5680:function(e){e.exports=function(e,t,r,n){var i=new Float32Array(4);return i[0]=e,i[1]=t,i[2]=r,i[3]=n,i}},4020:function(e,t,r){e.exports={create:r(5313),clone:r(1413),fromValues:r(5680),copy:r(3470),set:r(6453),add:r(3433),subtract:r(2705),multiply:r(746),divide:r(205),min:r(2170),max:r(3030),scale:r(5510),scaleAndAdd:r(4224),distance:r(5446),squaredDistance:r(1542),length:r(8177),squaredLength:r(9037),negate:r(6459),inverse:r(8057),normalize:r(381),dot:r(4242),lerp:r(8746),random:r(3770),transformMat4:r(6342),transformQuat:r(5022)}},8057:function(e){e.exports=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e}},8177:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2],i=e[3];return Math.sqrt(t*t+r*r+n*n+i*i)}},8746:function(e){e.exports=function(e,t,r,n){var i=t[0],a=t[1],o=t[2],s=t[3];return e[0]=i+n*(r[0]-i),e[1]=a+n*(r[1]-a),e[2]=o+n*(r[2]-o),e[3]=s+n*(r[3]-s),e}},3030:function(e){e.exports=function(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e[2]=Math.max(t[2],r[2]),e[3]=Math.max(t[3],r[3]),e}},2170:function(e){e.exports=function(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e[2]=Math.min(t[2],r[2]),e[3]=Math.min(t[3],r[3]),e}},746:function(e){e.exports=function(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e[2]=t[2]*r[2],e[3]=t[3]*r[3],e}},6459:function(e){e.exports=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e}},381:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r*r+n*n+i*i+a*a;return o>0&&(o=1/Math.sqrt(o),e[0]=r*o,e[1]=n*o,e[2]=i*o,e[3]=a*o),e}},3770:function(e,t,r){var n=r(381),i=r(5510);e.exports=function(e,t){return t=t||1,e[0]=Math.random(),e[1]=Math.random(),e[2]=Math.random(),e[3]=Math.random(),n(e,e),i(e,e,t),e}},5510:function(e){e.exports=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e}},4224:function(e){e.exports=function(e,t,r,n){return e[0]=t[0]+r[0]*n,e[1]=t[1]+r[1]*n,e[2]=t[2]+r[2]*n,e[3]=t[3]+r[3]*n,e}},6453:function(e){e.exports=function(e,t,r,n,i){return e[0]=t,e[1]=r,e[2]=n,e[3]=i,e}},1542:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2],a=t[3]-e[3];return r*r+n*n+i*i+a*a}},9037:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2],i=e[3];return t*t+r*r+n*n+i*i}},2705:function(e){e.exports=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e[3]=t[3]-r[3],e}},6342:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3];return e[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,e[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,e[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,e[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,e}},5022:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2],u=r[3],c=u*n+s*a-l*i,f=u*i+l*n-o*a,d=u*a+o*i-s*n,h=-o*n-s*i-l*a;return e[0]=c*u+h*-o+f*-l-d*-s,e[1]=f*u+h*-s+d*-o-c*-l,e[2]=d*u+h*-l+c*-s-f*-o,e[3]=t[3],e}},9365:function(e,t,r){var n=r(8096),i=r(7896);e.exports=function(e){for(var t=Array.isArray(e)?e:n(e),r=0;r0)continue;r=e.slice(0,1).join("")}return B(r),P+=r.length,(S=S.slice(r.length)).length}}function Y(){return/[^a-fA-F0-9]/.test(t)?(B(S.join("")),A=l,T):(S.push(t),r=t,T+1)}function Z(){return"."===t||/[eE]/.test(t)?(S.push(t),A=v,r=t,T+1):"x"===t&&1===S.length&&"0"===S[0]?(A=_,S.push(t),r=t,T+1):/[^\d]/.test(t)?(B(S.join("")),A=l,T):(S.push(t),r=t,T+1)}function X(){return"f"===t&&(S.push(t),r=t,T+=1),/[eE]/.test(t)?(S.push(t),r=t,T+1):("-"!==t&&"+"!==t||!/[eE]/.test(r))&&/[^\d]/.test(t)?(B(S.join("")),A=l,T):(S.push(t),r=t,T+1)}function K(){if(/[^\d\w_]/.test(t)){var e=S.join("");return A=N[e]?y:F[e]?g:m,B(S.join("")),A=l,T}return S.push(t),r=t,T+1}};var n=r(399),i=r(9746),a=r(9525),o=r(9458),s=r(3585),l=999,u=9999,c=0,f=1,d=2,h=3,p=4,v=5,m=6,g=7,y=8,x=9,b=10,_=11,w=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},3585:function(e,t,r){var n=r(9525);n=n.slice().filter((function(e){return!/^(gl\_|texture)/.test(e)})),e.exports=n.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(e){e.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(e,t,r){var n=r(399);e.exports=n.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(e){e.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(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},8096:function(e,t,r){var n=r(3193);e.exports=function(e,t){var r=n(t),i=[];return i=(i=i.concat(r(e))).concat(r(null))}},6832:function(e){e.exports=function(e){"string"===typeof e&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n0;)for(var s=(e=o.pop()).adjacent,l=0;l<=r;++l){var u=s[l];if(u.boundary&&!(u.lastVisited<=-n)){for(var c=u.vertices,f=0;f<=r;++f){var d=c[f];i[f]=d<0?t:a[d]}var h=this.orient();if(h>0)return u;u.lastVisited=-n,0===h&&o.push(u)}}return null},c.walk=function(e,t){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,a=this.tuple,o=t?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];e:for(;!s.boundary;){for(var l=s.vertices,u=s.adjacent,c=0;c<=n;++c)a[c]=i[l[c]];for(s.lastVisited=r,c=0;c<=n;++c){var f=u[c];if(!(f.lastVisited>=r)){var d=a[c];a[c]=e;var h=this.orient();if(a[c]=d,h<0){s=f;continue e}f.boundary?f.lastVisited=-r:f.lastVisited=r}}return}return s},c.addPeaks=function(e,t){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,l=this.tuple,u=this.interior,c=this.simplices,f=[t];t.lastVisited=r,t.vertices[t.vertices.indexOf(-1)]=r,t.boundary=!1,u.push(t);for(var d=[];f.length>0;){var h=(t=f.pop()).vertices,p=t.adjacent,v=h.indexOf(r);if(!(v<0))for(var m=0;m<=n;++m)if(m!==v){var g=p[m];if(g.boundary&&!(g.lastVisited>=r)){var y=g.vertices;if(g.lastVisited!==-r){for(var x=0,b=0;b<=n;++b)y[b]<0?(x=b,l[b]=e):l[b]=i[y[b]];if(this.orient()>0){y[x]=r,g.boundary=!1,u.push(g),f.push(g),g.lastVisited=r;continue}g.lastVisited=-r}var _=g.adjacent,w=h.slice(),k=p.slice(),T=new a(w,k,!0);c.push(T);var M=_.indexOf(t);if(!(M<0))for(_[M]=T,k[v]=g,w[m]=-1,k[m]=t,p[m]=T,T.flip(),b=0;b<=n;++b){var A=w[b];if(!(A<0||A===r)){for(var S=new Array(n-1),E=0,C=0;C<=n;++C){var L=w[C];L<0||C===b||(S[E++]=L)}d.push(new o(S,T,b))}}}}}for(d.sort(s),m=0;m+1=0?o[l++]=s[c]:u=1&c;if(u===(1&e)){var f=o[0];o[0]=o[1],o[1]=f}t.push(o)}}return t}},9014:function(e,t,r){"use strict";var n=r(5070),i=0,a=1;function o(e,t,r,n,i){this.mid=e,this.left=t,this.right=r,this.leftPoints=n,this.rightPoints=i,this.count=(t?t.count:0)+(r?r.count:0)+n.length}e.exports=function(e){return e&&0!==e.length?new x(y(e)):new x(null)};var s=o.prototype;function l(e,t){e.mid=t.mid,e.left=t.left,e.right=t.right,e.leftPoints=t.leftPoints,e.rightPoints=t.rightPoints,e.count=t.count}function u(e,t){var r=y(t);e.mid=r.mid,e.left=r.left,e.right=r.right,e.leftPoints=r.leftPoints,e.rightPoints=r.rightPoints,e.count=r.count}function c(e,t){var r=e.intervals([]);r.push(t),u(e,r)}function f(e,t){var r=e.intervals([]),n=r.indexOf(t);return n<0?i:(r.splice(n,1),u(e,r),a)}function d(e,t,r){for(var n=0;n=0&&e[n][1]>=t;--n){var i=r(e[n]);if(i)return i}}function p(e,t){for(var r=0;r>1],i=[],a=[],s=[];for(r=0;r3*(t+1)?c(this,e):this.left.insert(e):this.left=y([e]);else if(e[0]>this.mid)this.right?4*(this.right.count+1)>3*(t+1)?c(this,e):this.right.insert(e):this.right=y([e]);else{var r=n.ge(this.leftPoints,e,m),i=n.ge(this.rightPoints,e,g);this.leftPoints.splice(r,0,e),this.rightPoints.splice(i,0,e)}},s.remove=function(e){var t=this.count-this.leftPoints;if(e[1]3*(t-1)?f(this,e):2===(u=this.left.remove(e))?(this.left=null,this.count-=1,a):(u===a&&(this.count-=1),u):i;if(e[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(t-1)?f(this,e):2===(u=this.right.remove(e))?(this.right=null,this.count-=1,a):(u===a&&(this.count-=1),u):i;if(1===this.count)return this.leftPoints[0]===e?2:i;if(1===this.leftPoints.length&&this.leftPoints[0]===e){if(this.left&&this.right){for(var r=this,o=this.left;o.right;)r=o,o=o.right;if(r===this)o.right=this.right;else{var s=this.left,u=this.right;r.count-=o.count,r.right=o.left,o.left=s,o.right=u}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=n.ge(this.leftPoints,e,m);sthis.mid?this.right&&(r=this.right.queryPoint(e,t))?r:h(this.rightPoints,e,t):p(this.leftPoints,t);var r},s.queryInterval=function(e,t,r){var n;return ethis.mid&&this.right&&(n=this.right.queryInterval(e,t,r))?n:tthis.mid?h(this.rightPoints,e,r):p(this.leftPoints,r)};var b=x.prototype;b.insert=function(e){this.root?this.root.insert(e):this.root=new o(e[0],null,null,[e],[e])},b.remove=function(e){if(this.root){var t=this.root.remove(e);return 2===t&&(this.root=null),t!==i}return!1},b.queryPoint=function(e,t){if(this.root)return this.root.queryPoint(e,t)},b.queryInterval=function(e,t,r){if(e<=t&&this.root)return this.root.queryInterval(e,t,r)},Object.defineProperty(b,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(b,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}})},9560:function(e){"use strict";e.exports=function(e){for(var t=new Array(e),r=0;r13)&&32!==t&&133!==t&&160!==t&&5760!==t&&6158!==t&&(t<8192||t>8205)&&8232!==t&&8233!==t&&8239!==t&&8287!==t&&8288!==t&&12288!==t&&65279!==t)return!1;return!0}},3578:function(e){e.exports=function(e,t,r){return e*(1-r)+t*r}},7191:function(e,t,r){var n=r(4690),i=r(9823),a=r(7332),o=r(7787),s=r(7437),l=r(2142),u={length:r(4693),normalize:r(899),dot:r(9305),cross:r(903)},c=i(),f=i(),d=[0,0,0,0],h=[[0,0,0],[0,0,0],[0,0,0]],p=[0,0,0];function v(e,t,r,n,i){e[0]=t[0]*n+r[0]*i,e[1]=t[1]*n+r[1]*i,e[2]=t[2]*n+r[2]*i}e.exports=function(e,t,r,i,m,g){if(t||(t=[0,0,0]),r||(r=[0,0,0]),i||(i=[0,0,0]),m||(m=[0,0,0,1]),g||(g=[0,0,0,1]),!n(c,e))return!1;if(a(f,c),f[3]=0,f[7]=0,f[11]=0,f[15]=1,Math.abs(o(f)<1e-8))return!1;var y,x,b=c[3],_=c[7],w=c[11],k=c[12],T=c[13],M=c[14],A=c[15];if(0!==b||0!==_||0!==w){if(d[0]=b,d[1]=_,d[2]=w,d[3]=A,!s(f,f))return!1;l(f,f),function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3];e[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,e[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,e[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,e[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o}(m,d,f)}else m[0]=m[1]=m[2]=0,m[3]=1;if(t[0]=k,t[1]=T,t[2]=M,x=c,(y=h)[0][0]=x[0],y[0][1]=x[1],y[0][2]=x[2],y[1][0]=x[4],y[1][1]=x[5],y[1][2]=x[6],y[2][0]=x[8],y[2][1]=x[9],y[2][2]=x[10],r[0]=u.length(h[0]),u.normalize(h[0],h[0]),i[0]=u.dot(h[0],h[1]),v(h[1],h[1],h[0],1,-i[0]),r[1]=u.length(h[1]),u.normalize(h[1],h[1]),i[0]/=r[1],i[1]=u.dot(h[0],h[2]),v(h[2],h[2],h[0],1,-i[1]),i[2]=u.dot(h[1],h[2]),v(h[2],h[2],h[1],1,-i[2]),r[2]=u.length(h[2]),u.normalize(h[2],h[2]),i[1]/=r[2],i[2]/=r[2],u.cross(p,h[1],h[2]),u.dot(h[0],p)<0)for(var S=0;S<3;S++)r[S]*=-1,h[S][0]*=-1,h[S][1]*=-1,h[S][2]*=-1;return g[0]=.5*Math.sqrt(Math.max(1+h[0][0]-h[1][1]-h[2][2],0)),g[1]=.5*Math.sqrt(Math.max(1-h[0][0]+h[1][1]-h[2][2],0)),g[2]=.5*Math.sqrt(Math.max(1-h[0][0]-h[1][1]+h[2][2],0)),g[3]=.5*Math.sqrt(Math.max(1+h[0][0]+h[1][1]+h[2][2],0)),h[2][1]>h[1][2]&&(g[0]=-g[0]),h[0][2]>h[2][0]&&(g[1]=-g[1]),h[1][0]>h[0][1]&&(g[2]=-g[2]),!0}},4690:function(e){e.exports=function(e,t){var r=t[15];if(0===r)return!1;for(var n=1/r,i=0;i<16;i++)e[i]=t[i]*n;return!0}},7649:function(e,t,r){var n=r(1868),i=r(1102),a=r(7191),o=r(7787),s=r(1116),l=f(),u=f(),c=f();function f(){return{translate:d(),scale:d(1),skew:d(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function d(e){return[e||0,e||0,e||0]}e.exports=function(e,t,r,f){if(0===o(t)||0===o(r))return!1;var d=a(t,l.translate,l.scale,l.skew,l.perspective,l.quaternion),h=a(r,u.translate,u.scale,u.skew,u.perspective,u.quaternion);return!(!d||!h)&&(n(c.translate,l.translate,u.translate,f),n(c.skew,l.skew,u.skew,f),n(c.scale,l.scale,u.scale,f),n(c.perspective,l.perspective,u.perspective,f),s(c.quaternion,l.quaternion,u.quaternion,f),i(e,c.translate,c.scale,c.skew,c.perspective,c.quaternion),!0)}},1102:function(e,t,r){var n={identity:r(9947),translate:r(998),multiply:r(104),create:r(9823),scale:r(3668),fromRotationTranslation:r(7280)},i=(n.create(),n.create());e.exports=function(e,t,r,a,o,s){return n.identity(e),n.fromRotationTranslation(e,s,t),e[3]=o[0],e[7]=o[1],e[11]=o[2],e[15]=o[3],n.identity(i),0!==a[2]&&(i[9]=a[2],n.multiply(e,e,i)),0!==a[1]&&(i[9]=0,i[8]=a[1],n.multiply(e,e,i)),0!==a[0]&&(i[8]=0,i[4]=a[0],n.multiply(e,e,i)),n.scale(e,e,r),e}},9298:function(e,t,r){"use strict";var n=r(5070),i=r(7649),a=r(7437),o=r(6109),s=r(7115),l=r(5240),u=r(3012),c=r(998),f=(r(3668),r(899)),d=[0,0,0];function h(e){this._components=e.slice(),this._time=[0],this.prevMatrix=e.slice(),this.nextMatrix=e.slice(),this.computedMatrix=e.slice(),this.computedInverse=e.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]}e.exports=function(e){return new h((e=e||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var p=h.prototype;p.recalcMatrix=function(e){var t=this._time,r=n.le(t,e),o=this.computedMatrix;if(!(r<0)){var s=this._components;if(r===t.length-1)for(var l=16*r,u=0;u<16;++u)o[u]=s[l++];else{var c=t[r+1]-t[r],d=(l=16*r,this.prevMatrix),h=!0;for(u=0;u<16;++u)d[u]=s[l++];var p=this.nextMatrix;for(u=0;u<16;++u)p[u]=s[l++],h=h&&d[u]===p[u];if(c<1e-6||h)for(u=0;u<16;++u)o[u]=d[u];else i(o,d,p,(e-t[r])/c)}var v=this.computedUp;v[0]=o[1],v[1]=o[5],v[2]=o[9],f(v,v);var m=this.computedInverse;a(m,o);var g=this.computedEye,y=m[15];g[0]=m[12]/y,g[1]=m[13]/y,g[2]=m[14]/y;var x=this.computedCenter,b=Math.exp(this.computedRadius[0]);for(u=0;u<3;++u)x[u]=g[u]-o[2+4*u]*b}},p.idle=function(e){if(!(e1&&n(e[o[c-2]],e[o[c-1]],u)<=0;)c-=1,o.pop();for(o.push(l),c=s.length;c>1&&n(e[s[c-2]],e[s[c-1]],u)>=0;)c-=1,s.pop();s.push(l)}r=new Array(s.length+o.length-2);for(var f=0,d=(i=0,o.length);i0;--h)r[f++]=s[h];return r};var n=r(417)[3]},6145:function(e,t,r){"use strict";e.exports=function(e,t){t||(t=e,e=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(e){var t=!1;return"altKey"in e&&(t=t||e.altKey!==o.alt,o.alt=!!e.altKey),"shiftKey"in e&&(t=t||e.shiftKey!==o.shift,o.shift=!!e.shiftKey),"ctrlKey"in e&&(t=t||e.ctrlKey!==o.control,o.control=!!e.ctrlKey),"metaKey"in e&&(t=t||e.metaKey!==o.meta,o.meta=!!e.metaKey),t}function u(e,s){var u=n.x(s),c=n.y(s);"buttons"in s&&(e=0|s.buttons),(e!==r||u!==i||c!==a||l(s))&&(r=0|e,i=u||0,a=c||0,t&&t(r,i,a,o))}function c(e){u(0,e)}function f(){(r||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,r=0,o.shift=o.alt=o.control=o.meta=!1,t&&t(0,0,0,o))}function d(e){l(e)&&t&&t(r,i,a,o)}function h(e){0===n.buttons(e)?u(0,e):u(r,e)}function p(e){u(r|n.buttons(e),e)}function v(e){u(r&~n.buttons(e),e)}function m(){s||(s=!0,e.addEventListener("mousemove",h),e.addEventListener("mousedown",p),e.addEventListener("mouseup",v),e.addEventListener("mouseleave",c),e.addEventListener("mouseenter",c),e.addEventListener("mouseout",c),e.addEventListener("mouseover",c),e.addEventListener("blur",f),e.addEventListener("keyup",d),e.addEventListener("keydown",d),e.addEventListener("keypress",d),e!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",d),window.addEventListener("keydown",d),window.addEventListener("keypress",d)))}m();var g={element:e};return Object.defineProperties(g,{enabled:{get:function(){return s},set:function(t){t?m():s&&(s=!1,e.removeEventListener("mousemove",h),e.removeEventListener("mousedown",p),e.removeEventListener("mouseup",v),e.removeEventListener("mouseleave",c),e.removeEventListener("mouseenter",c),e.removeEventListener("mouseout",c),e.removeEventListener("mouseover",c),e.removeEventListener("blur",f),e.removeEventListener("keyup",d),e.removeEventListener("keydown",d),e.removeEventListener("keypress",d),e!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",d),window.removeEventListener("keydown",d),window.removeEventListener("keypress",d)))},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),g};var n=r(4110)},2565:function(e){var t={left:0,top:0};e.exports=function(e,r,n){r=r||e.currentTarget||e.srcElement,Array.isArray(n)||(n=[0,0]);var i,a=e.clientX||0,o=e.clientY||0,s=(i=r)===window||i===document||i===document.body?t:i.getBoundingClientRect();return n[0]=a-s.left,n[1]=o-s.top,n}},4110:function(e,t){"use strict";function r(e){return e.target||e.srcElement||window}t.buttons=function(e){if("object"===typeof e){if("buttons"in e)return e.buttons;if("which"in e){if(2===(t=e.which))return 4;if(3===t)return 2;if(t>0)return 1<=0)return 1< 0"),"function"!==typeof e.vertex&&t("Must specify vertex creation function"),"function"!==typeof e.cell&&t("Must specify cell creation function"),"function"!==typeof e.phase&&t("Must specify phase function");for(var s=e.getters||[],l=new Array(a),u=0;u=0?l[u]=!0:l[u]=!1;return function(e,t,r,a,o,s){var l=[s,o].join(",");return(0,i[l])(e,t,r,n.mallocUint32,n.freeUint32)}(e.vertex,e.cell,e.phase,0,r,l)};var i={"false,0,1":function(e,t,r,n,i){return function(a,o,s,l){var u,c=0|a.shape[0],f=0|a.shape[1],d=a.data,h=0|a.offset,p=0|a.stride[0],v=0|a.stride[1],m=h,g=0|-p,y=0,x=0|-v,b=0,_=-p-v|0,w=0,k=0|p,T=v-p*c|0,M=0,A=0,S=0,E=2*c|0,C=n(E),L=n(E),P=0,O=0,I=-1,D=-1,R=0,z=0|-c,F=0|c,N=0,B=-c-1|0,j=c-1|0,U=0,V=0,H=0;for(M=0;M0){if(A=1,C[P++]=r(d[m],o,s,l),m+=k,c>0)for(M=1,u=d[m],O=C[P]=r(u,o,s,l),R=C[P+I],N=C[P+z],U=C[P+B],O===R&&O===N&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,R,N,U,o,s,l),V=L[P]=S++),P+=1,m+=k,M=2;M0)for(M=1,u=d[m],O=C[P]=r(u,o,s,l),R=C[P+I],N=C[P+z],U=C[P+B],O===R&&O===N&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,R,N,U,o,s,l),V=L[P]=S++,U!==N&&t(L[P+z],V,b,w,N,U,o,s,l)),P+=1,m+=k,M=2;M0){if(M=1,C[P++]=r(d[m],o,s,l),m+=k,f>0)for(A=1,u=d[m],O=C[P]=r(u,o,s,l),N=C[P+z],R=C[P+I],U=C[P+B],O===N&&O===R&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,N,R,U,o,s,l),V=L[P]=S++),P+=1,m+=k,A=2;A0)for(A=1,u=d[m],O=C[P]=r(u,o,s,l),N=C[P+z],R=C[P+I],U=C[P+B],O===N&&O===R&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,N,R,U,o,s,l),V=L[P]=S++,U!==N&&t(L[P+z],V,w,y,U,N,o,s,l)),P+=1,m+=k,A=2;A2&&a[1]>2&&n(i.pick(-1,-1).lo(1,1).hi(a[0]-2,a[1]-2),e.pick(-1,-1,0).lo(1,1).hi(a[0]-2,a[1]-2),e.pick(-1,-1,1).lo(1,1).hi(a[0]-2,a[1]-2)),a[1]>2&&(r(i.pick(0,-1).lo(1).hi(a[1]-2),e.pick(0,-1,1).lo(1).hi(a[1]-2)),t(e.pick(0,-1,0).lo(1).hi(a[1]-2))),a[1]>2&&(r(i.pick(a[0]-1,-1).lo(1).hi(a[1]-2),e.pick(a[0]-1,-1,1).lo(1).hi(a[1]-2)),t(e.pick(a[0]-1,-1,0).lo(1).hi(a[1]-2))),a[0]>2&&(r(i.pick(-1,0).lo(1).hi(a[0]-2),e.pick(-1,0,0).lo(1).hi(a[0]-2)),t(e.pick(-1,0,1).lo(1).hi(a[0]-2))),a[0]>2&&(r(i.pick(-1,a[1]-1).lo(1).hi(a[0]-2),e.pick(-1,a[1]-1,0).lo(1).hi(a[0]-2)),t(e.pick(-1,a[1]-1,1).lo(1).hi(a[0]-2))),e.set(0,0,0,0),e.set(0,0,1,0),e.set(a[0]-1,0,0,0),e.set(a[0]-1,0,1,0),e.set(0,a[1]-1,0,0),e.set(0,a[1]-1,1,0),e.set(a[0]-1,a[1]-1,0,0),e.set(a[0]-1,a[1]-1,1,0),e}}e.exports=function(e,t,r){return Array.isArray(r)||(r=n(t.dimension,"string"===typeof r?r:"clamp")),0===t.size?e:0===t.dimension?(e.set(0),e):function(e){var t=e.join();if(a=c[t])return a;for(var r=e.length,n=[f,d],i=1;i<=r;++i)n.push(h(i));var a=p.apply(void 0,n);return c[t]=a,a}(r)(e,t)}},3581:function(e){"use strict";function t(e,t){var r=Math.floor(t),n=t-r,i=0<=r&&r0;){x<64?(l=x,x=0):(l=64,x-=64);for(var b=0|e[1];b>0;){b<64?(u=b,b=0):(u=64,b-=64),n=g+x*f+b*d,o=y+x*p+b*v;var _=0,w=0,k=0,T=h,M=f-c*h,A=d-l*f,S=m,E=p-c*m,C=v-l*p;for(k=0;k0;){v<64?(l=v,v=0):(l=64,v-=64);for(var m=0|e[0];m>0;){m<64?(s=m,m=0):(s=64,m-=64),n=h+v*c+m*u,o=p+v*d+m*f;var g=0,y=0,x=c,b=u-l*c,_=d,w=f-l*d;for(y=0;y0;){y<64?(u=y,y=0):(u=64,y-=64);for(var x=0|e[0];x>0;){x<64?(s=x,x=0):(s=64,x-=64);for(var b=0|e[1];b>0;){b<64?(l=b,b=0):(l=64,b-=64),n=m+y*d+x*c+b*f,o=g+y*v+x*h+b*p;var _=0,w=0,k=0,T=d,M=c-u*d,A=f-s*c,S=v,E=h-u*v,C=p-s*h;for(k=0;kr;){g=0,y=v-o;t:for(m=0;mb)break t;y+=f,g+=d}for(g=v,y=v-o,m=0;m>1,q=H-j,W=H+j,G=U,Y=q,Z=H,X=W,K=V,$=i+1,J=a-1,Q=!0,ee=0,te=0,re=0,ne=f,ie=t(ne),ae=t(ne);M=l*G,A=l*Y,B=s;e:for(T=0;T0){m=G,G=Y,Y=m;break e}if(re<0)break e;B+=h}M=l*X,A=l*K,B=s;e:for(T=0;T0){m=X,X=K,K=m;break e}if(re<0)break e;B+=h}M=l*G,A=l*Z,B=s;e:for(T=0;T0){m=G,G=Z,Z=m;break e}if(re<0)break e;B+=h}M=l*Y,A=l*Z,B=s;e:for(T=0;T0){m=Y,Y=Z,Z=m;break e}if(re<0)break e;B+=h}M=l*G,A=l*X,B=s;e:for(T=0;T0){m=G,G=X,X=m;break e}if(re<0)break e;B+=h}M=l*Z,A=l*X,B=s;e:for(T=0;T0){m=Z,Z=X,X=m;break e}if(re<0)break e;B+=h}M=l*Y,A=l*K,B=s;e:for(T=0;T0){m=Y,Y=K,K=m;break e}if(re<0)break e;B+=h}M=l*Y,A=l*Z,B=s;e:for(T=0;T0){m=Y,Y=Z,Z=m;break e}if(re<0)break e;B+=h}M=l*X,A=l*K,B=s;e:for(T=0;T0){m=X,X=K,K=m;break e}if(re<0)break e;B+=h}for(M=l*G,A=l*Y,S=l*Z,E=l*X,C=l*K,L=l*U,P=l*H,O=l*V,N=0,B=s,T=0;T0)){if(re<0){for(M=l*b,A=l*$,S=l*J,B=s,T=0;T0)for(;;){for(_=s+J*l,N=0,T=0;T0)){for(_=s+J*l,N=0,T=0;TV){e:for(;;){for(_=s+$*l,N=0,B=s,T=0;T1&&n?s(r,n[0],n[1]):s(r)}(e,t,l);return n(l,u)}},8729:function(e,t,r){"use strict";var n=r(8139),i={};e.exports=function(e){var t=e.order,r=e.dtype,a=[t,r].join(":"),o=i[a];return o||(i[a]=o=n(t,r)),o(e),e}},5050:function(e,t,r){var n=r(4780),i="undefined"!==typeof Float64Array;function a(e,t){return e[0]-t[0]}function o(){var e,t=this.stride,r=new Array(t.length);for(e=0;e=0&&(t+=a*(r=0|e),i-=r),new n(this.data,i,a,t)},i.step=function(e){var t=this.shape[0],r=this.stride[0],i=this.offset,a=0,o=Math.ceil;return"number"===typeof e&&((a=0|e)<0?(i+=r*(t-1),t=o(-t/a)):t=o(t/a),r*=a),new n(this.data,t,r,i)},i.transpose=function(e){e=void 0===e?0:0|e;var t=this.shape,r=this.stride;return new n(this.data,t[e],r[e],this.offset)},i.pick=function(e){var r=[],n=[],i=this.offset;return"number"===typeof e&&e>=0?i=i+this.stride[0]*e|0:(r.push(this.shape[0]),n.push(this.stride[0])),(0,t[r.length+1])(this.data,r,n,i)},function(e,t,r,i){return new n(e,t[0],r[0],i)}},2:function(e,t,r){function n(e,t,r,n,i,a){this.data=e,this.shape=[t,r],this.stride=[n,i],this.offset=0|a}var i=n.prototype;return i.dtype=e,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(t,r,n){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r,n):this.data[this.offset+this.stride[0]*t+this.stride[1]*r]=n},i.get=function(t,r){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r):this.data[this.offset+this.stride[0]*t+this.stride[1]*r]},i.index=function(e,t){return this.offset+this.stride[0]*e+this.stride[1]*t},i.hi=function(e,t){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,this.stride[0],this.stride[1],this.offset)},i.lo=function(e,t){var r=this.offset,i=0,a=this.shape[0],o=this.shape[1],s=this.stride[0],l=this.stride[1];return"number"===typeof e&&e>=0&&(r+=s*(i=0|e),a-=i),"number"===typeof t&&t>=0&&(r+=l*(i=0|t),o-=i),new n(this.data,a,o,s,l,r)},i.step=function(e,t){var r=this.shape[0],i=this.shape[1],a=this.stride[0],o=this.stride[1],s=this.offset,l=0,u=Math.ceil;return"number"===typeof e&&((l=0|e)<0?(s+=a*(r-1),r=u(-r/l)):r=u(r/l),a*=l),"number"===typeof t&&((l=0|t)<0?(s+=o*(i-1),i=u(-i/l)):i=u(i/l),o*=l),new n(this.data,r,i,a,o,s)},i.transpose=function(e,t){e=void 0===e?0:0|e,t=void 0===t?1:0|t;var r=this.shape,i=this.stride;return new n(this.data,r[e],r[t],i[e],i[t],this.offset)},i.pick=function(e,r){var n=[],i=[],a=this.offset;return"number"===typeof e&&e>=0?a=a+this.stride[0]*e|0:(n.push(this.shape[0]),i.push(this.stride[0])),"number"===typeof r&&r>=0?a=a+this.stride[1]*r|0:(n.push(this.shape[1]),i.push(this.stride[1])),(0,t[n.length+1])(this.data,n,i,a)},function(e,t,r,i){return new n(e,t[0],t[1],r[0],r[1],i)}},3:function(e,t,r){function n(e,t,r,n,i,a,o,s){this.data=e,this.shape=[t,r,n],this.stride=[i,a,o],this.offset=0|s}var i=n.prototype;return i.dtype=e,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 e=Math.abs(this.stride[0]),t=Math.abs(this.stride[1]),r=Math.abs(this.stride[2]);return e>t?t>r?[2,1,0]:e>r?[1,2,0]:[1,0,2]:e>r?[2,0,1]:r>t?[0,1,2]:[0,2,1]}}),i.set=function(t,r,n,i){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n,i):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n]=i},i.get=function(t,r,n){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n]},i.index=function(e,t,r){return this.offset+this.stride[0]*e+this.stride[1]*t+this.stride[2]*r},i.hi=function(e,t,r){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,"number"!==typeof r||r<0?this.shape[2]:0|r,this.stride[0],this.stride[1],this.stride[2],this.offset)},i.lo=function(e,t,r){var i=this.offset,a=0,o=this.shape[0],s=this.shape[1],l=this.shape[2],u=this.stride[0],c=this.stride[1],f=this.stride[2];return"number"===typeof e&&e>=0&&(i+=u*(a=0|e),o-=a),"number"===typeof t&&t>=0&&(i+=c*(a=0|t),s-=a),"number"===typeof r&&r>=0&&(i+=f*(a=0|r),l-=a),new n(this.data,o,s,l,u,c,f,i)},i.step=function(e,t,r){var i=this.shape[0],a=this.shape[1],o=this.shape[2],s=this.stride[0],l=this.stride[1],u=this.stride[2],c=this.offset,f=0,d=Math.ceil;return"number"===typeof e&&((f=0|e)<0?(c+=s*(i-1),i=d(-i/f)):i=d(i/f),s*=f),"number"===typeof t&&((f=0|t)<0?(c+=l*(a-1),a=d(-a/f)):a=d(a/f),l*=f),"number"===typeof r&&((f=0|r)<0?(c+=u*(o-1),o=d(-o/f)):o=d(o/f),u*=f),new n(this.data,i,a,o,s,l,u,c)},i.transpose=function(e,t,r){e=void 0===e?0:0|e,t=void 0===t?1:0|t,r=void 0===r?2:0|r;var i=this.shape,a=this.stride;return new n(this.data,i[e],i[t],i[r],a[e],a[t],a[r],this.offset)},i.pick=function(e,r,n){var i=[],a=[],o=this.offset;return"number"===typeof e&&e>=0?o=o+this.stride[0]*e|0:(i.push(this.shape[0]),a.push(this.stride[0])),"number"===typeof r&&r>=0?o=o+this.stride[1]*r|0:(i.push(this.shape[1]),a.push(this.stride[1])),"number"===typeof n&&n>=0?o=o+this.stride[2]*n|0:(i.push(this.shape[2]),a.push(this.stride[2])),(0,t[i.length+1])(this.data,i,a,o)},function(e,t,r,i){return new n(e,t[0],t[1],t[2],r[0],r[1],r[2],i)}},4:function(e,t,r){function n(e,t,r,n,i,a,o,s,l,u){this.data=e,this.shape=[t,r,n,i],this.stride=[a,o,s,l],this.offset=0|u}var i=n.prototype;return i.dtype=e,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:r}),i.set=function(t,r,n,i,a){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i,a):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]=a},i.get=function(t,r,n,i){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]},i.index=function(e,t,r,n){return this.offset+this.stride[0]*e+this.stride[1]*t+this.stride[2]*r+this.stride[3]*n},i.hi=function(e,t,r,i){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,"number"!==typeof r||r<0?this.shape[2]:0|r,"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(e,t,r,i){var a=this.offset,o=0,s=this.shape[0],l=this.shape[1],u=this.shape[2],c=this.shape[3],f=this.stride[0],d=this.stride[1],h=this.stride[2],p=this.stride[3];return"number"===typeof e&&e>=0&&(a+=f*(o=0|e),s-=o),"number"===typeof t&&t>=0&&(a+=d*(o=0|t),l-=o),"number"===typeof r&&r>=0&&(a+=h*(o=0|r),u-=o),"number"===typeof i&&i>=0&&(a+=p*(o=0|i),c-=o),new n(this.data,s,l,u,c,f,d,h,p,a)},i.step=function(e,t,r,i){var a=this.shape[0],o=this.shape[1],s=this.shape[2],l=this.shape[3],u=this.stride[0],c=this.stride[1],f=this.stride[2],d=this.stride[3],h=this.offset,p=0,v=Math.ceil;return"number"===typeof e&&((p=0|e)<0?(h+=u*(a-1),a=v(-a/p)):a=v(a/p),u*=p),"number"===typeof t&&((p=0|t)<0?(h+=c*(o-1),o=v(-o/p)):o=v(o/p),c*=p),"number"===typeof r&&((p=0|r)<0?(h+=f*(s-1),s=v(-s/p)):s=v(s/p),f*=p),"number"===typeof i&&((p=0|i)<0?(h+=d*(l-1),l=v(-l/p)):l=v(l/p),d*=p),new n(this.data,a,o,s,l,u,c,f,d,h)},i.transpose=function(e,t,r,i){e=void 0===e?0:0|e,t=void 0===t?1:0|t,r=void 0===r?2:0|r,i=void 0===i?3:0|i;var a=this.shape,o=this.stride;return new n(this.data,a[e],a[t],a[r],a[i],o[e],o[t],o[r],o[i],this.offset)},i.pick=function(e,r,n,i){var a=[],o=[],s=this.offset;return"number"===typeof e&&e>=0?s=s+this.stride[0]*e|0:(a.push(this.shape[0]),o.push(this.stride[0])),"number"===typeof r&&r>=0?s=s+this.stride[1]*r|0:(a.push(this.shape[1]),o.push(this.stride[1])),"number"===typeof n&&n>=0?s=s+this.stride[2]*n|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,t[a.length+1])(this.data,a,o,s)},function(e,t,r,i){return new n(e,t[0],t[1],t[2],t[3],r[0],r[1],r[2],r[3],i)}},5:function(e,t,r){function n(e,t,r,n,i,a,o,s,l,u,c,f){this.data=e,this.shape=[t,r,n,i,a],this.stride=[o,s,l,u,c],this.offset=0|f}var i=n.prototype;return i.dtype=e,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:r}),i.set=function(t,r,n,i,a,o){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a,o):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]=o},i.get=function(t,r,n,i,a){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]},i.index=function(e,t,r,n,i){return this.offset+this.stride[0]*e+this.stride[1]*t+this.stride[2]*r+this.stride[3]*n+this.stride[4]*i},i.hi=function(e,t,r,i,a){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,"number"!==typeof r||r<0?this.shape[2]:0|r,"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(e,t,r,i,a){var o=this.offset,s=0,l=this.shape[0],u=this.shape[1],c=this.shape[2],f=this.shape[3],d=this.shape[4],h=this.stride[0],p=this.stride[1],v=this.stride[2],m=this.stride[3],g=this.stride[4];return"number"===typeof e&&e>=0&&(o+=h*(s=0|e),l-=s),"number"===typeof t&&t>=0&&(o+=p*(s=0|t),u-=s),"number"===typeof r&&r>=0&&(o+=v*(s=0|r),c-=s),"number"===typeof i&&i>=0&&(o+=m*(s=0|i),f-=s),"number"===typeof a&&a>=0&&(o+=g*(s=0|a),d-=s),new n(this.data,l,u,c,f,d,h,p,v,m,g,o)},i.step=function(e,t,r,i,a){var o=this.shape[0],s=this.shape[1],l=this.shape[2],u=this.shape[3],c=this.shape[4],f=this.stride[0],d=this.stride[1],h=this.stride[2],p=this.stride[3],v=this.stride[4],m=this.offset,g=0,y=Math.ceil;return"number"===typeof e&&((g=0|e)<0?(m+=f*(o-1),o=y(-o/g)):o=y(o/g),f*=g),"number"===typeof t&&((g=0|t)<0?(m+=d*(s-1),s=y(-s/g)):s=y(s/g),d*=g),"number"===typeof r&&((g=0|r)<0?(m+=h*(l-1),l=y(-l/g)):l=y(l/g),h*=g),"number"===typeof i&&((g=0|i)<0?(m+=p*(u-1),u=y(-u/g)):u=y(u/g),p*=g),"number"===typeof a&&((g=0|a)<0?(m+=v*(c-1),c=y(-c/g)):c=y(c/g),v*=g),new n(this.data,o,s,l,u,c,f,d,h,p,v,m)},i.transpose=function(e,t,r,i,a){e=void 0===e?0:0|e,t=void 0===t?1:0|t,r=void 0===r?2:0|r,i=void 0===i?3:0|i,a=void 0===a?4:0|a;var o=this.shape,s=this.stride;return new n(this.data,o[e],o[t],o[r],o[i],o[a],s[e],s[t],s[r],s[i],s[a],this.offset)},i.pick=function(e,r,n,i,a){var o=[],s=[],l=this.offset;return"number"===typeof e&&e>=0?l=l+this.stride[0]*e|0:(o.push(this.shape[0]),s.push(this.stride[0])),"number"===typeof r&&r>=0?l=l+this.stride[1]*r|0:(o.push(this.shape[1]),s.push(this.stride[1])),"number"===typeof n&&n>=0?l=l+this.stride[2]*n|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,t[o.length+1])(this.data,o,s,l)},function(e,t,r,i){return new n(e,t[0],t[1],t[2],t[3],t[4],r[0],r[1],r[2],r[3],r[4],i)}}};function l(e,t){var r=-1===t?"T":String(t),n=s[r];return-1===t?n(e):0===t?n(e,u[e][0]):n(e,u[e],o)}var u={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};e.exports=function(e,t,r,a){if(void 0===e)return(0,u.array[0])([]);"number"===typeof e&&(e=[e]),void 0===t&&(t=[e.length]);var o=t.length;if(void 0===r){r=new Array(o);for(var s=o-1,c=1;s>=0;--s)r[s]=c,c*=t[s]}if(void 0===a)for(a=0,s=0;s>>0;e.exports=function(e,t){if(isNaN(e)||isNaN(t))return NaN;if(e===t)return e;if(0===e)return t<0?-i:i;var r=n.hi(e),o=n.lo(e);return t>e===e>0?o===a?(r+=1,o=0):o+=1:0===o?(o=a,r-=1):o-=1,n.pack(o,r)}},115:function(e,t){t.vertexNormals=function(e,t,r){for(var n=t.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;oa){var b=i[u],_=1/Math.sqrt(m*y);for(x=0;x<3;++x){var w=(x+1)%3,k=(x+2)%3;b[x]+=_*(g[w]*v[k]-g[k]*v[w])}}}for(o=0;oa)for(_=1/Math.sqrt(T),x=0;x<3;++x)b[x]*=_;else for(x=0;x<3;++x)b[x]=0}return i},t.faceNormals=function(e,t,r){for(var n=e.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;oa?1/Math.sqrt(h):0,u=0;u<3;++u)d[u]*=h;i[o]=d}return i}},567:function(e){"use strict";e.exports=function(e,t,r,n,i,a,o,s,l,u){var c=t+a+u;if(f>0){var f=Math.sqrt(c+1);e[0]=.5*(o-l)/f,e[1]=.5*(s-n)/f,e[2]=.5*(r-a)/f,e[3]=.5*f}else{var d=Math.max(t,a,u);f=Math.sqrt(2*d-c+1),t>=d?(e[0]=.5*f,e[1]=.5*(i+r)/f,e[2]=.5*(s+n)/f,e[3]=.5*(o-l)/f):a>=d?(e[0]=.5*(r+i)/f,e[1]=.5*f,e[2]=.5*(l+o)/f,e[3]=.5*(s-n)/f):(e[0]=.5*(n+s)/f,e[1]=.5*(o+l)/f,e[2]=.5*f,e[3]=.5*(r-i)/f)}return e}},7774:function(e,t,r){"use strict";e.exports=function(e){var t=(e=e||{}).center||[0,0,0],r=e.rotation||[0,0,0,1],n=e.radius||1;t=[].slice.call(t,0,3),c(r=[].slice.call(r,0,4),r);var i=new f(r,t,Math.log(n));return i.setDistanceLimits(e.zoomMin,e.zoomMax),("eye"in e||"up"in e)&&i.lookAt(0,e.eye,e.center,e.up),i};var n=r(8444),i=r(3012),a=r(5950),o=r(7437),s=r(567);function l(e,t,r){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2)+Math.pow(r,2))}function u(e,t,r,n){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2)+Math.pow(r,2)+Math.pow(n,2))}function c(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=u(r,n,i,a);o>1e-6?(e[0]=r/o,e[1]=n/o,e[2]=i/o,e[3]=a/o):(e[0]=e[1]=e[2]=0,e[3]=1)}function f(e,t,r){this.radius=n([r]),this.center=n(t),this.rotation=n(e),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 d=f.prototype;d.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},d.recalcMatrix=function(e){this.radius.curve(e),this.center.curve(e),this.rotation.curve(e);var t=this.computedRotation;c(t,t);var r=this.computedMatrix;a(r,t);var n=this.computedCenter,i=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);i[0]=n[0]+s*r[2],i[1]=n[1]+s*r[6],i[2]=n[2]+s*r[10],o[0]=r[1],o[1]=r[5],o[2]=r[9];for(var l=0;l<3;++l){for(var u=0,f=0;f<3;++f)u+=r[l+4*f]*i[f];r[12+l]=-u}},d.getMatrix=function(e,t){this.recalcMatrix(e);var r=this.computedMatrix;if(t){for(var n=0;n<16;++n)t[n]=r[n];return t}return r},d.idle=function(e){this.center.idle(e),this.radius.idle(e),this.rotation.idle(e)},d.flush=function(e){this.center.flush(e),this.radius.flush(e),this.rotation.flush(e)},d.pan=function(e,t,r,n){t=t||0,r=r||0,n=n||0,this.recalcMatrix(e);var i=this.computedMatrix,a=i[1],o=i[5],s=i[9],u=l(a,o,s);a/=u,o/=u,s/=u;var c=i[0],f=i[4],d=i[8],h=c*a+f*o+d*s,p=l(c-=a*h,f-=o*h,d-=s*h);c/=p,f/=p,d/=p;var v=i[2],m=i[6],g=i[10],y=v*a+m*o+g*s,x=v*c+m*f+g*d,b=l(v-=y*a+x*c,m-=y*o+x*f,g-=y*s+x*d);v/=b,m/=b,g/=b;var _=c*t+a*r,w=f*t+o*r,k=d*t+s*r;this.center.move(e,_,w,k);var T=Math.exp(this.computedRadius[0]);T=Math.max(1e-4,T+n),this.radius.set(e,Math.log(T))},d.rotate=function(e,t,r,n){this.recalcMatrix(e),t=t||0,r=r||0;var i=this.computedMatrix,a=i[0],o=i[4],s=i[8],c=i[1],f=i[5],d=i[9],h=i[2],p=i[6],v=i[10],m=t*a+r*c,g=t*o+r*f,y=t*s+r*d,x=-(p*y-v*g),b=-(v*m-h*y),_=-(h*g-p*m),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(b,2)-Math.pow(_,2))),k=u(x,b,_,w);k>1e-6?(x/=k,b/=k,_/=k,w/=k):(x=b=_=0,w=1);var T=this.computedRotation,M=T[0],A=T[1],S=T[2],E=T[3],C=M*w+E*x+A*_-S*b,L=A*w+E*b+S*x-M*_,P=S*w+E*_+M*b-A*x,O=E*w-M*x-A*b-S*_;if(n){x=h,b=p,_=v;var I=Math.sin(n)/l(x,b,_);x*=I,b*=I,_*=I,O=O*(w=Math.cos(t))-(C=C*w+O*x+L*_-P*b)*x-(L=L*w+O*b+P*x-C*_)*b-(P=P*w+O*_+C*b-L*x)*_}var D=u(C,L,P,O);D>1e-6?(C/=D,L/=D,P/=D,O/=D):(C=L=P=0,O=1),this.rotation.set(e,C,L,P,O)},d.lookAt=function(e,t,r,n){this.recalcMatrix(e),r=r||this.computedCenter,t=t||this.computedEye,n=n||this.computedUp;var a=this.computedMatrix;i(a,t,r,n);var o=this.computedRotation;s(o,a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10]),c(o,o),this.rotation.set(e,o[0],o[1],o[2],o[3]);for(var l=0,u=0;u<3;++u)l+=Math.pow(r[u]-t[u],2);this.radius.set(e,.5*Math.log(Math.max(l,1e-6))),this.center.set(e,r[0],r[1],r[2])},d.translate=function(e,t,r,n){this.center.move(e,t||0,r||0,n||0)},d.setMatrix=function(e,t){var r=this.computedRotation;s(r,t[0],t[1],t[2],t[4],t[5],t[6],t[8],t[9],t[10]),c(r,r),this.rotation.set(e,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;o(n,t);var i=n[15];if(Math.abs(i)>1e-6){var a=n[12]/i,l=n[13]/i,u=n[14]/i;this.recalcMatrix(e);var f=Math.exp(this.computedRadius[0]);this.center.set(e,a-n[2]*f,l-n[6]*f,u-n[10]*f),this.radius.idle(e)}else this.center.idle(e),this.radius.idle(e)},d.setDistance=function(e,t){t>0&&this.radius.set(e,Math.log(t))},d.setDistanceLimits=function(e,t){e=e>0?Math.log(e):-1/0,t=t>0?Math.log(t):1/0,t=Math.max(t,e),this.radius.bounds[0][0]=e,this.radius.bounds[1][0]=t},d.getDistanceLimits=function(e){var t=this.radius.bounds;return e?(e[0]=Math.exp(t[0][0]),e[1]=Math.exp(t[1][0]),e):[Math.exp(t[0][0]),Math.exp(t[1][0])]},d.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]}},d.fromJSON=function(e){var t=this.lastT(),r=e.center;r&&this.center.set(t,r[0],r[1],r[2]);var n=e.rotation;n&&this.rotation.set(t,n[0],n[1],n[2],n[3]);var i=e.distance;i&&i>0&&this.radius.set(t,Math.log(i)),this.setDistanceLimits(e.zoomMin,e.zoomMax)}},4930:function(e,t,r){"use strict";var n=r(6184);e.exports=function(e,t,r){return n(r="undefined"!==typeof r?r+"":" ",t)+e}},4405:function(e){e.exports=function(e,t){t||(t=[0,""]),e=String(e);var r=parseFloat(e,10);return t[0]=r,t[1]=e.match(/[\d.\-\+]*\s*(.*)/)[1]||"",t}},4166:function(e,t,r){"use strict";e.exports=function(e,t){for(var r=0|t.length,i=e.length,a=[new Array(r),new Array(r)],o=0;o0){o=a[c][r][0],l=c;break}s=o[1^l];for(var f=0;f<2;++f)for(var d=a[f][r],h=0;h0&&(o=p,s=v,l=f)}return i||o&&u(o,l),s}function f(e,r){var i=a[r][e][0],o=[e];u(i,r);for(var s=i[1^r];;){for(;s!==e;)o.push(s),s=c(o[o.length-2],s,!1);if(a[0][e].length+a[1][e].length===0)break;var l=o[o.length-1],f=e,d=o[1],h=c(l,f,!0);if(n(t[l],t[f],t[d],t[h])<0)break;o.push(e),s=c(l,f)}return o}function d(e,t){return t[1]===t[t.length-1]}for(o=0;o0;){a[0][o].length;var v=f(o,h);d(0,v)?p.push.apply(p,v):(p.length>0&&l.push(p),p=v)}p.length>0&&l.push(p)}return l};var n=r(9398)},3959:function(e,t,r){"use strict";e.exports=function(e,t){for(var r=n(e,t.length),i=new Array(t.length),a=new Array(t.length),o=[],s=0;s0;){i[h=o.pop()]=!1;var u=r[h];for(s=0;s0}))).length,m=new Array(v),g=new Array(v);for(h=0;h0;){var N=z.pop(),B=E[N];l(B,(function(e,t){return e-t}));var j,U=B.length,V=F[N];for(0===V&&(j=[H=p[N]]),h=0;h=0||(F[q]=1^V,z.push(q),0===V&&(R(H=p[q])||(H.reverse(),j.push(H))))}0===V&&r.push(j)}return r};var n=r(8348),i=r(4166),a=r(211),o=r(9660),s=r(9662),l=r(1215),u=r(3959);function c(e,t){for(var r=new Array(e),n=0;n0&&t[i]===r[0]))return 1;a=e[i-1]}for(var s=1;a;){var l=a.key,u=n(r,l[0],l[1]);if(l[0][0]0))return 0;s=-1,a=a.right}else if(u>0)a=a.left;else{if(!(u<0))return 0;s=1,a=a.right}}return s}}(g.slabs,g.coordinates);return 0===a.length?y:function(e,t){return function(r){return e(r[0],r[1])?0:t(r)}}(l(a),y)};var n=r(417)[3],i=r(4385),a=r(9014),o=r(5070);function s(){return!0}function l(e){for(var t={},r=0;r=u?(T=1,y=u+2*d+p):y=d*(T=-d/u)+p):(T=0,h>=0?(M=0,y=p):-h>=f?(M=1,y=f+2*h+p):y=h*(M=-h/f)+p);else if(M<0)M=0,d>=0?(T=0,y=p):-d>=u?(T=1,y=u+2*d+p):y=d*(T=-d/u)+p;else{var A=1/k;y=(T*=A)*(u*T+c*(M*=A)+2*d)+M*(c*T+f*M+2*h)+p}else T<0?(b=f+h)>(x=c+d)?(_=b-x)>=(w=u-2*c+f)?(T=1,M=0,y=u+2*d+p):y=(T=_/w)*(u*T+c*(M=1-T)+2*d)+M*(c*T+f*M+2*h)+p:(T=0,b<=0?(M=1,y=f+2*h+p):h>=0?(M=0,y=p):y=h*(M=-h/f)+p):M<0?(b=u+d)>(x=c+h)?(_=b-x)>=(w=u-2*c+f)?(M=1,T=0,y=f+2*h+p):y=(T=1-(M=_/w))*(u*T+c*M+2*d)+M*(c*T+f*M+2*h)+p:(M=0,b<=0?(T=1,y=u+2*d+p):d>=0?(T=0,y=p):y=d*(T=-d/u)+p):(_=f+h-c-d)<=0?(T=0,M=1,y=f+2*h+p):_>=(w=u-2*c+f)?(T=1,M=0,y=u+2*d+p):y=(T=_/w)*(u*T+c*(M=1-T)+2*d)+M*(c*T+f*M+2*h)+p;var S=1-T-M;for(l=0;l0){var u=e[r-1];if(0===n(s,u)&&a(u)!==l){r-=1;continue}}e[r++]=s}}return e.length=r,e}},6184:function(e){"use strict";var t,r="";e.exports=function(e,n){if("string"!==typeof e)throw new TypeError("expected a string");if(1===n)return e;if(2===n)return e+e;var i=e.length*n;if(t!==e||"undefined"===typeof t)t=e,r="";else if(r.length>=i)return r.substr(0,i);for(;i>r.length&&n>1;)1&n&&(r+=e),n>>=1,e+=e;return r=(r+=e).substr(0,i)}},8161:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},402:function(e){"use strict";e.exports=function(e){for(var t=e.length,r=e[e.length-1],n=t,i=t-2;i>=0;--i){var a=r;(l=(s=e[i])-((r=a+s)-a))&&(e[--n]=r,r=l)}var o=0;for(i=n;i0){if(a<=0)return o;n=i+a}else{if(!(i<0))return o;if(a>=0)return o;n=-(i+a)}var s=33306690738754716e-32*n;return o>=s||o<=-s?o:f(e,t,r)},function(e,t,r,n){var i=e[0]-n[0],a=t[0]-n[0],o=r[0]-n[0],s=e[1]-n[1],l=t[1]-n[1],u=r[1]-n[1],c=e[2]-n[2],f=t[2]-n[2],h=r[2]-n[2],p=a*u,v=o*l,m=o*s,g=i*u,y=i*l,x=a*s,b=c*(p-v)+f*(m-g)+h*(y-x),_=7771561172376103e-31*((Math.abs(p)+Math.abs(v))*Math.abs(c)+(Math.abs(m)+Math.abs(g))*Math.abs(f)+(Math.abs(y)+Math.abs(x))*Math.abs(h));return b>_||-b>_?b:d(e,t,r,n)}];function p(e){var t=h[e.length];return t||(t=h[e.length]=c(e.length)),t.apply(void 0,e)}function v(e,t,r,n,i,a,o){return function(t,r,s,l,u){switch(arguments.length){case 0:case 1:return 0;case 2:return n(t,r);case 3:return i(t,r,s);case 4:return a(t,r,s,l);case 5:return o(t,r,s,l,u)}for(var c=new Array(arguments.length),f=0;f0&&o>0||a<0&&o<0)return!1;var s=n(r,e,t),l=n(i,e,t);return!(s>0&&l>0||s<0&&l<0)&&(0!==a||0!==o||0!==s||0!==l||function(e,t,r,n){for(var i=0;i<2;++i){var a=e[i],o=t[i],s=Math.min(a,o),l=Math.max(a,o),u=r[i],c=n[i],f=Math.min(u,c);if(Math.max(u,c)=n?(i=f,(l+=1)=n?(i=f,(l+=1)>1,u=t[2*l+1];if(u===a)return l;a>1,u=t[2*l+1];if(u===a)return l;a>1,u=t[2*l+1];if(u===a)return l;a0)-(e<0)},t.abs=function(e){var t=e>>31;return(e^t)-t},t.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=r=((e>>>=t)>255)<<3,t|=r=((e>>>=r)>15)<<2,(t|=r=((e>>>=r)>3)<<1)|(e>>>=r)>>1},t.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},t.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},t.countTrailingZeros=r,t.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},t.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=n<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},t.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},t.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},t.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},t.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},6656:function(e,t,r){"use strict";var n=r(9392),i=r(9521);function a(e,t){var r=e.length,n=e.length-t.length,i=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return e[0]-t[0];case 2:return(s=e[0]+e[1]-t[0]-t[1])||i(e[0],e[1])-i(t[0],t[1]);case 3:var a=e[0]+e[1],o=t[0]+t[1];if(s=a+e[2]-(o+t[2]))return s;var s,l=i(e[0],e[1]),u=i(t[0],t[1]);return(s=i(l,e[2])-i(u,t[2]))||i(l+e[2],a)-i(u+t[2],o);default:var c=e.slice(0);c.sort();var f=t.slice(0);f.sort();for(var d=0;d>1,s=a(e[o],t);s<=0?(0===s&&(i=o),r=o+1):s>0&&(n=o-1)}return i}function c(e,t){for(var r=new Array(e.length),i=0,o=r.length;i=e.length||0!==a(e[m],s)););}return r}function f(e,t){if(t<0)return[];for(var r=[],i=(1<>>c&1&&u.push(i[c]);t.push(u)}return s(t)},t.skeleton=f,t.boundary=function(e){for(var t=[],r=0,n=e.length;r>1:(e>>1)-1}function x(e){for(var t=g(e);;){var r=t,n=2*e+1,i=2*(e+1),a=e;if(n0;){var r=y(e);if(!(r>=0&&t0){var e=T[0];return m(0,A-1),A-=1,x(0),e}return-1}function w(e,t){var r=T[e];return u[r]===t?e:(u[r]=-1/0,b(e),_(),u[r]=t,b((A+=1)-1))}function k(e){if(!c[e]){c[e]=!0;var t=s[e],r=l[e];s[r]>=0&&(s[r]=t),l[t]>=0&&(l[t]=r),M[t]>=0&&w(M[t],v(t)),M[r]>=0&&w(M[r],v(r))}}var T=[],M=new Array(a);for(f=0;f>1;f>=0;--f)x(f);for(;;){var S=_();if(S<0||u[S]>r)break;k(S)}var E=[];for(f=0;f=0&&r>=0&&t!==r){var n=M[t],i=M[r];n!==i&&L.push([n,i])}})),i.unique(i.normalize(L)),{positions:E,edges:L}};var n=r(417),i=r(6656)},6638:function(e,t,r){"use strict";e.exports=function(e,t){var r,a,o,s;if(t[0][0]t[1][0]))return i(t,e);r=t[1],a=t[0]}if(e[0][0]e[1][0]))return-i(e,t);o=e[1],s=e[0]}var l=n(r,a,s),u=n(r,a,o);if(l<0){if(u<=0)return l}else if(l>0){if(u>=0)return l}else if(u)return u;if(l=n(s,o,a),u=n(s,o,r),l<0){if(u<=0)return l}else if(l>0){if(u>=0)return l}else if(u)return u;return a[0]-s[0]};var n=r(417);function i(e,t){var r,i,a,o;if(t[0][0]t[1][0])){var s=Math.min(e[0][1],e[1][1]),l=Math.max(e[0][1],e[1][1]),u=Math.min(t[0][1],t[1][1]),c=Math.max(t[0][1],t[1][1]);return lc?s-c:l-c}r=t[1],i=t[0]}e[0][1]0)if(t[0]!==o[1][0])r=e,e=e.right;else{if(l=u(e.right,t))return l;e=e.left}else{if(t[0]!==o[1][0])return e;var l;if(l=u(e.right,t))return l;e=e.left}}return r}function c(e,t,r,n){this.y=e,this.index=t,this.start=r,this.closed=n}function f(e,t,r,n){this.x=e,this.segment=t,this.create=r,this.index=n}s.prototype.castUp=function(e){var t=n.le(this.coordinates,e[0]);if(t<0)return-1;this.slabs[t];var r=u(this.slabs[t],e),i=-1;if(r&&(i=r.value),this.coordinates[t]===e[0]){var s=null;if(r&&(s=r.key),t>0){var c=u(this.slabs[t-1],e);c&&(s?o(c.key,s)>0&&(s=c.key,i=c.value):(i=c.value,s=c.key))}var f=this.horizontal[t];if(f.length>0){var d=n.ge(f,e[1],l);if(d=f.length)return i;h=f[d]}}if(h.start)if(s){var p=a(s[0],s[1],[e[0],h.y]);s[0][0]>s[1][0]&&(p=-p),p>0&&(i=h.index)}else i=h.index;else h.y!==e[1]&&(i=h.index)}}}return i}},4670:function(e,t,r){"use strict";var n=r(9130),i=r(9662);function a(e,t){var r=i(n(e,t),[t[t.length-1]]);return r[r.length-1]}function o(e,t,r,n){var i=-t/(n-t);i<0?i=0:i>1&&(i=1);for(var a=1-i,o=e.length,s=new Array(o),l=0;l0||i>0&&c<0){var f=o(s,c,l,i);r.push(f),n.push(f.slice())}c<0?n.push(l.slice()):c>0?r.push(l.slice()):(r.push(l.slice()),n.push(l.slice())),i=c}return{positive:r,negative:n}},e.exports.positive=function(e,t){for(var r=[],n=a(e[e.length-1],t),i=e[e.length-1],s=e[0],l=0;l0||n>0&&u<0)&&r.push(o(i,u,s,n)),u>=0&&r.push(s.slice()),n=u}return r},e.exports.negative=function(e,t){for(var r=[],n=a(e[e.length-1],t),i=e[e.length-1],s=e[0],l=0;l0||n>0&&u<0)&&r.push(o(i,u,s,n)),u<=0&&r.push(s.slice()),n=u}return r}},8974:function(e,t,r){var n;!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(e){return function(e,t){var r,n,o,s,l,u,c,f,d,h=1,p=e.length,v="";for(n=0;n=0),s.type){case"b":r=parseInt(r,10).toString(2);break;case"c":r=String.fromCharCode(parseInt(r,10));break;case"d":case"i":r=parseInt(r,10);break;case"j":r=JSON.stringify(r,null,s.width?parseInt(s.width):0);break;case"e":r=s.precision?parseFloat(r).toExponential(s.precision):parseFloat(r).toExponential();break;case"f":r=s.precision?parseFloat(r).toFixed(s.precision):parseFloat(r);break;case"g":r=s.precision?String(Number(r.toPrecision(s.precision))):parseFloat(r);break;case"o":r=(parseInt(r,10)>>>0).toString(8);break;case"s":r=String(r),r=s.precision?r.substring(0,s.precision):r;break;case"t":r=String(!!r),r=s.precision?r.substring(0,s.precision):r;break;case"T":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=s.precision?r.substring(0,s.precision):r;break;case"u":r=parseInt(r,10)>>>0;break;case"v":r=r.valueOf(),r=s.precision?r.substring(0,s.precision):r;break;case"x":r=(parseInt(r,10)>>>0).toString(16);break;case"X":r=(parseInt(r,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?v+=r:(!i.number.test(s.type)||f&&!s.sign?d="":(d=f?"+":"-",r=r.toString().replace(i.sign,"")),u=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",c=s.width-(d+r).length,l=s.width&&c>0?u.repeat(c):"",v+=s.align?d+r+l:"0"===u?d+l+r:l+d+r)}return v}(function(e){if(s[e])return s[e];for(var t,r=e,n=[],a=0;r;){if(null!==(t=i.text.exec(r)))n.push(t[0]);else if(null!==(t=i.modulo.exec(r)))n.push("%");else{if(null===(t=i.placeholder.exec(r)))throw new SyntaxError("[sprintf] unexpected placeholder");if(t[2]){a|=1;var o=[],l=t[2],u=[];if(null===(u=i.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(o.push(u[1]);""!==(l=l.substring(u[0].length));)if(null!==(u=i.key_access.exec(l)))o.push(u[1]);else{if(null===(u=i.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");o.push(u[1])}t[2]=o}else a|=2;if(3===a)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");n.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return s[e]=n}(e),arguments)}function o(e,t){return a.apply(null,[e].concat(t||[]))}var s=Object.create(null);t.sprintf=a,t.vsprintf=o,"undefined"!==typeof window&&(window.sprintf=a,window.vsprintf=o,void 0===(n=function(){return{sprintf:a,vsprintf:o}}.call(t,r,t,e))||(e.exports=n))}()},4162:function(e,t,r){"use strict";e.exports=function(e,t){if(e.dimension<=0)return{positions:[],cells:[]};if(1===e.dimension)return function(e,t){for(var r=i(e,t),n=r.length,a=new Array(n),o=new Array(n),s=0;sn|0},vertex:function(e,t,r,n,i,a,o,s,l,u,c,f,d){var h=(o<<0)+(s<<1)+(l<<2)+(u<<3)|0;if(0!==h&&15!==h)switch(h){case 0:case 15:c.push([e-.5,t-.5]);break;case 1:c.push([e-.25-.25*(n+r-2*d)/(r-n),t-.25-.25*(i+r-2*d)/(r-i)]);break;case 2:c.push([e-.75-.25*(-n-r+2*d)/(n-r),t-.25-.25*(a+n-2*d)/(n-a)]);break;case 3:c.push([e-.5,t-.5-.5*(i+r+a+n-4*d)/(r-i+n-a)]);break;case 4:c.push([e-.25-.25*(a+i-2*d)/(i-a),t-.75-.25*(-i-r+2*d)/(i-r)]);break;case 5:c.push([e-.5-.5*(n+r+a+i-4*d)/(r-n+i-a),t-.5]);break;case 6:c.push([e-.5-.25*(-n-r+a+i)/(n-r+i-a),t-.5-.25*(-i-r+a+n)/(i-r+n-a)]);break;case 7:c.push([e-.75-.25*(a+i-2*d)/(i-a),t-.75-.25*(a+n-2*d)/(n-a)]);break;case 8:c.push([e-.75-.25*(-a-i+2*d)/(a-i),t-.75-.25*(-a-n+2*d)/(a-n)]);break;case 9:c.push([e-.5-.25*(n+r+-a-i)/(r-n+a-i),t-.5-.25*(i+r+-a-n)/(r-i+a-n)]);break;case 10:c.push([e-.5-.5*(-n-r-a-i+4*d)/(n-r+a-i),t-.5]);break;case 11:c.push([e-.25-.25*(-a-i+2*d)/(a-i),t-.75-.25*(i+r-2*d)/(r-i)]);break;case 12:c.push([e-.5,t-.5-.5*(-i-r-a-n+4*d)/(i-r+a-n)]);break;case 13:c.push([e-.75-.25*(n+r-2*d)/(r-n),t-.25-.25*(-a-n+2*d)/(a-n)]);break;case 14:c.push([e-.25-.25*(-n-r+2*d)/(n-r),t-.25-.25*(-i-r+2*d)/(i-r)])}},cell:function(e,t,r,n,i,a,o,s,l){i?s.push([e,t]):s.push([t,e])}});return function(e,t){var r=[],i=[];return n(e,r,i,t),{positions:r,cells:i}}}},o={}},6946:function(e,t,r){"use strict";e.exports=function e(t,r,i){i=i||{};var a=o[t];a||(a=o[t]={" ":{data:new Float32Array(0),shape:.2}});var s=a[r];if(!s)if(r.length<=1||!/\d/.test(r))s=a[r]=function(e){for(var t=e.cells,r=e.positions,n=new Float32Array(6*t.length),i=0,a=0,o=0;o0&&(f+=.02);var h=new Float32Array(c),p=0,v=-.5*f;for(d=0;dMath.max(r,n)?i[2]=1:r>Math.max(t,n)?i[0]=1:i[1]=1;for(var a=0,o=0,l=0;l<3;++l)a+=e[l]*e[l],o+=i[l]*e[l];for(l=0;l<3;++l)i[l]-=o/a*e[l];return s(i,i),i}function d(e,t,r,i,a,o,s,l){this.center=n(r),this.up=n(i),this.right=n(a),this.radius=n([o]),this.angle=n([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(e,t),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var u=0;u<16;++u)this.computedMatrix[u]=.5;this.recalcMatrix(0)}var h=d.prototype;h.setDistanceLimits=function(e,t){e=e>0?Math.log(e):-1/0,t=t>0?Math.log(t):1/0,t=Math.max(t,e),this.radius.bounds[0][0]=e,this.radius.bounds[1][0]=t},h.getDistanceLimits=function(e){var t=this.radius.bounds[0];return e?(e[0]=Math.exp(t[0][0]),e[1]=Math.exp(t[1][0]),e):[Math.exp(t[0][0]),Math.exp(t[1][0])]},h.recalcMatrix=function(e){this.center.curve(e),this.up.curve(e),this.right.curve(e),this.radius.curve(e),this.angle.curve(e);for(var t=this.computedUp,r=this.computedRight,n=0,i=0,a=0;a<3;++a)i+=t[a]*r[a],n+=t[a]*t[a];var l=Math.sqrt(n),c=0;for(a=0;a<3;++a)r[a]-=t[a]*i/n,c+=r[a]*r[a],t[a]/=l;var f=Math.sqrt(c);for(a=0;a<3;++a)r[a]/=f;var d=this.computedToward;o(d,t,r),s(d,d);var h=Math.exp(this.computedRadius[0]),p=this.computedAngle[0],v=this.computedAngle[1],m=Math.cos(p),g=Math.sin(p),y=Math.cos(v),x=Math.sin(v),b=this.computedCenter,_=m*y,w=g*y,k=x,T=-m*x,M=-g*x,A=y,S=this.computedEye,E=this.computedMatrix;for(a=0;a<3;++a){var C=_*r[a]+w*d[a]+k*t[a];E[4*a+1]=T*r[a]+M*d[a]+A*t[a],E[4*a+2]=C,E[4*a+3]=0}var L=E[1],P=E[5],O=E[9],I=E[2],D=E[6],R=E[10],z=P*R-O*D,F=O*I-L*R,N=L*D-P*I,B=u(z,F,N);for(z/=B,F/=B,N/=B,E[0]=z,E[4]=F,E[8]=N,a=0;a<3;++a)S[a]=b[a]+E[2+4*a]*h;for(a=0;a<3;++a){c=0;for(var j=0;j<3;++j)c+=E[a+4*j]*S[j];E[12+a]=-c}E[15]=1},h.getMatrix=function(e,t){this.recalcMatrix(e);var r=this.computedMatrix;if(t){for(var n=0;n<16;++n)t[n]=r[n];return t}return r};var p=[0,0,0];h.rotate=function(e,t,r,n){if(this.angle.move(e,t,r),n){this.recalcMatrix(e);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,u=0;u<3;++u)i[4*u]=o[u],i[4*u+1]=s[u],i[4*u+2]=l[u];for(a(i,i,n,p),u=0;u<3;++u)o[u]=i[4*u],s[u]=i[4*u+1];this.up.set(e,o[0],o[1],o[2]),this.right.set(e,s[0],s[1],s[2])}},h.pan=function(e,t,r,n){t=t||0,r=r||0,n=n||0,this.recalcMatrix(e);var i=this.computedMatrix,a=(Math.exp(this.computedRadius[0]),i[1]),o=i[5],s=i[9],l=u(a,o,s);a/=l,o/=l,s/=l;var c=i[0],f=i[4],d=i[8],h=c*a+f*o+d*s,p=u(c-=a*h,f-=o*h,d-=s*h),v=(c/=p)*t+a*r,m=(f/=p)*t+o*r,g=(d/=p)*t+s*r;this.center.move(e,v,m,g);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+n),this.radius.set(e,Math.log(y))},h.translate=function(e,t,r,n){this.center.move(e,t||0,r||0,n||0)},h.setMatrix=function(e,t,r,n){var a=1;"number"===typeof r&&(a=0|r),(a<0||a>3)&&(a=1);var o=(a+2)%3;t||(this.recalcMatrix(e),t=this.computedMatrix);var s=t[a],l=t[a+4],f=t[a+8];if(n){var d=Math.abs(s),h=Math.abs(l),p=Math.abs(f),v=Math.max(d,h,p);d===v?(s=s<0?-1:1,l=f=0):p===v?(f=f<0?-1:1,s=l=0):(l=l<0?-1:1,s=f=0)}else{var m=u(s,l,f);s/=m,l/=m,f/=m}var g,y,x=t[o],b=t[o+4],_=t[o+8],w=x*s+b*l+_*f,k=u(x-=s*w,b-=l*w,_-=f*w),T=l*(_/=k)-f*(b/=k),M=f*(x/=k)-s*_,A=s*b-l*x,S=u(T,M,A);if(T/=S,M/=S,A/=S,this.center.jump(e,q,W,G),this.radius.idle(e),this.up.jump(e,s,l,f),this.right.jump(e,x,b,_),2===a){var E=t[1],C=t[5],L=t[9],P=E*x+C*b+L*_,O=E*T+C*M+L*A;g=z<0?-Math.PI/2:Math.PI/2,y=Math.atan2(O,P)}else{var I=t[2],D=t[6],R=t[10],z=I*s+D*l+R*f,F=I*x+D*b+R*_,N=I*T+D*M+R*A;g=Math.asin(c(z)),y=Math.atan2(N,F)}this.angle.jump(e,y,g),this.recalcMatrix(e);var B=t[2],j=t[6],U=t[10],V=this.computedMatrix;i(V,t);var H=V[15],q=V[12]/H,W=V[13]/H,G=V[14]/H,Y=Math.exp(this.computedRadius[0]);this.center.jump(e,q-B*Y,W-j*Y,G-U*Y)},h.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},h.idle=function(e){this.center.idle(e),this.up.idle(e),this.right.idle(e),this.radius.idle(e),this.angle.idle(e)},h.flush=function(e){this.center.flush(e),this.up.flush(e),this.right.flush(e),this.radius.flush(e),this.angle.flush(e)},h.setDistance=function(e,t){t>0&&this.radius.set(e,Math.log(t))},h.lookAt=function(e,t,r,n){this.recalcMatrix(e),t=t||this.computedEye,r=r||this.computedCenter;var i=(n=n||this.computedUp)[0],a=n[1],o=n[2],s=u(i,a,o);if(!(s<1e-6)){i/=s,a/=s,o/=s;var l=t[0]-r[0],f=t[1]-r[1],d=t[2]-r[2],h=u(l,f,d);if(!(h<1e-6)){l/=h,f/=h,d/=h;var p=this.computedRight,v=p[0],m=p[1],g=p[2],y=i*v+a*m+o*g,x=u(v-=y*i,m-=y*a,g-=y*o);if(!(x<.01&&(x=u(v=a*d-o*f,m=o*l-i*d,g=i*f-a*l))<1e-6)){v/=x,m/=x,g/=x,this.up.set(e,i,a,o),this.right.set(e,v,m,g),this.center.set(e,r[0],r[1],r[2]),this.radius.set(e,Math.log(h));var b=a*g-o*m,_=o*v-i*g,w=i*m-a*v,k=u(b,_,w),T=i*l+a*f+o*d,M=v*l+m*f+g*d,A=(b/=k)*l+(_/=k)*f+(w/=k)*d,S=Math.asin(c(T)),E=Math.atan2(A,M),C=this.angle._state,L=C[C.length-1],P=C[C.length-2];L%=2*Math.PI;var O=Math.abs(L+2*Math.PI-E),I=Math.abs(L-E),D=Math.abs(L-2*Math.PI-E);O0?r.pop():new ArrayBuffer(e)}function p(e){return new Uint8Array(h(e),0,e)}function v(e){return new Uint16Array(h(2*e),0,e)}function m(e){return new Uint32Array(h(4*e),0,e)}function g(e){return new Int8Array(h(e),0,e)}function y(e){return new Int16Array(h(2*e),0,e)}function x(e){return new Int32Array(h(4*e),0,e)}function b(e){return new Float32Array(h(4*e),0,e)}function _(e){return new Float64Array(h(8*e),0,e)}function w(e){return o?new Uint8ClampedArray(h(e),0,e):p(e)}function k(e){return s?new BigUint64Array(h(8*e),0,e):null}function T(e){return l?new BigInt64Array(h(8*e),0,e):null}function M(e){return new DataView(h(e),0,e)}function A(e){e=n.nextPow2(e);var t=n.log2(e),r=f[t];return r.length>0?r.pop():new a(e)}t.free=function(e){if(a.isBuffer(e))f[n.log2(e.length)].push(e);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(e)&&(e=e.buffer),!e)return;var t=e.length||e.byteLength,r=0|n.log2(t);c[r].push(e)}},t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=function(e){d(e.buffer)},t.freeArrayBuffer=d,t.freeBuffer=function(e){f[n.log2(e.length)].push(e)},t.malloc=function(e,t){if(void 0===t||"arraybuffer"===t)return h(e);switch(t){case"uint8":return p(e);case"uint16":return v(e);case"uint32":return m(e);case"int8":return g(e);case"int16":return y(e);case"int32":return x(e);case"float":case"float32":return b(e);case"double":case"float64":return _(e);case"uint8_clamped":return w(e);case"bigint64":return T(e);case"biguint64":return k(e);case"buffer":return A(e);case"data":case"dataview":return M(e);default:return null}return null},t.mallocArrayBuffer=h,t.mallocUint8=p,t.mallocUint16=v,t.mallocUint32=m,t.mallocInt8=g,t.mallocInt16=y,t.mallocInt32=x,t.mallocFloat32=t.mallocFloat=b,t.mallocFloat64=t.mallocDouble=_,t.mallocUint8Clamped=w,t.mallocBigUint64=k,t.mallocBigInt64=T,t.mallocDataView=M,t.mallocBuffer=A,t.clearCache=function(){for(var e=0;e<32;++e)u.UINT8[e].length=0,u.UINT16[e].length=0,u.UINT32[e].length=0,u.INT8[e].length=0,u.INT16[e].length=0,u.INT32[e].length=0,u.FLOAT[e].length=0,u.DOUBLE[e].length=0,u.BIGUINT64[e].length=0,u.BIGINT64[e].length=0,u.UINT8C[e].length=0,c[e].length=0,f[e].length=0}},1731:function(e){"use strict";function t(e){this.roots=new Array(e),this.ranks=new Array(e);for(var t=0;t0&&(a=n.size),n.lineSpacing&&n.lineSpacing>0&&(o=n.lineSpacing),n.styletags&&n.styletags.breaklines&&(s.breaklines=!!n.styletags.breaklines),n.styletags&&n.styletags.bolds&&(s.bolds=!!n.styletags.bolds),n.styletags&&n.styletags.italics&&(s.italics=!!n.styletags.italics),n.styletags&&n.styletags.subscripts&&(s.subscripts=!!n.styletags.subscripts),n.styletags&&n.styletags.superscripts&&(s.superscripts=!!n.styletags.superscripts)),r.font=[n.fontStyle,n.fontVariant,n.fontWeight,a+"px",n.font].filter((function(e){return e})).join(" "),r.textAlign="start",r.textBaseline="alphabetic",r.direction="ltr",w(function(e,t,r,n,a,o){r=r.replace(/\n/g,""),r=!0===o.breaklines?r.replace(/\/g,"\n"):r.replace(/\/g," ");var s="",l=[];for(k=0;k-1?parseInt(e[1+i]):0,l=a>-1?parseInt(r[1+a]):0;s!==l&&(n=n.replace(F(),"?px "),A*=Math.pow(.75,l-s),n=n.replace("?px ",F())),M+=.25*C*(l-s)}if(!0===o.superscripts){var u=e.indexOf(p),f=r.indexOf(p),h=u>-1?parseInt(e[1+u]):0,v=f>-1?parseInt(r[1+f]):0;h!==v&&(n=n.replace(F(),"?px "),A*=Math.pow(.75,v-h),n=n.replace("?px ",F())),M-=.25*C*(v-h)}if(!0===o.bolds){var m=e.indexOf(c)>-1,y=r.indexOf(c)>-1;!m&&y&&(n=x?n.replace("italic ","italic bold "):"bold "+n),m&&!y&&(n=n.replace("bold ",""))}if(!0===o.italics){var x=e.indexOf(d)>-1,b=r.indexOf(d)>-1;!x&&b&&(n="italic "+n),x&&!b&&(n=n.replace("italic ",""))}t.font=n}for(w=0;w",a="",o=i.length,s=a.length,l=t[0]===p||t[0]===g,u=0,c=-s;u>-1&&-1!==(u=r.indexOf(i,u))&&-1!==(c=r.indexOf(a,u+o))&&!(c<=u);){for(var f=u;f=c)n[f]=null,r=r.substr(0,f)+" "+r.substr(f+1);else if(null!==n[f]){var d=n[f].indexOf(t[0]);-1===d?n[f]+=t:l&&(n[f]=n[f].substr(0,d+1)+(1+parseInt(n[f][d+1]))+n[f].substr(d+2))}var h=u+o,v=r.substr(h,c-h).indexOf(i);u=-1!==v?v:c+s}return n}function b(e,t){var r=n(e,128);return t?a(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function _(e,t,r,n){var i=b(e,n),a=function(e,t,r){for(var n=t.textAlign||"start",i=t.textBaseline||"alphabetic",a=[1<<30,1<<30],o=[0,0],s=e.length,l=0;l=0?r[a]:i}))},has___:{value:x((function(e){var r=y(e);return r?n in r:t.indexOf(e)>=0}))},set___:{value:x((function(e,i){var a,o=y(e);return o?o[n]=i:(a=t.indexOf(e))>=0?r[a]=i:(a=t.length,r[a]=i,t[a]=e),this}))},delete___:{value:x((function(e){var i,a,o=y(e);return o?n in o&&delete o[n]:!((i=t.indexOf(e))<0)&&(a=t.length-1,t[i]=void 0,r[i]=r[a],t[i]=t[a],t.length=a,r.length=a,!0)}))}})};v.prototype=Object.create(Object.prototype,{get:{value:function(e,t){return this.get___(e,t)},writable:!0,configurable:!0},has:{value:function(e){return this.has___(e)},writable:!0,configurable:!0},set:{value:function(e,t){return this.set___(e,t)},writable:!0,configurable:!0},delete:{value:function(e){return this.delete___(e)},writable:!0,configurable:!0}}),"function"===typeof r?function(){function n(){this instanceof v||b();var e,n=new r,i=void 0,a=!1;return e=t?function(e,t){return n.set(e,t),n.has(e)||(i||(i=new v),i.set(e,t)),this}:function(e,t){if(a)try{n.set(e,t)}catch(r){i||(i=new v),i.set___(e,t)}else n.set(e,t);return this},Object.create(v.prototype,{get___:{value:x((function(e,t){return i?n.has(e)?n.get(e):i.get___(e,t):n.get(e,t)}))},has___:{value:x((function(e){return n.has(e)||!!i&&i.has___(e)}))},set___:{value:x(e)},delete___:{value:x((function(e){var t=!!n.delete(e);return i&&i.delete___(e)||t}))},permitHostObjects___:{value:x((function(e){if(e!==m)throw new Error("bogus call to permitHostObjects___");a=!0}))}})}t&&"undefined"!==typeof Proxy&&(Proxy=void 0),n.prototype=v.prototype,e.exports=n,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():("undefined"!==typeof Proxy&&(Proxy=void 0),e.exports=v)}function m(e){e.permitHostObjects___&&e.permitHostObjects___(m)}function g(e){return!(e.substr(0,8)==l&&"___"===e.substr(e.length-3))}function y(e){if(e!==Object(e))throw new TypeError("Not an object: "+e);var t=e[u];if(t&&t.key===e)return t;if(s(e)){t={key:e};try{return o(e,u,{value:t,writable:!1,enumerable:!1,configurable:!1}),t}catch(r){return}}}function x(e){return e.prototype=null,Object.freeze(e)}function b(){h||"undefined"===typeof console||(h=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}}()},9222:function(e,t,r){var n=r(7178);e.exports=function(){var e={};return function(t){if(("object"!==typeof t||null===t)&&"function"!==typeof t)throw new Error("Weakmap-shim: Key must be object");var r=t.valueOf(e);return r&&r.identity===e?r:n(t,e)}}},7178:function(e){e.exports=function(e,t){var r={identity:t},n=e.valueOf;return Object.defineProperty(e,"valueOf",{value:function(e){return e!==t?n.apply(this,arguments):r},writable:!0}),r}},4037:function(e,t,r){var n=r(9222);e.exports=function(){var e=n();return{get:function(t,r){var n=e(t);return n.hasOwnProperty("value")?n.value:r},set:function(t,r){return e(t).value=r,this},has:function(t){return"value"in e(t)},delete:function(t){return delete e(t).value}}}},6183:function(e){"use strict";var t=function(){return function(e,t,r,n,i,a){var o=e[0],s=r[0],l=[0],u=s;n|=0;var c=0,f=s;for(c=0;c=0!==h>=0&&i.push(l[0]+.5+.5*(d+h)/(d-h)),n+=f,++l[0]}}};e.exports=function(e){return r={funcName:e.funcName},function(e){var t={};return function(r,n,i){var a=r.dtype,o=r.order,s=[a,o.join()].join(),l=t[s];return l||(t[s]=l=e([a,o])),l(r.shape.slice(0),r.data,r.stride,0|r.offset,n,i)}}(t.bind(void 0,r));var r}({funcName:"zeroCrossings"})},9584:function(e,t,r){"use strict";e.exports=function(e,t){var r=[];return t=+t||0,n(e.hi(e.shape[0]-1),r,t),r};var n=r(6183)},6601:function(){}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.loaded=!0,a.exports}return r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},r(7386)}()},e.exports=n()},12856:function(e,t,r){"use strict";function n(e,t){for(var r=0;rd)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,p.prototype),t}function p(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return g(e)}return v(e,t,r)}function v(e,t,r){if("string"===typeof e)return function(e,t){if("string"===typeof t&&""!==t||(t="utf8"),!p.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|_(e,t),n=h(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(te(e,Uint8Array)){var t=new Uint8Array(e);return x(t.buffer,t.byteOffset,t.byteLength)}return y(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e));if(te(e,ArrayBuffer)||e&&te(e.buffer,ArrayBuffer))return x(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(te(e,SharedArrayBuffer)||e&&te(e.buffer,SharedArrayBuffer)))return x(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return p.from(n,t,r);var i=function(e){if(p.isBuffer(e)){var t=0|b(e.length),r=h(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!==typeof e.length||re(e.length)?h(0):y(e):"Buffer"===e.type&&Array.isArray(e.data)?y(e.data):void 0}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return p.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e))}function m(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function g(e){return m(e),h(e<0?0:0|b(e))}function y(e){for(var t=e.length<0?0:0|b(e.length),r=h(t),n=0;n=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return 0|e}function _(e,t){if(p.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||te(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(e));var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return J(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Q(e).length;default:if(i)return n?-1:J(e).length;t=(""+t).toLowerCase(),i=!0}}function w(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return z(this,t,r);case"utf8":case"utf-8":return O(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return P(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function k(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function T(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),re(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=p.from(t,n)),p.isBuffer(t))return 0===t.length?-1:M(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):M(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function M(e,t,r,n,i){var a,o=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,l/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var c=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){for(var f=!0,d=0;di&&(n=i):n=i;var a,o=t.length;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function P(e,t,r){return 0===t&&r===e.length?u.fromByteArray(e):u.fromByteArray(e.slice(t,r))}function O(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,u=void 0,c=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=e[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=e[i+1],u=e[i+2],128===(192&l)&&128===(192&u)&&(f=(15&a)<<12|(63&l)<<6|63&u)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],128===(192&l)&&128===(192&u)&&128===(192&c)&&(f=(15&a)<<18|(63&l)<<12|(63&u)<<6|63&c)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=s}return function(e){var t=e.length;if(t<=I)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},p.byteLength=_,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;tr&&(e+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(e,t,r,n,i){if(te(e,Uint8Array)&&(e=p.from(e,e.offset,e.byteLength)),!p.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(e));if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0),s=Math.min(a,o),u=this.slice(n,i),c=e.slice(t,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return A(this,e,t,r);case"utf8":case"utf-8":return S(this,e,t,r);case"ascii":case"latin1":case"binary":return E(this,e,t,r);case"base64":return C(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,r,n,i,a){if(!p.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function j(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,r}function U(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o>>=8,e[r+2]=o,o>>=8,e[r+1]=o,o>>=8,e[r]=o,r+8}function V(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function H(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,4),c.write(e,t,r,n,23,4),r+4}function q(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,8),c.write(e,t,r,n,52,8),r+8}p.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},p.prototype.readUint8=p.prototype.readUInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),this[e]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]|this[e+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]<<8|this[e+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},p.prototype.readBigUInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,24),i=this[++e]+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e],i=this[++e]*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+r;return(BigInt(n)<>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},p.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||N(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},p.prototype.readInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},p.prototype.readInt16LE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt16BE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},p.prototype.readInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},p.prototype.readBigInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=this[e+4]+this[e+5]*Math.pow(2,8)+this[e+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=(t<<24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e];return(BigInt(n)<>>=0,t||N(e,4,this.length),c.read(this,e,!0,23,4)},p.prototype.readFloatBE=function(e,t){return e>>>=0,t||N(e,4,this.length),c.read(this,e,!1,23,4)},p.prototype.readDoubleLE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!0,52,8)},p.prototype.readDoubleBE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},p.prototype.writeUint8=p.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,255,0),this[t]=255&e,t+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigUInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},p.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},p.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},p.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},p.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(e,t,r){return H(this,e,t,!0,r)},p.prototype.writeFloatBE=function(e,t,r){return H(this,e,t,!1,r)},p.prototype.writeDoubleLE=function(e,t,r){return q(this,e,t,!0,r)},p.prototype.writeDoubleBE=function(e,t,r){return q(this,e,t,!1,r)},p.prototype.copy=function(e,t,r,n){if(!p.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(a=t;a=n+4;r-=3)t="_".concat(e.slice(r-3,r)).concat(t);return"".concat(e.slice(0,r)).concat(t)}function Z(e,t,r,n,i,a){if(e>r||e3?0===t||t===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(t).concat(s," and <= ").concat(r).concat(s),new W.ERR_OUT_OF_RANGE("value",o,e)}!function(e,t,r){X(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||K(t,e.length-(r+1))}(n,i,a)}function X(e,t){if("number"!==typeof e)throw new W.ERR_INVALID_ARG_TYPE(t,"number",e)}function K(e,t,r){if(Math.floor(e)!==e)throw X(e,r),new W.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new W.ERR_BUFFER_OUT_OF_BOUNDS;throw new W.ERR_OUT_OF_RANGE(r||"offset",">= ".concat(r?1:0," and <= ").concat(t),e)}G("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?"".concat(e," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),G("ERR_INVALID_ARG_TYPE",(function(e,t){return'The "'.concat(e,'" argument must be of type number. Received type ').concat(l(t))}),TypeError),G("ERR_OUT_OF_RANGE",(function(e,t,r){var n='The value of "'.concat(e,'" is out of range.'),i=r;return Number.isInteger(r)&&Math.abs(r)>Math.pow(2,32)?i=Y(String(r)):"bigint"===typeof r&&(i=String(r),(r>Math.pow(BigInt(2),BigInt(32))||r<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),n+=" It must be ".concat(t,". Received ").concat(i)}),RangeError);var $=/[^+/0-9A-Za-z-_]/g;function J(e,t){var r;t=t||1/0;for(var n=e.length,i=null,a=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Q(e){return u.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace($,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function ee(e,t,r,n){var i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function te(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function re(e){return e!==e}var ne=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)t[n+i]=e[r]+e[i];return t}();function ie(e){return"undefined"===typeof BigInt?ae:e}function ae(){throw new Error("BigInt not supported")}},35791:function(e){"use strict";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var t=/(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,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(e){e||(e={});var i=e.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=t.test(i)&&!r.test(i)||!!e.tablet&&n.test(i);return!a&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},86781:function(e,t,r){"use strict";r.r(t),r.d(t,{sankeyCenter:function(){return d},sankeyCircular:function(){return L},sankeyJustify:function(){return f},sankeyLeft:function(){return u},sankeyRight:function(){return c}});var n=r(33064),i=r(15140),a=r(45879),o=r(2502),s=r.n(o);function l(e){return e.target.depth}function u(e){return e.depth}function c(e,t){return t-1-e.height}function f(e,t){return e.sourceLinks.length?e.depth:t-1}function d(e){return e.targetLinks.length?e.depth:e.sourceLinks.length?(0,n.VV)(e.sourceLinks,l)-1:0}function h(e){return function(){return e}}var p="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function v(e,t){return g(e.source,t.source)||e.index-t.index}function m(e,t){return g(e.target,t.target)||e.index-t.index}function g(e,t){return e.partOfCycle===t.partOfCycle?e.y0-t.y0:"top"===e.circularLinkType||"bottom"===t.circularLinkType?-1:1}function y(e){return e.value}function x(e){return(e.y0+e.y1)/2}function b(e){return x(e.source)}function _(e){return x(e.target)}function w(e){return e.index}function k(e){return e.nodes}function T(e){return e.links}function M(e,t){var r=e.get(t);if(!r)throw new Error("missing: "+t);return r}function A(e,t){return t(e)}var S=25,E=10,C=.3;function L(){var e,t,r=0,a=0,o=1,l=1,u=24,c=w,d=f,A=k,L=T,O=32,D=2,R=null;function F(){var f={nodes:A.apply(null,arguments),links:L.apply(null,arguments)};!function(e){e.nodes.forEach((function(e,t){e.index=t,e.sourceLinks=[],e.targetLinks=[]}));var t=(0,i.UI)(e.nodes,c);e.links.forEach((function(e,r){e.index=r;var n=e.source,i=e.target;"object"!==("undefined"===typeof n?"undefined":p(n))&&(n=e.source=M(t,n)),"object"!==("undefined"===typeof i?"undefined":p(i))&&(i=e.target=M(t,i)),n.sourceLinks.push(e),i.targetLinks.push(e)}))}(f),function(e,t,r){var n=0;if(null===r){for(var i=[],a=0;a0;--p)m(h*=.99,f),w();function v(i){if(t){var c=1/0;d.forEach((function(e){var r=l*t/(e.length+1);c=r0?t+S+E:t,bottom:r=r>0?r+S+E:r,left:a=a>0?a+S+E:a,right:i=i>0?i+S+E:i}}(s),p=function(e,t){var i=(0,n.Fp)(e.nodes,(function(e){return e.column})),s=o-r,c=l-a,f=s+t.right+t.left,d=c+t.top+t.bottom,h=s/f,p=c/d;return r=r*h+t.left,o=0==t.right?o:o*h,a=a*p+t.top,l*=p,e.nodes.forEach((function(e){e.x0=r+e.column*((o-r-u)/i),e.x1=e.x0+u})),p}(s,h);f*=p,s.links.forEach((function(e){e.width=e.value*f})),d.forEach((function(e){var t=e.length;e.forEach((function(e,r){e.depth==d.length-1&&1==t||0==e.depth&&1==t?(e.y0=l/2-e.value*f,e.y1=e.y0+e.value*f):e.partOfCycle?0==I(e,i)?(e.y0=l/2+r,e.y1=e.y0+e.value*f):"top"==e.circularLinkType?(e.y0=a+r,e.y1=e.y0+e.value*f):(e.y0=l-e.value*f-r,e.y1=e.y0+e.value*f):0==h.top||0==h.bottom?(e.y0=(l-a)/t*r,e.y1=e.y0+e.value*f):(e.y0=(l-a)/2-t/2+r,e.y1=e.y0+e.value*f)}))}))}function m(e,t){var r=d.length;d.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,t)>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==r-1&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else{var u=(0,n.J6)(i.sourceLinks,_),c=(0,n.J6)(i.targetLinks,b),f=((u&&c?(u+c)/2:u||c)-x(i))*e;i.y0+=f,i.y1+=f}}))}))}function w(){d.forEach((function(t){var r,n,i,o=a,s=t.length;for(t.sort(g),i=0;i0&&(r.y0+=n,r.y1+=n),o=r.y1+e;if((n=o-e-l)>0)for(o=r.y0-=n,r.y1-=n,i=s-2;i>=0;--i)(n=(r=t[i]).y1+e-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}(f,O,c),N(f);for(var h=0;h<4;h++)Z(f,l,c),X(f,0,c),G(f,a,l,c),Z(f,l,c),X(f,0,c);return function(e,t,r){var i=e.nodes,a=e.links,o=!1,s=!1;if(a.forEach((function(e){"top"==e.circularLinkType?o=!0:"bottom"==e.circularLinkType&&(s=!0)})),0==o||0==s){var l=(0,n.VV)(i,(function(e){return e.y0})),u=(r-t)/((0,n.Fp)(i,(function(e){return e.y1}))-l);i.forEach((function(e){var t=(e.y1-e.y0)*u;e.y0=(e.y0-l)*u,e.y1=e.y0+t})),a.forEach((function(e){e.y0=(e.y0-l)*u,e.y1=(e.y1-l)*u,e.width=e.width*u}))}}(f,a,l),z(f,D,l,c),f}function N(e){e.nodes.forEach((function(e){e.sourceLinks.sort(m),e.targetLinks.sort(v)})),e.nodes.forEach((function(e){var t=e.y0,r=t,n=e.y1,i=n;e.sourceLinks.forEach((function(e){e.circular?(e.y0=n-e.width/2,n-=e.width):(e.y0=t+e.width/2,t+=e.width)})),e.targetLinks.forEach((function(e){e.circular?(e.y1=i-e.width/2,i-=e.width):(e.y1=r+e.width/2,r+=e.width)}))}))}return F.nodeId=function(e){return arguments.length?(c="function"===typeof e?e:h(e),F):c},F.nodeAlign=function(e){return arguments.length?(d="function"===typeof e?e:h(e),F):d},F.nodeWidth=function(e){return arguments.length?(u=+e,F):u},F.nodePadding=function(t){return arguments.length?(e=+t,F):e},F.nodes=function(e){return arguments.length?(A="function"===typeof e?e:h(e),F):A},F.links=function(e){return arguments.length?(L="function"===typeof e?e:h(e),F):L},F.size=function(e){return arguments.length?(r=a=0,o=+e[0],l=+e[1],F):[o-r,l-a]},F.extent=function(e){return arguments.length?(r=+e[0][0],o=+e[1][0],a=+e[0][1],l=+e[1][1],F):[[r,a],[o,l]]},F.iterations=function(e){return arguments.length?(O=+e,F):O},F.circularLinkGap=function(e){return arguments.length?(D=+e,F):D},F.nodePaddingRatio=function(e){return arguments.length?(t=+e,F):t},F.sortNodes=function(e){return arguments.length?(R=e,F):R},F.update=function(e){return P(e,c),N(e),e.links.forEach((function(e){e.circular&&(e.circularLinkType=e.y0+e.y11||i>1)}function R(e,t,r){return e.sort(F),e.forEach((function(n,i){var a,o,s=0;if(J(n,r)&&D(n))n.circularPathData.verticalBuffer=s+n.width/2;else{for(var l=0;lo.source.column)){var u=e[l].circularPathData.verticalBuffer+e[l].width/2+t;s=u>s?u:s}n.circularPathData.verticalBuffer=s+n.width/2}})),e}function z(e,t,r,i){var o=(0,n.VV)(e.links,(function(e){return e.source.y0}));e.links.forEach((function(e){e.circular&&(e.circularPathData={})})),R(e.links.filter((function(e){return"top"==e.circularLinkType})),t,i),R(e.links.filter((function(e){return"bottom"==e.circularLinkType})),t,i),e.links.forEach((function(n){if(n.circular){if(n.circularPathData.arcRadius=n.width+E,n.circularPathData.leftNodeBuffer=5,n.circularPathData.rightNodeBuffer=5,n.circularPathData.sourceWidth=n.source.x1-n.source.x0,n.circularPathData.sourceX=n.source.x0+n.circularPathData.sourceWidth,n.circularPathData.targetX=n.target.x0,n.circularPathData.sourceY=n.y0,n.circularPathData.targetY=n.y1,J(n,i)&&D(n))n.circularPathData.leftSmallArcRadius=E+n.width/2,n.circularPathData.leftLargeArcRadius=E+n.width/2,n.circularPathData.rightSmallArcRadius=E+n.width/2,n.circularPathData.rightLargeArcRadius=E+n.width/2,"bottom"==n.circularLinkType?(n.circularPathData.verticalFullExtent=n.source.y1+S+n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.rightLargeArcRadius):(n.circularPathData.verticalFullExtent=n.source.y0-S-n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.rightLargeArcRadius);else{var s=n.source.column,l=n.circularLinkType,u=e.links.filter((function(e){return e.source.column==s&&e.circularLinkType==l}));"bottom"==n.circularLinkType?u.sort(B):u.sort(N);var c=0;u.forEach((function(e,r){e.circularLinkID==n.circularLinkID&&(n.circularPathData.leftSmallArcRadius=E+n.width/2+c,n.circularPathData.leftLargeArcRadius=E+n.width/2+r*t+c),c+=e.width})),s=n.target.column,u=e.links.filter((function(e){return e.target.column==s&&e.circularLinkType==l})),"bottom"==n.circularLinkType?u.sort(U):u.sort(j),c=0,u.forEach((function(e,r){e.circularLinkID==n.circularLinkID&&(n.circularPathData.rightSmallArcRadius=E+n.width/2+c,n.circularPathData.rightLargeArcRadius=E+n.width/2+r*t+c),c+=e.width})),"bottom"==n.circularLinkType?(n.circularPathData.verticalFullExtent=Math.max(r,n.source.y1,n.target.y1)+S+n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.rightLargeArcRadius):(n.circularPathData.verticalFullExtent=o-S-n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.rightLargeArcRadius)}n.circularPathData.leftInnerExtent=n.circularPathData.sourceX+n.circularPathData.leftNodeBuffer,n.circularPathData.rightInnerExtent=n.circularPathData.targetX-n.circularPathData.rightNodeBuffer,n.circularPathData.leftFullExtent=n.circularPathData.sourceX+n.circularPathData.leftLargeArcRadius+n.circularPathData.leftNodeBuffer,n.circularPathData.rightFullExtent=n.circularPathData.targetX-n.circularPathData.rightLargeArcRadius-n.circularPathData.rightNodeBuffer}if(n.circular)n.path=function(e){return"top"==e.circularLinkType?"M"+e.circularPathData.sourceX+" "+e.circularPathData.sourceY+" L"+e.circularPathData.leftInnerExtent+" "+e.circularPathData.sourceY+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftSmallArcRadius+" 0 0 0 "+e.circularPathData.leftFullExtent+" "+(e.circularPathData.sourceY-e.circularPathData.leftSmallArcRadius)+" L"+e.circularPathData.leftFullExtent+" "+e.circularPathData.verticalLeftInnerExtent+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftLargeArcRadius+" 0 0 0 "+e.circularPathData.leftInnerExtent+" "+e.circularPathData.verticalFullExtent+" L"+e.circularPathData.rightInnerExtent+" "+e.circularPathData.verticalFullExtent+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightLargeArcRadius+" 0 0 0 "+e.circularPathData.rightFullExtent+" "+e.circularPathData.verticalRightInnerExtent+" L"+e.circularPathData.rightFullExtent+" "+(e.circularPathData.targetY-e.circularPathData.rightSmallArcRadius)+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightSmallArcRadius+" 0 0 0 "+e.circularPathData.rightInnerExtent+" "+e.circularPathData.targetY+" L"+e.circularPathData.targetX+" "+e.circularPathData.targetY:"M"+e.circularPathData.sourceX+" "+e.circularPathData.sourceY+" L"+e.circularPathData.leftInnerExtent+" "+e.circularPathData.sourceY+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftSmallArcRadius+" 0 0 1 "+e.circularPathData.leftFullExtent+" "+(e.circularPathData.sourceY+e.circularPathData.leftSmallArcRadius)+" L"+e.circularPathData.leftFullExtent+" "+e.circularPathData.verticalLeftInnerExtent+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftLargeArcRadius+" 0 0 1 "+e.circularPathData.leftInnerExtent+" "+e.circularPathData.verticalFullExtent+" L"+e.circularPathData.rightInnerExtent+" "+e.circularPathData.verticalFullExtent+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightLargeArcRadius+" 0 0 1 "+e.circularPathData.rightFullExtent+" "+e.circularPathData.verticalRightInnerExtent+" L"+e.circularPathData.rightFullExtent+" "+(e.circularPathData.targetY+e.circularPathData.rightSmallArcRadius)+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightSmallArcRadius+" 0 0 1 "+e.circularPathData.rightInnerExtent+" "+e.circularPathData.targetY+" L"+e.circularPathData.targetX+" "+e.circularPathData.targetY}(n);else{var f=(0,a.h5)().source((function(e){return[e.source.x0+(e.source.x1-e.source.x0),e.y0]})).target((function(e){return[e.target.x0,e.y1]}));n.path=f(n)}}))}function F(e,t){return V(e)==V(t)?"bottom"==e.circularLinkType?B(e,t):N(e,t):V(t)-V(e)}function N(e,t){return e.y0-t.y0}function B(e,t){return t.y0-e.y0}function j(e,t){return e.y1-t.y1}function U(e,t){return t.y1-e.y1}function V(e){return e.target.column-e.source.column}function H(e){return e.target.x0-e.source.x1}function q(e,t){var r=O(e),n=H(t)/Math.tan(r);return"up"==$(e)?e.y1+n:e.y1-n}function W(e,t){var r=O(e),n=H(t)/Math.tan(r);return"up"==$(e)?e.y1-n:e.y1+n}function G(e,t,r,n){e.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++)e.nodes.forEach((function(o){if(o.column==a){var u,c=s/(l+1),f=Math.pow(1-c,3),d=3*c*Math.pow(1-c,2),h=3*Math.pow(c,2)*(1-c),p=Math.pow(c,3),v=f*i.y0+d*i.y0+h*i.y1+p*i.y1,m=v-i.width/2,g=v+i.width/2;m>o.y0&&ma.y0&&i.y0a.y0&&i.y1a.y1)&&Y(e,u,t,r)}))):(g>o.y0&&go.y1)&&(u=g-o.y0+10,o=Y(o,u,t,r),e.nodes.forEach((function(e){A(e,n)!=A(o,n)&&e.column==o.column&&e.y0o.y1&&Y(e,u,t,r)})))}}))}}))}function Y(e,t,r,n){return e.y0+t>=r&&e.y1+t<=n&&(e.y0=e.y0+t,e.y1=e.y1+t,e.targetLinks.forEach((function(e){e.y1=e.y1+t})),e.sourceLinks.forEach((function(e){e.y0=e.y0+t}))),e}function Z(e,t,r,n){e.nodes.forEach((function(i){n&&i.y+(i.y1-i.y0)>t&&(i.y=i.y-(i.y+(i.y1-i.y0)-t));var a=e.links.filter((function(e){return A(e.source,r)==A(i,r)})),o=a.length;o>1&&a.sort((function(e,t){if(!e.circular&&!t.circular){if(e.target.column==t.target.column)return e.y1-t.y1;if(!K(e,t))return e.y1-t.y1;if(e.target.column>t.target.column){var r=W(t,e);return e.y1-r}if(t.target.column>e.target.column)return W(e,t)-t.y1}return e.circular&&!t.circular?"top"==e.circularLinkType?-1:1:t.circular&&!e.circular?"top"==t.circularLinkType?1:-1:e.circular&&t.circular?e.circularLinkType===t.circularLinkType&&"top"==e.circularLinkType?e.target.column===t.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:e.circularLinkType===t.circularLinkType&&"bottom"==e.circularLinkType?e.target.column===t.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:"top"==e.circularLinkType?-1:1:void 0}));var s=i.y0;a.forEach((function(e){e.y0=s+e.width/2,s+=e.width})),a.forEach((function(e,t){if("bottom"==e.circularLinkType){for(var r=t+1,n=0;r1&&n.sort((function(e,t){if(!e.circular&&!t.circular){if(e.source.column==t.source.column)return e.y0-t.y0;if(!K(e,t))return e.y0-t.y0;if(t.source.column0?"up":"down"}function J(e,t){return A(e.source,t)==A(e.target,t)}},30838:function(e,t,r){"use strict";r.r(t),r.d(t,{sankey:function(){return w},sankeyCenter:function(){return u},sankeyJustify:function(){return l},sankeyLeft:function(){return o},sankeyLinkHorizontal:function(){return A},sankeyRight:function(){return s}});var n=r(33064),i=r(15140);function a(e){return e.target.depth}function o(e){return e.depth}function s(e,t){return t-1-e.height}function l(e,t){return e.sourceLinks.length?e.depth:t-1}function u(e){return e.targetLinks.length?e.depth:e.sourceLinks.length?(0,n.VV)(e.sourceLinks,a)-1:0}function c(e){return function(){return e}}function f(e,t){return h(e.source,t.source)||e.index-t.index}function d(e,t){return h(e.target,t.target)||e.index-t.index}function h(e,t){return e.y0-t.y0}function p(e){return e.value}function v(e){return(e.y0+e.y1)/2}function m(e){return v(e.source)*e.value}function g(e){return v(e.target)*e.value}function y(e){return e.index}function x(e){return e.nodes}function b(e){return e.links}function _(e,t){var r=e.get(t);if(!r)throw new Error("missing: "+t);return r}function w(){var e=0,t=0,r=1,a=1,o=24,s=8,u=y,w=l,k=x,T=b,M=32,A=2/3;function S(){var l={nodes:k.apply(null,arguments),links:T.apply(null,arguments)};return function(e){e.nodes.forEach((function(e,t){e.index=t,e.sourceLinks=[],e.targetLinks=[]}));var t=(0,i.UI)(e.nodes,u);e.links.forEach((function(e,r){e.index=r;var n=e.source,i=e.target;"object"!==typeof n&&(n=e.source=_(t,n)),"object"!==typeof i&&(i=e.target=_(t,i)),n.sourceLinks.push(e),i.targetLinks.push(e)}))}(l),function(e){e.nodes.forEach((function(e){e.value=Math.max((0,n.Sm)(e.sourceLinks,p),(0,n.Sm)(e.targetLinks,p))}))}(l),function(t){var n,i,a;for(n=t.nodes,i=[],a=0;n.length;++a,n=i,i=[])n.forEach((function(e){e.depth=a,e.sourceLinks.forEach((function(e){i.indexOf(e.target)<0&&i.push(e.target)}))}));for(n=t.nodes,i=[],a=0;n.length;++a,n=i,i=[])n.forEach((function(e){e.height=a,e.targetLinks.forEach((function(e){i.indexOf(e.source)<0&&i.push(e.source)}))}));var s=(r-e-o)/(a-1);t.nodes.forEach((function(t){t.x1=(t.x0=e+Math.max(0,Math.min(a-1,Math.floor(w.call(null,t,a))))*s)+o}))}(l),function(e){var r=(0,i.b1)().key((function(e){return e.x0})).sortKeys(n.j2).entries(e.nodes).map((function(e){return e.values}));u(),d();for(var o=1,l=M;l>0;--l)f(o*=.99),d(),c(o),d();function u(){var i=(0,n.Fp)(r,(function(e){return e.length})),o=A*(a-t)/(i-1);s>o&&(s=o);var l=(0,n.VV)(r,(function(e){return(a-t-(e.length-1)*s)/(0,n.Sm)(e,p)}));r.forEach((function(e){e.forEach((function(e,t){e.y1=(e.y0=t)+e.value*l}))})),e.links.forEach((function(e){e.width=e.value*l}))}function c(e){r.forEach((function(t){t.forEach((function(t){if(t.targetLinks.length){var r=((0,n.Sm)(t.targetLinks,m)/(0,n.Sm)(t.targetLinks,p)-v(t))*e;t.y0+=r,t.y1+=r}}))}))}function f(e){r.slice().reverse().forEach((function(t){t.forEach((function(t){if(t.sourceLinks.length){var r=((0,n.Sm)(t.sourceLinks,g)/(0,n.Sm)(t.sourceLinks,p)-v(t))*e;t.y0+=r,t.y1+=r}}))}))}function d(){r.forEach((function(e){var r,n,i,o=t,l=e.length;for(e.sort(h),i=0;i0&&(r.y0+=n,r.y1+=n),o=r.y1+s;if((n=o-s-a)>0)for(o=r.y0-=n,r.y1-=n,i=l-2;i>=0;--i)(n=(r=e[i]).y1+s-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}(l),E(l),l}function E(e){e.nodes.forEach((function(e){e.sourceLinks.sort(d),e.targetLinks.sort(f)})),e.nodes.forEach((function(e){var t=e.y0,r=t;e.sourceLinks.forEach((function(e){e.y0=t+e.width/2,t+=e.width})),e.targetLinks.forEach((function(e){e.y1=r+e.width/2,r+=e.width}))}))}return S.update=function(e){return E(e),e},S.nodeId=function(e){return arguments.length?(u="function"===typeof e?e:c(e),S):u},S.nodeAlign=function(e){return arguments.length?(w="function"===typeof e?e:c(e),S):w},S.nodeWidth=function(e){return arguments.length?(o=+e,S):o},S.nodePadding=function(e){return arguments.length?(s=+e,S):s},S.nodes=function(e){return arguments.length?(k="function"===typeof e?e:c(e),S):k},S.links=function(e){return arguments.length?(T="function"===typeof e?e:c(e),S):T},S.size=function(n){return arguments.length?(e=t=0,r=+n[0],a=+n[1],S):[r-e,a-t]},S.extent=function(n){return arguments.length?(e=+n[0][0],r=+n[1][0],t=+n[0][1],a=+n[1][1],S):[[e,t],[r,a]]},S.iterations=function(e){return arguments.length?(M=+e,S):M},S}var k=r(45879);function T(e){return[e.source.x1,e.y0]}function M(e){return[e.target.x0,e.y1]}function A(){return(0,k.h5)().source(T).target(M)}},39898:function(e,t,r){var n,i;(function(){var a={version:"3.8.0"},o=[].slice,s=function(e){return o.call(e)},l=self.document;function u(e){return e&&(e.ownerDocument||e.document||e).documentElement}function c(e){return e&&(e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView)}if(l)try{s(l.documentElement.childNodes)[0].nodeType}catch(ga){s=function(e){for(var t=e.length,r=new Array(t);t--;)r[t]=e[t];return r}}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,d=f.setAttribute,h=f.setAttributeNS,p=this.CSSStyleDeclaration.prototype,v=p.setProperty;f.setAttribute=function(e,t){d.call(this,e,t+"")},f.setAttributeNS=function(e,t,r){h.call(this,e,t,r+"")},p.setProperty=function(e,t,r){v.call(this,e,t+"",r)}}function m(e,t){return et?1:e>=t?0:NaN}function g(e){return null===e?NaN:+e}function y(e){return!isNaN(e)}function x(e){return{left:function(t,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=t.length);n>>1;e(t[a],r)<0?n=a+1:i=a}return n},right:function(t,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=t.length);n>>1;e(t[a],r)>0?i=a:n=a+1}return n}}}a.ascending=m,a.descending=function(e,t){return te?1:t>=e?0:NaN},a.min=function(e,t){var r,n,i=-1,a=e.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++in&&(r=n)}else{for(;++i=n){r=n;break}for(;++in&&(r=n)}return r},a.max=function(e,t){var r,n,i=-1,a=e.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++ir&&(r=n)}else{for(;++i=n){r=n;break}for(;++ir&&(r=n)}return r},a.extent=function(e,t){var r,n,i,a=-1,o=e.length;if(1===arguments.length){for(;++a=n){r=i=n;break}for(;++an&&(r=n),i=n){r=i=n;break}for(;++an&&(r=n),i1)return o/(l-1)},a.deviation=function(){var e=a.variance.apply(this,arguments);return e?Math.sqrt(e):e};var b=x(m);function _(e){return e.length}a.bisectLeft=b.left,a.bisect=a.bisectRight=b.right,a.bisector=function(e){return x(1===e.length?function(t,r){return m(e(t),r)}:e)},a.shuffle=function(e,t,r){(a=arguments.length)<3&&(r=e.length,a<2&&(t=0));for(var n,i,a=r-t;a;)i=Math.random()*a--|0,n=e[a+t],e[a+t]=e[i+t],e[i+t]=n;return e},a.permute=function(e,t){for(var r=t.length,n=new Array(r);r--;)n[r]=e[t[r]];return n},a.pairs=function(e){for(var t=0,r=e.length-1,n=e[0],i=new Array(r<0?0:r);t=0;)for(t=(n=e[i]).length;--t>=0;)r[--o]=n[t];return r};var w=Math.abs;function k(e,t){for(var r in t)Object.defineProperty(e.prototype,r,{value:t[r],enumerable:!1})}function T(){this._=Object.create(null)}a.range=function(e,t,r){if(arguments.length<3&&(r=1,arguments.length<2&&(t=e,e=0)),(t-e)/r===1/0)throw new Error("infinite range");var n,i=[],a=function(e){for(var t=1;e*t%1;)t*=10;return t}(w(r)),o=-1;if(e*=a,t*=a,(r*=a)<0)for(;(n=e+r*++o)>t;)i.push(n/a);else for(;(n=e+r*++o)=n.length)return t?t.call(r,a):e?a.sort(e):a;for(var l,u,c,f,d=-1,h=a.length,p=n[s++],v=new T;++d=n.length)return e;var r=[],a=i[t++];return e.forEach((function(e,n){r.push({key:e,values:s(n,t)})})),a?r.sort((function(e,t){return a(e.key,t.key)})):r}return r.map=function(e,t){return o(t,e,0)},r.entries=function(e){return s(o(a.map,e,0),0)},r.key=function(e){return n.push(e),r},r.sortKeys=function(e){return i[n.length-1]=e,r},r.sortValues=function(t){return e=t,r},r.rollup=function(e){return t=e,r},r},a.set=function(e){var t=new D;if(e)for(var r=0,n=e.length;r=0&&(n=e.slice(r+1),e=e.slice(0,r)),e)return arguments.length<2?this[e].on(n):this[e].on(n,t);if(2===arguments.length){if(null==t)for(e in this)this.hasOwnProperty(e)&&this[e].on(n,null);return this}},a.event=null,a.requote=function(e){return e.replace(W,"\\$&")};var W=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,G={}.__proto__?function(e,t){e.__proto__=t}:function(e,t){for(var r in t)e[r]=t[r]};function Y(e){return G(e,$),e}var Z=function(e,t){return t.querySelector(e)},X=function(e,t){return t.querySelectorAll(e)},K=function(e,t){var r=e.matches||e[F(e,"matchesSelector")];return K=function(e,t){return r.call(e,t)},K(e,t)};"function"===typeof Sizzle&&(Z=function(e,t){return Sizzle(e,t)[0]||null},X=Sizzle,K=Sizzle.matchesSelector),a.selection=function(){return a.select(l.documentElement)};var $=a.selection.prototype=[];function J(e){return"function"===typeof e?e:function(){return Z(e,this)}}function Q(e){return"function"===typeof e?e:function(){return X(e,this)}}$.select=function(e){var t,r,n,i,a=[];e=J(e);for(var o=-1,s=this.length;++o=0&&"xmlns"!==(r=e.slice(0,t))&&(e=e.slice(t+1)),te.hasOwnProperty(r)?{space:te[r],local:e}:e}},$.attr=function(e,t){if(arguments.length<2){if("string"===typeof e){var r=this.node();return(e=a.ns.qualify(e)).local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}for(t in e)this.each(re(t,e[t]));return this}return this.each(re(e,t))},$.classed=function(e,t){if(arguments.length<2){if("string"===typeof e){var r=this.node(),n=(e=ae(e)).length,i=-1;if(t=r.classList){for(;++i=0;)(r=n[i])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},$.sort=function(e){e=pe.apply(this,arguments);for(var t=-1,r=this.length;++t0&&(e=e.slice(0,i));var l=xe.get(e);function u(){var t=this[n];t&&(this.removeEventListener(e,t,t.$),delete this[n])}return l&&(e=l,o=_e),i?t?function(){var i=o(t,s(arguments));u.call(this),this.addEventListener(e,this[n]=i,i.$=r),i._=t}:u:t?B:function(){var t,r=new RegExp("^__on([^.]+)"+a.requote(e)+"$");for(var n in this)if(t=n.match(r)){var i=this[n];this.removeEventListener(t[1],i,i.$),delete this[n]}}}a.selection.enter=me,a.selection.enter.prototype=ge,ge.append=$.append,ge.empty=$.empty,ge.node=$.node,ge.call=$.call,ge.size=$.size,ge.select=function(e){for(var t,r,n,i,a,o=[],s=-1,l=this.length;++s=t&&(t=i+1);!(o=s[t])&&++t1?Ie:e<-1?-Ie:Math.asin(e)}function Fe(e){return((e=Math.exp(e))+1/e)/2}var Ne=Math.SQRT2;a.interpolateZoom=function(e,t){var r,n,i=e[0],a=e[1],o=e[2],s=t[0],l=t[1],u=t[2],c=s-i,f=l-a,d=c*c+f*f;if(d0&&(e=e.transition().duration(v)),e.call(w.event)}function S(){s&&s.domain(o.range().map((function(e){return(e-d.x)/d.k})).map(o.invert)),f&&f.domain(u.range().map((function(e){return(e-d.y)/d.k})).map(u.invert))}function E(e){m++||e({type:"zoomstart"})}function C(e){S(),e({type:"zoom",scale:d.k,translate:[d.x,d.y]})}function L(e){--m||(e({type:"zoomend"}),t=null)}function P(){var e=this,t=_.of(e,arguments),r=0,n=a.select(c(e)).on(y,(function(){r=1,M(a.mouse(e),i),C(t)})).on(x,(function(){n.on(y,null).on(x,null),o(r),L(t)})),i=k(a.mouse(e)),o=Te(e);Ji.call(e),E(t)}function O(){var e,t=this,r=_.of(t,arguments),n={},o=0,s=".zoom-"+a.event.changedTouches[0].identifier,l="touchmove"+s,u="touchend"+s,c=[],f=a.select(t),h=Te(t);function p(){var r=a.touches(t);return e=d.k,r.forEach((function(e){e.identifier in n&&(n[e.identifier]=k(e))})),r}function v(){var e=a.event.target;a.select(e).on(l,m).on(u,y),c.push(e);for(var r=a.event.changedTouches,s=0,f=r.length;s1){g=h[0];var x=h[1],b=g[0]-x[0],_=g[1]-x[1];o=b*b+_*_}}function m(){var s,l,u,c,f=a.touches(t);Ji.call(t);for(var d=0,h=f.length;d360?e-=360:e<0&&(e+=360),e<60?n+(i-n)*e/60:e<180?i:e<240?n+(i-n)*(240-e)/60:n}(e))}return e=isNaN(e)?0:(e%=360)<0?e+360:e,t=isNaN(t)||t<0?0:t>1?1:t,n=2*(r=r<0?0:r>1?1:r)-(i=r<=.5?r*(1+t):r+t-r*t),new ot(a(e+120),a(e),a(e-120))}function Ge(e,t,r){return this instanceof Ge?(this.h=+e,this.c=+t,void(this.l=+r)):arguments.length<2?e instanceof Ge?new Ge(e.h,e.c,e.l):rt(e instanceof Xe?e.l:(e=ht((e=a.rgb(e)).r,e.g,e.b)).l,e.a,e.b):new Ge(e,t,r)}qe.brighter=function(e){return e=Math.pow(.7,arguments.length?e:1),new He(this.h,this.s,this.l/e)},qe.darker=function(e){return e=Math.pow(.7,arguments.length?e:1),new He(this.h,this.s,e*this.l)},qe.rgb=function(){return We(this.h,this.s,this.l)},a.hcl=Ge;var Ye=Ge.prototype=new Ve;function Ze(e,t,r){return isNaN(e)&&(e=0),isNaN(t)&&(t=0),new Xe(r,Math.cos(e*=De)*t,Math.sin(e)*t)}function Xe(e,t,r){return this instanceof Xe?(this.l=+e,this.a=+t,void(this.b=+r)):arguments.length<2?e instanceof Xe?new Xe(e.l,e.a,e.b):e instanceof Ge?Ze(e.h,e.c,e.l):ht((e=ot(e)).r,e.g,e.b):new Xe(e,t,r)}Ye.brighter=function(e){return new Ge(this.h,this.c,Math.min(100,this.l+Ke*(arguments.length?e:1)))},Ye.darker=function(e){return new Ge(this.h,this.c,Math.max(0,this.l-Ke*(arguments.length?e:1)))},Ye.rgb=function(){return Ze(this.h,this.c,this.l).rgb()},a.lab=Xe;var Ke=18,$e=.95047,Je=1,Qe=1.08883,et=Xe.prototype=new Ve;function tt(e,t,r){var n=(e+16)/116,i=n+t/500,a=n-r/200;return new ot(at(3.2404542*(i=nt(i)*$e)-1.5371385*(n=nt(n)*Je)-.4985314*(a=nt(a)*Qe)),at(-.969266*i+1.8760108*n+.041556*a),at(.0556434*i-.2040259*n+1.0572252*a))}function rt(e,t,r){return e>0?new Ge(Math.atan2(r,t)*Re,Math.sqrt(t*t+r*r),e):new Ge(NaN,NaN,e)}function nt(e){return e>.206893034?e*e*e:(e-4/29)/7.787037}function it(e){return e>.008856?Math.pow(e,1/3):7.787037*e+4/29}function at(e){return Math.round(255*(e<=.00304?12.92*e:1.055*Math.pow(e,1/2.4)-.055))}function ot(e,t,r){return this instanceof ot?(this.r=~~e,this.g=~~t,void(this.b=~~r)):arguments.length<2?e instanceof ot?new ot(e.r,e.g,e.b):ft(""+e,ot,We):new ot(e,t,r)}function st(e){return new ot(e>>16,e>>8&255,255&e)}function lt(e){return st(e)+""}et.brighter=function(e){return new Xe(Math.min(100,this.l+Ke*(arguments.length?e:1)),this.a,this.b)},et.darker=function(e){return new Xe(Math.max(0,this.l-Ke*(arguments.length?e:1)),this.a,this.b)},et.rgb=function(){return tt(this.l,this.a,this.b)},a.rgb=ot;var ut=ot.prototype=new Ve;function ct(e){return e<16?"0"+Math.max(0,e).toString(16):Math.min(255,e).toString(16)}function ft(e,t,r){var n,i,a,o=0,s=0,l=0;if(n=/([a-z]+)\((.*)\)/.exec(e=e.toLowerCase()))switch(i=n[2].split(","),n[1]){case"hsl":return r(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return t(vt(i[0]),vt(i[1]),vt(i[2]))}return(a=mt.get(e))?t(a.r,a.g,a.b):(null==e||"#"!==e.charAt(0)||isNaN(a=parseInt(e.slice(1),16))||(4===e.length?(o=(3840&a)>>4,o|=o>>4,s=240&a,s|=s>>4,l=15&a,l|=l<<4):7===e.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,l=255&a)),t(o,s,l))}function dt(e,t,r){var n,i,a=Math.min(e/=255,t/=255,r/=255),o=Math.max(e,t,r),s=o-a,l=(o+a)/2;return s?(i=l<.5?s/(o+a):s/(2-o-a),n=e==o?(t-r)/s+(t0&&l<1?0:n),new He(n,i,l)}function ht(e,t,r){var n=it((.4124564*(e=pt(e))+.3575761*(t=pt(t))+.1804375*(r=pt(r)))/$e),i=it((.2126729*e+.7151522*t+.072175*r)/Je);return Xe(116*i-16,500*(n-i),200*(i-it((.0193339*e+.119192*t+.9503041*r)/Qe)))}function pt(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function vt(e){var t=parseFloat(e);return"%"===e.charAt(e.length-1)?Math.round(2.55*t):t}ut.brighter=function(e){e=Math.pow(.7,arguments.length?e:1);var t=this.r,r=this.g,n=this.b,i=30;return t||r||n?(t&&t=200&&t<300||304===t){try{e=r.call(i,u)}catch(ga){return void o.error.call(i,ga)}o.load.call(i,e)}else o.error.call(i,u)}return self.XDomainRequest&&!("withCredentials"in u)&&/^(http(s)?:)?\/\//.test(e)&&(u=new XDomainRequest),"onload"in u?u.onload=u.onerror=f:u.onreadystatechange=function(){u.readyState>3&&f()},u.onprogress=function(e){var t=a.event;a.event=e;try{o.progress.call(i,u)}finally{a.event=t}},i.header=function(e,t){return e=(e+"").toLowerCase(),arguments.length<2?l[e]:(null==t?delete l[e]:l[e]=t+"",i)},i.mimeType=function(e){return arguments.length?(t=null==e?null:e+"",i):t},i.responseType=function(e){return arguments.length?(c=e,i):c},i.response=function(e){return r=e,i},["get","post"].forEach((function(e){i[e]=function(){return i.send.apply(i,[e].concat(s(arguments)))}})),i.send=function(r,n,a){if(2===arguments.length&&"function"===typeof n&&(a=n,n=null),u.open(r,e,!0),null==t||"accept"in l||(l.accept=t+",*/*"),u.setRequestHeader)for(var s in l)u.setRequestHeader(s,l[s]);return null!=t&&u.overrideMimeType&&u.overrideMimeType(t),null!=c&&(u.responseType=c),null!=a&&i.on("error",a).on("load",(function(e){a(null,e)})),o.beforesend.call(i,u),u.send(null==n?null:n),i},i.abort=function(){return u.abort(),i},a.rebind(i,o,"on"),null==n?i:i.get(function(e){return 1===e.length?function(t,r){e(null==t?r:null)}:e}(n))}mt.forEach((function(e,t){mt.set(e,st(t))})),a.functor=gt,a.xhr=yt(R),a.dsv=function(e,t){var r=new RegExp('["'+e+"\n]"),n=e.charCodeAt(0);function i(e,r,n){arguments.length<3&&(n=r,r=null);var i=xt(e,t,null==r?a:o(r),n);return i.row=function(e){return arguments.length?i.response(null==(r=e)?a:o(e)):r},i}function a(e){return i.parse(e.responseText)}function o(e){return function(t){return i.parse(t.responseText,e)}}function s(t){return t.map(l).join(e)}function l(e){return r.test(e)?'"'+e.replace(/\"/g,'""')+'"':e}return i.parse=function(e,t){var r;return i.parseRows(e,(function(e,n){if(r)return r(e,n-1);var i=function(t){for(var r={},n=e.length,i=0;i=l)return o;if(i)return i=!1,a;var t=u;if(34===e.charCodeAt(t)){for(var r=t;r++24?(isFinite(t)&&(clearTimeout(kt),kt=setTimeout(At,t)),wt=0):(wt=1,Tt(At))}function St(){for(var e=Date.now(),t=bt;t;)e>=t.t&&t.c(e-t.t)&&(t.c=null),t=t.n;return e}function Et(){for(var e,t=bt,r=1/0;t;)t.c?(t.t1&&(t=e[a[o-2]],r=e[a[o-1]],n=e[s],(r[0]-t[0])*(n[1]-t[1])-(r[1]-t[1])*(n[0]-t[0])<=0);)--o;a[o++]=s}return a.slice(0,o)}function Ot(e,t){return e[0]-t[0]||e[1]-t[1]}a.timer=function(){Mt.apply(this,arguments)},a.timer.flush=function(){St(),Et()},a.round=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},a.geom={},a.geom.hull=function(e){var t=Ct,r=Lt;if(arguments.length)return n(e);function n(e){if(e.length<3)return[];var n,i=gt(t),a=gt(r),o=e.length,s=[],l=[];for(n=0;n=0;--n)h.push(e[s[u[n]][2]]);for(n=+f;nEe)s=s.L;else{if(!((i=a-Kt(s,o))>Ee)){n>-Ee?(t=s.P,r=s):i>-Ee?(t=s,r=s.N):t=r=s;break}if(!s.R){t=s;break}s=s.R}var l=Wt(e);if(Bt.insert(t,l),t||r){if(t===r)return tr(t),r=Wt(t.site),Bt.insert(l,r),l.edge=r.edge=ir(t.site,l.site),er(t),void er(r);if(r){tr(t),tr(r);var u=t.site,c=u.x,f=u.y,d=e.x-c,h=e.y-f,p=r.site,v=p.x-c,m=p.y-f,g=2*(d*m-h*v),y=d*d+h*h,x=v*v+m*m,b={x:(m*y-h*x)/g+c,y:(d*x-v*y)/g+f};or(r.edge,u,p,b),l.edge=ir(u,e,null,b),r.edge=ir(e,p,null,b),er(t),er(r)}else l.edge=ir(t.site,l.site)}}function Xt(e,t){var r=e.site,n=r.x,i=r.y,a=i-t;if(!a)return n;var o=e.P;if(!o)return-1/0;var s=(r=o.site).x,l=r.y,u=l-t;if(!u)return s;var c=s-n,f=1/a-1/u,d=c/u;return f?(-d+Math.sqrt(d*d-2*f*(c*c/(-2*u)-l+u/2+i-a/2)))/f+n:(n+s)/2}function Kt(e,t){var r=e.N;if(r)return Xt(r,t);var n=e.site;return n.y===t?n.x:1/0}function $t(e){this.site=e,this.edges=[]}function Jt(e,t){return t.angle-e.angle}function Qt(){ur(this),this.x=this.y=this.arc=this.site=this.cy=null}function er(e){var t=e.P,r=e.N;if(t&&r){var n=t.site,i=e.site,a=r.site;if(n!==a){var o=i.x,s=i.y,l=n.x-o,u=n.y-s,c=a.x-o,f=2*(l*(m=a.y-s)-u*c);if(!(f>=-Ce)){var d=l*l+u*u,h=c*c+m*m,p=(m*d-u*h)/f,v=(l*h-c*d)/f,m=v+s,g=Ht.pop()||new Qt;g.arc=e,g.site=i,g.x=p+o,g.y=m+Math.sqrt(p*p+v*v),g.cy=m,e.circle=g;for(var y=null,x=Ut._;x;)if(g.y=s)return;if(d>p){if(a){if(a.y>=u)return}else a={x:m,y:l};r={x:m,y:u}}else{if(a){if(a.y1)if(d>p){if(a){if(a.y>=u)return}else a={x:(l-i)/n,y:l};r={x:(u-i)/n,y:u}}else{if(a){if(a.y=s)return}else a={x:o,y:n*o+i};r={x:s,y:n*s+i}}else{if(a){if(a.x0)){if(t/=d,d<0){if(t0){if(t>f)return;t>c&&(c=t)}if(t=i-l,d||!(t<0)){if(t/=d,d<0){if(t>f)return;t>c&&(c=t)}else if(d>0){if(t0)){if(t/=h,h<0){if(t0){if(t>f)return;t>c&&(c=t)}if(t=a-u,h||!(t<0)){if(t/=h,h<0){if(t>f)return;t>c&&(c=t)}else if(h>0){if(t0&&(e.a={x:l+c*d,y:u+c*h}),f<1&&(e.b={x:l+f*d,y:u+f*h}),e}}}}}),l=o.length;l--;)(!rr(t=o[l],e)||!s(t)||w(t.a.x-t.b.x)Ee||w(i-r)>Ee)&&(s.splice(o,0,new sr(ar(a.site,c,w(n-f)Ee?{x:f,y:w(t-f)Ee?{x:w(r-p)Ee?{x:d,y:w(t-d)Ee?{x:w(r-h)=r&&u.x<=i&&u.y>=n&&u.y<=o?[[r,o],[i,o],[i,n],[r,n]]:[]).point=e[s]})),t}function s(e){return e.map((function(e,t){return{x:Math.round(n(e,t)/Ee)*Ee,y:Math.round(i(e,t)/Ee)*Ee,i:t}}))}return o.links=function(e){return hr(s(e)).edges.filter((function(e){return e.l&&e.r})).map((function(t){return{source:e[t.l.i],target:e[t.r.i]}}))},o.triangles=function(e){var t=[];return hr(s(e)).cells.forEach((function(r,n){for(var i,a,o,s,l=r.site,u=r.edges.sort(Jt),c=-1,f=u.length,d=u[f-1].edge,h=d.l===l?d.r:d.l;++ca&&(i=t.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:_r(r,n)})),a=Tr.lastIndex;return av&&(v=l.x),l.y>m&&(m=l.y),u.push(l.x),c.push(l.y);else for(f=0;fv&&(v=x),b>m&&(m=b),u.push(x),c.push(b)}var _=v-h,k=m-p;function T(e,t,r,n,i,a,o,s){if(!isNaN(r)&&!isNaN(n))if(e.leaf){var l=e.x,u=e.y;if(null!=l)if(w(l-r)+w(u-n)<.01)M(e,t,r,n,i,a,o,s);else{var c=e.point;e.x=e.y=e.point=null,M(e,c,l,u,i,a,o,s),M(e,t,r,n,i,a,o,s)}else e.x=r,e.y=n,e.point=t}else M(e,t,r,n,i,a,o,s)}function M(e,t,r,n,i,a,o,s){var l=.5*(i+o),u=.5*(a+s),c=r>=l,f=n>=u,d=f<<1|c;e.leaf=!1,c?i=l:o=l,f?a=u:s=u,T(e=e.nodes[d]||(e.nodes[d]={leaf:!0,nodes:[],point:null,x:null,y:null}),t,r,n,i,a,o,s)}_>k?m=p+_:v=h+k;var A={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(e){T(A,e,+g(e,++f),+y(e,f),h,p,v,m)},visit:function(e){yr(e,A,h,p,v,m)},find:function(e){return function(e,t,r,n,i,a,o){var s,l=1/0;return function e(u,c,f,d,h){if(!(c>a||f>o||d=_)<<1|t>=b,k=w+4;w=0&&!(r=a.interpolators[n](e,t)););return r}function Ar(e,t){var r,n=[],i=[],a=e.length,o=t.length,s=Math.min(e.length,t.length);for(r=0;r=1)return 1;var t=e*e,r=t*e;return 4*(e<.5?r:3*(e-t)+r-.75)}function Rr(e){return 1-Math.cos(e*Ie)}function zr(e){return Math.pow(2,10*(e-1))}function Fr(e){return 1-Math.sqrt(1-e*e)}function Nr(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}function Br(e,t){return t-=e,function(r){return Math.round(e+t*r)}}function jr(e){var t,r,n,i=[e.a,e.b],a=[e.c,e.d],o=Vr(i),s=Ur(i,a),l=Vr(((t=a)[0]+=(n=-s)*(r=i)[0],t[1]+=n*r[1],t))||0;i[0]*a[1]=0?e.slice(0,r):e,i=r>=0?e.slice(r+1):"in";return n=Er.get(n)||Sr,i=Cr.get(i)||R,t=i(n.apply(null,o.call(arguments,1))),function(e){return e<=0?0:e>=1?1:t(e)}},a.interpolateHcl=function(e,t){e=a.hcl(e),t=a.hcl(t);var r=e.h,n=e.c,i=e.l,o=t.h-r,s=t.c-n,l=t.l-i;return isNaN(s)&&(s=0,n=isNaN(n)?t.c:n),isNaN(o)?(o=0,r=isNaN(r)?t.h:r):o>180?o-=360:o<-180&&(o+=360),function(e){return Ze(r+o*e,n+s*e,i+l*e)+""}},a.interpolateHsl=function(e,t){e=a.hsl(e),t=a.hsl(t);var r=e.h,n=e.s,i=e.l,o=t.h-r,s=t.s-n,l=t.l-i;return isNaN(s)&&(s=0,n=isNaN(n)?t.s:n),isNaN(o)?(o=0,r=isNaN(r)?t.h:r):o>180?o-=360:o<-180&&(o+=360),function(e){return We(r+o*e,n+s*e,i+l*e)+""}},a.interpolateLab=function(e,t){e=a.lab(e),t=a.lab(t);var r=e.l,n=e.a,i=e.b,o=t.l-r,s=t.a-n,l=t.b-i;return function(e){return tt(r+o*e,n+s*e,i+l*e)+""}},a.interpolateRound=Br,a.transform=function(e){var t=l.createElementNS(a.ns.prefix.svg,"g");return(a.transform=function(e){if(null!=e){t.setAttribute("transform",e);var r=t.transform.baseVal.consolidate()}return new jr(r?r.matrix:Hr)})(e)},jr.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var Hr={a:1,b:0,c:0,d:1,e:0,f:0};function qr(e){return e.length?e.pop()+",":""}function Wr(e,t){var r=[],n=[];return e=a.transform(e),t=a.transform(t),function(e,t,r,n){if(e[0]!==t[0]||e[1]!==t[1]){var i=r.push("translate(",null,",",null,")");n.push({i:i-4,x:_r(e[0],t[0])},{i:i-2,x:_r(e[1],t[1])})}else(t[0]||t[1])&&r.push("translate("+t+")")}(e.translate,t.translate,r,n),function(e,t,r,n){e!==t?(e-t>180?t+=360:t-e>180&&(e+=360),n.push({i:r.push(qr(r)+"rotate(",null,")")-2,x:_r(e,t)})):t&&r.push(qr(r)+"rotate("+t+")")}(e.rotate,t.rotate,r,n),function(e,t,r,n){e!==t?n.push({i:r.push(qr(r)+"skewX(",null,")")-2,x:_r(e,t)}):t&&r.push(qr(r)+"skewX("+t+")")}(e.skew,t.skew,r,n),function(e,t,r,n){if(e[0]!==t[0]||e[1]!==t[1]){var i=r.push(qr(r)+"scale(",null,",",null,")");n.push({i:i-4,x:_r(e[0],t[0])},{i:i-2,x:_r(e[1],t[1])})}else 1===t[0]&&1===t[1]||r.push(qr(r)+"scale("+t+")")}(e.scale,t.scale,r,n),e=t=null,function(e){for(var t,i=-1,a=n.length;++i0?r=t:(e.c=null,e.t=NaN,e=null,l.end({type:"end",alpha:r=0})):t>0&&(l.start({type:"start",alpha:r=t}),e=Mt(s.tick)),s):r},s.start=function(){var e,t,r,a=g.length,l=y.length,c=u[0],p=u[1];for(e=0;e=0;)r.push(i[n])}function sn(e,t){for(var r=[e],n=[];null!=(e=r.pop());)if(n.push(e),(a=e.children)&&(i=a.length))for(var i,a,o=-1;++o=0;)o.push(c=u[l]),c.parent=a,c.depth=a.depth+1;r&&(a.value=0),a.children=u}else r&&(a.value=+r.call(n,a,a.depth)||0),delete a.children;return sn(i,(function(t){var n,i;e&&(n=t.children)&&n.sort(e),r&&(i=t.parent)&&(i.value+=t.value)})),s}return n.sort=function(t){return arguments.length?(e=t,n):e},n.children=function(e){return arguments.length?(t=e,n):t},n.value=function(e){return arguments.length?(r=e,n):r},n.revalue=function(e){return r&&(on(e,(function(e){e.children&&(e.value=0)})),sn(e,(function(e){var t;e.children||(e.value=+r.call(n,e,e.depth)||0),(t=e.parent)&&(t.value+=e.value)}))),e},n},a.layout.partition=function(){var e=a.layout.hierarchy(),t=[1,1];function r(e,t,n,i){var a=e.children;if(e.x=t,e.y=e.depth*i,e.dx=n,e.dy=i,a&&(o=a.length)){var o,s,l,u=-1;for(n=e.value?n/e.value:0;++us&&(s=n),o.push(n)}for(r=0;ri&&(n=r,i=t);return n}function _n(e){return e.reduce(wn,0)}function wn(e,t){return e+t[1]}function kn(e,t){return Tn(e,Math.ceil(Math.log(t.length)/Math.LN2+1))}function Tn(e,t){for(var r=-1,n=+e[0],i=(e[1]-n)/t,a=[];++r<=t;)a[r]=i*r+n;return a}function Mn(e){return[a.min(e),a.max(e)]}function An(e,t){return e.value-t.value}function Sn(e,t){var r=e._pack_next;e._pack_next=t,t._pack_prev=e,t._pack_next=r,r._pack_prev=t}function En(e,t){e._pack_next=t,t._pack_prev=e}function Cn(e,t){var r=t.x-e.x,n=t.y-e.y,i=e.r+t.r;return.999*i*i>r*r+n*n}function Ln(e){if((t=e.children)&&(l=t.length)){var t,r,n,i,a,o,s,l,u=1/0,c=-1/0,f=1/0,d=-1/0;if(t.forEach(Pn),(r=t[0]).x=-r.r,r.y=0,x(r),l>1&&((n=t[1]).x=n.r,n.y=0,x(n),l>2))for(Dn(r,n,i=t[2]),x(i),Sn(r,i),r._pack_prev=i,Sn(i,n),n=r._pack_next,a=3;a0)for(o=-1;++o=f[0]&&l<=f[1]&&((s=u[a.bisect(d,l,1,p)-1]).y+=v,s.push(i[o]));return u}return i.value=function(e){return arguments.length?(t=e,i):t},i.range=function(e){return arguments.length?(r=gt(e),i):r},i.bins=function(e){return arguments.length?(n="number"===typeof e?function(t){return Tn(t,e)}:gt(e),i):n},i.frequency=function(t){return arguments.length?(e=!!t,i):e},i},a.layout.pack=function(){var e,t=a.layout.hierarchy().sort(An),r=0,n=[1,1];function i(i,a){var o=t.call(this,i,a),s=o[0],l=n[0],u=n[1],c=null==e?Math.sqrt:"function"===typeof e?e:function(){return e};if(s.x=s.y=0,sn(s,(function(e){e.r=+c(e.value)})),sn(s,Ln),r){var f=r*(e?1:Math.max(2*s.r/l,2*s.r/u))/2;sn(s,(function(e){e.r+=f})),sn(s,Ln),sn(s,(function(e){e.r-=f}))}return In(s,l/2,u/2,e?1:1/Math.max(2*s.r/l,2*s.r/u)),o}return i.size=function(e){return arguments.length?(n=e,i):n},i.radius=function(t){return arguments.length?(e=null==t||"function"===typeof t?t:+t,i):e},i.padding=function(e){return arguments.length?(r=+e,i):r},an(i,t)},a.layout.tree=function(){var e=a.layout.hierarchy().sort(null).value(null),t=Rn,r=[1,1],n=null;function i(i,a){var u=e.call(this,i,a),c=u[0],f=function(e){for(var t,r={A:null,children:[e]},n=[r];null!=(t=n.pop());)for(var i,a=t.children,o=0,s=a.length;oh.x&&(h=e),e.depth>p.depth&&(p=e)}));var v=t(d,h)/2-d.x,m=r[0]/(h.x+t(h,d)/2+v),g=r[1]/(p.depth||1);on(c,(function(e){e.x=(e.x+v)*m,e.y=e.depth*g}))}return u}function o(e){var r=e.children,n=e.parent.children,i=e.i?n[e.i-1]:null;if(r.length){!function(e){for(var t,r=0,n=0,i=e.children,a=i.length;--a>=0;)(t=i[a]).z+=r,t.m+=r,r+=t.s+(n+=t.c)}(e);var a=(r[0].z+r[r.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,r,n){if(r){for(var i,a=e,o=e,s=r,l=a.parent.children[0],u=a.m,c=o.m,f=s.m,d=l.m;s=Fn(s),a=zn(a),s&&a;)l=zn(l),(o=Fn(o)).a=e,(i=s.z+f-a.z-u+t(s._,a._))>0&&(Nn(Bn(s,e,n),e,i),u+=i,c+=i),f+=s.m,u+=a.m,d+=l.m,c+=o.m;s&&!Fn(o)&&(o.t=s,o.m+=f-c),a&&!zn(l)&&(l.t=a,l.m+=u-d,n=e)}return n}(e,i,e.parent.A||n[0])}function s(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function l(e){e.x*=r[0],e.y=e.depth*r[1]}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(e){return arguments.length?(n=null==(r=e)?l:null,i):n?null:r},i.nodeSize=function(e){return arguments.length?(n=null==(r=e)?null:l,i):n?r:null},an(i,e)},a.layout.cluster=function(){var e=a.layout.hierarchy().sort(null).value(null),t=Rn,r=[1,1],n=!1;function i(i,o){var s,l=e.call(this,i,o),u=l[0],c=0;sn(u,(function(e){var r=e.children;r&&r.length?(e.x=function(e){return e.reduce((function(e,t){return e+t.x}),0)/e.length}(r),e.y=function(e){return 1+a.max(e,(function(e){return e.y}))}(r)):(e.x=s?c+=t(e,s):0,e.y=0,s=e)}));var f=jn(u),d=Un(u),h=f.x-t(f,d)/2,p=d.x+t(d,f)/2;return sn(u,n?function(e){e.x=(e.x-u.x)*r[0],e.y=(u.y-e.y)*r[1]}:function(e){e.x=(e.x-h)/(p-h)*r[0],e.y=(1-(u.y?e.y/u.y:1))*r[1]}),l}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(e){return arguments.length?(n=null==(r=e),i):n?null:r},i.nodeSize=function(e){return arguments.length?(n=null!=(r=e),i):n?r:null},an(i,e)},a.layout.treemap=function(){var e,t=a.layout.hierarchy(),r=Math.round,n=[1,1],i=null,o=Vn,s=!1,l="squarify",u=.5*(1+Math.sqrt(5));function c(e,t){for(var r,n,i=-1,a=e.length;++i0;)s.push(r=u[i-1]),s.area+=r.area,"squarify"!==l||(n=h(s,v))<=d?(u.pop(),d=n):(s.area-=s.pop().area,p(s,v,a,!1),v=Math.min(a.dx,a.dy),s.length=s.area=0,d=1/0);s.length&&(p(s,v,a,!0),s.length=s.area=0),t.forEach(f)}}function d(e){var t=e.children;if(t&&t.length){var r,n=o(e),i=t.slice(),a=[];for(c(i,n.dx*n.dy/e.value),a.area=0;r=i.pop();)a.push(r),a.area+=r.area,null!=r.z&&(p(a,r.z?n.dx:n.dy,n,!i.length),a.length=a.area=0);t.forEach(d)}}function h(e,t){for(var r,n=e.area,i=0,a=1/0,o=-1,s=e.length;++oi&&(i=r));return t*=t,(n*=n)?Math.max(t*i*u/n,n/(t*a*u)):1/0}function p(e,t,n,i){var a,o=-1,s=e.length,l=n.x,u=n.y,c=t?r(e.area/t):0;if(t==n.dx){for((i||c>n.dy)&&(c=n.dy);++on.dx)&&(c=n.dx);++o1);return e+t*r*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var e=a.random.normal.apply(a,arguments);return function(){return Math.exp(e())}},bates:function(e){var t=a.random.irwinHall(e);return function(){return t()/e}},irwinHall:function(e){return function(){for(var t=0,r=0;r2?Kn:Gn,l=n?Yr:Gr;return i=o(e,t,l,r),a=o(t,e,l,Mr),s}function s(e){return i(e)}return s.invert=function(e){return a(e)},s.domain=function(t){return arguments.length?(e=t.map(Number),o()):e},s.range=function(e){return arguments.length?(t=e,o()):t},s.rangeRound=function(e){return s.range(e).interpolate(Br)},s.clamp=function(e){return arguments.length?(n=e,o()):n},s.interpolate=function(e){return arguments.length?(r=e,o()):r},s.ticks=function(t){return ti(e,t)},s.tickFormat=function(t,r){return d3_scale_linearTickFormat(e,t,r)},s.nice=function(t){return Qn(e,t),o()},s.copy=function(){return $n(e,t,r,n)},o()}function Jn(e,t){return a.rebind(e,t,"range","rangeRound","interpolate","clamp")}function Qn(e,t){return Yn(e,Zn(ei(e,t)[2])),Yn(e,Zn(ei(e,t)[2])),e}function ei(e,t){null==t&&(t=10);var r=qn(e),n=r[1]-r[0],i=Math.pow(10,Math.floor(Math.log(n/t)/Math.LN10)),a=t/n*i;return a<=.15?i*=10:a<=.35?i*=5:a<=.75&&(i*=2),r[0]=Math.ceil(r[0]/i)*i,r[1]=Math.floor(r[1]/i)*i+.5*i,r[2]=i,r}function ti(e,t){return a.range.apply(a,ei(e,t))}function ri(e,t,r,n){function i(e){return(r?Math.log(e<0?0:e):-Math.log(e>0?0:-e))/Math.log(t)}function a(e){return r?Math.pow(t,e):-Math.pow(t,-e)}function o(t){return e(i(t))}return o.invert=function(t){return a(e.invert(t))},o.domain=function(t){return arguments.length?(r=t[0]>=0,e.domain((n=t.map(Number)).map(i)),o):n},o.base=function(r){return arguments.length?(t=+r,e.domain(n.map(i)),o):t},o.nice=function(){var t=Yn(n.map(i),r?Math:ni);return e.domain(t),n=t.map(a),o},o.ticks=function(){var e=qn(n),o=[],s=e[0],l=e[1],u=Math.floor(i(s)),c=Math.ceil(i(l)),f=t%1?2:t;if(isFinite(c-u)){if(r){for(;u0;d--)o.push(a(u)*d);for(u=0;o[u]l;c--);o=o.slice(u,c)}return o},o.copy=function(){return ri(e.copy(),t,r,n)},Jn(o,e)}a.scale.linear=function(){return $n([0,1],[0,1],Mr,!1)},a.scale.log=function(){return ri(a.scale.linear().domain([0,1]),10,!0,[1,10])};var ni={floor:function(e){return-Math.ceil(-e)},ceil:function(e){return-Math.floor(-e)}};function ii(e,t,r){var n=ai(t),i=ai(1/t);function a(t){return e(n(t))}return a.invert=function(t){return i(e.invert(t))},a.domain=function(t){return arguments.length?(e.domain((r=t.map(Number)).map(n)),a):r},a.ticks=function(e){return ti(r,e)},a.tickFormat=function(e,t){return d3_scale_linearTickFormat(r,e,t)},a.nice=function(e){return a.domain(Qn(r,e))},a.exponent=function(o){return arguments.length?(n=ai(t=o),i=ai(1/t),e.domain(r.map(n)),a):t},a.copy=function(){return ii(e.copy(),t,r)},Jn(a,e)}function ai(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function oi(e,t){var r,n,i;function o(i){return n[((r.get(i)||("range"===t.t?r.set(i,e.push(i)):NaN))-1)%n.length]}function s(t,r){return a.range(e.length).map((function(e){return t+r*e}))}return o.domain=function(n){if(!arguments.length)return e;e=[],r=new T;for(var i,a=-1,s=n.length;++a0?r[n-1]:e[0],nf?0:1;if(u=Oe)return l(u,h)+(s?l(s,1-h):"")+"Z";var p,v,m,g,y,x,b,_,w,k,T,M,A=0,S=0,E=[];if((g=(+o.apply(this,arguments)||0)/2)&&(m=n===mi?Math.sqrt(s*s+u*u):+n.apply(this,arguments),h||(S*=-1),u&&(S=ze(m/u*Math.sin(g))),s&&(A=ze(m/s*Math.sin(g)))),u){y=u*Math.cos(c+S),x=u*Math.sin(c+S),b=u*Math.cos(f-S),_=u*Math.sin(f-S);var C=Math.abs(f-c-2*S)<=Le?0:1;if(S&&wi(y,x,b,_)===h^C){var L=(c+f)/2;y=u*Math.cos(L),x=u*Math.sin(L),b=_=null}}else y=x=0;if(s){w=s*Math.cos(f-A),k=s*Math.sin(f-A),T=s*Math.cos(c+A),M=s*Math.sin(c+A);var P=Math.abs(c-f+2*A)<=Le?0:1;if(A&&wi(w,k,T,M)===1-h^P){var O=(c+f)/2;w=s*Math.cos(O),k=s*Math.sin(O),T=M=null}}else w=k=0;if(d>Ee&&(p=Math.min(Math.abs(u-s)/2,+r.apply(this,arguments)))>.001){v=s0?0:1}function ki(e,t,r,n,i){var a=e[0]-t[0],o=e[1]-t[1],s=(i?n:-n)/Math.sqrt(a*a+o*o),l=s*o,u=-s*a,c=e[0]+l,f=e[1]+u,d=t[0]+l,h=t[1]+u,p=(c+d)/2,v=(f+h)/2,m=d-c,g=h-f,y=m*m+g*g,x=r-n,b=c*h-d*f,_=(g<0?-1:1)*Math.sqrt(Math.max(0,x*x*y-b*b)),w=(b*g-m*_)/y,k=(-b*m-g*_)/y,T=(b*g+m*_)/y,M=(-b*m+g*_)/y,A=w-p,S=k-v,E=T-p,C=M-v;return A*A+S*S>E*E+C*C&&(w=T,k=M),[[w-l,k-u],[w*r/x,k*r/x]]}function Ti(){return!0}function Mi(e){var t=Ct,r=Lt,n=Ti,i=Si,a=i.key,o=.7;function s(a){var s,l=[],u=[],c=-1,f=a.length,d=gt(t),h=gt(r);function p(){l.push("M",i(e(u),o))}for(;++c1&&i.push("H",n[0]),i.join("")},"step-before":Ci,"step-after":Li,basis:Ii,"basis-open":function(e){if(e.length<4)return Si(e);for(var t,r=[],n=-1,i=e.length,a=[0],o=[0];++n<3;)t=e[n],a.push(t[0]),o.push(t[1]);for(r.push(Di(Fi,a)+","+Di(Fi,o)),--n;++n9&&(i=3*t/Math.sqrt(i),o[s]=i*r,o[s+1]=i*n);for(s=-1;++s<=l;)i=(e[Math.min(l,s+1)][0]-e[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}(e))}});function Si(e){return e.length>1?e.join("L"):e+"Z"}function Ei(e){return e.join("L")+"Z"}function Ci(e){for(var t=0,r=e.length,n=e[0],i=[n[0],",",n[1]];++t1){s=t[1],a=e[l],l++,n+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1];for(var u=2;uLe)+",1 "+t}function l(e,t,r,n){return"Q 0,0 "+n}return a.radius=function(e){return arguments.length?(r=gt(e),a):r},a.source=function(t){return arguments.length?(e=gt(t),a):e},a.target=function(e){return arguments.length?(t=gt(e),a):t},a.startAngle=function(e){return arguments.length?(n=gt(e),a):n},a.endAngle=function(e){return arguments.length?(i=gt(e),a):i},a},a.svg.diagonal=function(){var e=Vi,t=Hi,r=Wi;function n(n,i){var a=e.call(this,n,i),o=t.call(this,n,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(r))[0]+"C"+l[1]+" "+l[2]+" "+l[3]}return n.source=function(t){return arguments.length?(e=gt(t),n):e},n.target=function(e){return arguments.length?(t=gt(e),n):t},n.projection=function(e){return arguments.length?(r=e,n):r},n},a.svg.diagonal.radial=function(){var e=a.svg.diagonal(),t=Wi,r=e.projection;return e.projection=function(e){return arguments.length?r(function(e){return function(){var t=e.apply(this,arguments),r=t[0],n=t[1]-Ie;return[r*Math.cos(n),r*Math.sin(n)]}}(t=e)):t},e},a.svg.symbol=function(){var e=Yi,t=Gi;function r(r,n){return(Xi.get(e.call(this,r,n))||Zi)(t.call(this,r,n))}return r.type=function(t){return arguments.length?(e=gt(t),r):e},r.size=function(e){return arguments.length?(t=gt(e),r):t},r};var Xi=a.map({circle:Zi,cross:function(e){var t=Math.sqrt(e/5)/2;return"M"+-3*t+","+-t+"H"+-t+"V"+-3*t+"H"+t+"V"+-t+"H"+3*t+"V"+t+"H"+t+"V"+3*t+"H"+-t+"V"+t+"H"+-3*t+"Z"},diamond:function(e){var t=Math.sqrt(e/(2*$i)),r=t*$i;return"M0,"+-t+"L"+r+",0 0,"+t+" "+-r+",0Z"},square:function(e){var t=Math.sqrt(e)/2;return"M"+-t+","+-t+"L"+t+","+-t+" "+t+","+t+" "+-t+","+t+"Z"},"triangle-down":function(e){var t=Math.sqrt(e/Ki),r=t*Ki/2;return"M0,"+r+"L"+t+","+-r+" "+-t+","+-r+"Z"},"triangle-up":function(e){var t=Math.sqrt(e/Ki),r=t*Ki/2;return"M0,"+-r+"L"+t+","+r+" "+-t+","+r+"Z"}});a.svg.symbolTypes=Xi.keys();var Ki=Math.sqrt(3),$i=Math.tan(30*De);$.transition=function(e){for(var t,r,n=ta||++ia,i=sa(e),a=[],o=ra||{time:Date.now(),ease:Dr,delay:0,duration:250},s=-1,l=this.length;++s0;)u[--d].call(e,o);if(a>=1)return f.event&&f.event.end.call(e,e.__data__,t),--c.count?delete c[n]:delete e[r],1}f||(a=i.time,o=Mt((function(e){var t=f.delay;if(o.t=t+a,t<=e)return d(e-t);o.c=d}),0,a),f=c[n]={tween:new T,time:a,timer:o,delay:i.delay,duration:i.duration,ease:i.ease,index:t},i=null,++c.count)}na.call=$.call,na.empty=$.empty,na.node=$.node,na.size=$.size,a.transition=function(e,t){return e&&e.transition?ta?e.transition(t):e:a.selection().transition(e)},a.transition.prototype=na,na.select=function(e){var t,r,n,i=this.id,a=this.namespace,o=[];e=J(e);for(var s=-1,l=this.length;++srect,.s>rect").attr("width",o[1]-o[0])}function v(e){e.select(".extent").attr("y",s[0]),e.selectAll(".extent,.e>rect,.w>rect").attr("height",s[1]-s[0])}function m(){var f,m,g=this,y=a.select(a.event.target),x=r.of(g,arguments),b=a.select(g),_=y.datum(),w=!/^(n|s)$/.test(_)&&n,k=!/^(e|w)$/.test(_)&&i,T=y.classed("extent"),M=Te(g),A=a.mouse(g),S=a.select(c(g)).on("keydown.brush",(function(){32==a.event.keyCode&&(T||(f=null,A[0]-=o[1],A[1]-=s[1],T=2),V())})).on("keyup.brush",(function(){32==a.event.keyCode&&2==T&&(A[0]+=o[1],A[1]+=s[1],T=0,V())}));if(a.event.changedTouches?S.on("touchmove.brush",L).on("touchend.brush",O):S.on("mousemove.brush",L).on("mouseup.brush",O),b.interrupt().selectAll("*").interrupt(),T)A[0]=o[0]-A[0],A[1]=s[0]-A[1];else if(_){var E=+/w$/.test(_),C=+/^n/.test(_);m=[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 L(){var e=a.mouse(g),t=!1;m&&(e[0]+=m[0],e[1]+=m[1]),T||(a.event.altKey?(f||(f=[(o[0]+o[1])/2,(s[0]+s[1])/2]),A[0]=o[+(e[0]>>1;t.dtype||(t.dtype="array"),"string"===typeof t.dtype?p=new(f(t.dtype))(m):t.dtype&&(p=t.dtype,Array.isArray(p)&&(p.length=m));for(var g=0;gr||s>1073741824){for(var d=0;dr+i||A>n+i||S=L)&&o!==s){var l=y[a];void 0===s&&(s=l.length);for(var u=o;u=m&&f<=w&&d>=g&&d<=k&&P.push(c)}var h=x[a],p=h[4*o+0],v=h[4*o+1],b=h[4*o+2],_=h[4*o+3],T=function(e,t){for(var r=null,n=0;null===r;)if(r=e[4*t+n],++n>e.length)return null;return r}(h,o+1),E=.5*i,O=a+1;t(r,n,E,O,p,v||b||_||T),t(r,n+E,E,O,v,b||_||T),t(r+E,n,E,O,b,_||T),t(r+E,n+E,E,O,_,T)}}(0,0,1,0,0,1),P},p;function E(e,t,r){for(var n=1,i=.5,a=.5,o=.5,s=0;s0){t+=Math.abs(o(e[0]));for(var r=1;r2){for(l=0;l=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r},t.radiansToLength=c,t.lengthToRadians=f,t.lengthToDegrees=function(e,t){return d(f(e,t))},t.bearingToAzimuth=function(e){var t=e%360;return t<0&&(t+=360),t},t.radiansToDegrees=d,t.degreesToRadians=function(e){return e%360*Math.PI/180},t.convertLength=function(e,t,r){if(void 0===t&&(t="kilometers"),void 0===r&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return c(f(e,t),r)},t.convertArea=function(e,r,n){if(void 0===r&&(r="meters"),void 0===n&&(n="kilometers"),!(e>=0))throw new Error("area must be a positive number");var i=t.areaFactors[r];if(!i)throw new Error("invalid original units");var a=t.areaFactors[n];if(!a)throw new Error("invalid final units");return e/i*a},t.isNumber=h,t.isObject=function(e){return!!e&&e.constructor===Object},t.validateBBox=function(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(4!==e.length&&6!==e.length)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach((function(e){if(!h(e))throw new Error("bbox must only contain numbers")}))},t.validateId=function(e){if(!e)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof e))throw new Error("id must be a number or a string")}},60302:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(23132);function i(e,t,r){if(null!==e)for(var n,a,o,s,l,u,c,f,d=0,h=0,p=e.type,v="FeatureCollection"===p,m="Feature"===p,g=v?e.features.length:1,y=0;yu||h>c||p>f)return l=i,u=r,c=h,f=p,void(o=0);var v=n.lineString([l,i],e.properties);if(!1===t(v,r,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function c(e,t){if(!e)throw new Error("geojson is required");l(e,(function(e,r,i){if(null!==e.geometry){var a=e.geometry.type,o=e.geometry.coordinates;switch(a){case"LineString":if(!1===t(e,r,i,0,0))return!1;break;case"Polygon":for(var s=0;se[0]&&(t[0]=e[0]),t[1]>e[1]&&(t[1]=e[1]),t[2]=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r},t.radiansToLength=c,t.lengthToRadians=f,t.lengthToDegrees=function(e,t){return d(f(e,t))},t.bearingToAzimuth=function(e){var t=e%360;return t<0&&(t+=360),t},t.radiansToDegrees=d,t.degreesToRadians=function(e){return e%360*Math.PI/180},t.convertLength=function(e,t,r){if(void 0===t&&(t="kilometers"),void 0===r&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return c(f(e,t),r)},t.convertArea=function(e,r,n){if(void 0===r&&(r="meters"),void 0===n&&(n="kilometers"),!(e>=0))throw new Error("area must be a positive number");var i=t.areaFactors[r];if(!i)throw new Error("invalid original units");var a=t.areaFactors[n];if(!a)throw new Error("invalid final units");return e/i*a},t.isNumber=h,t.isObject=function(e){return!!e&&e.constructor===Object},t.validateBBox=function(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(4!==e.length&&6!==e.length)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach((function(e){if(!h(e))throw new Error("bbox must only contain numbers")}))},t.validateId=function(e){if(!e)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof e))throw new Error("id must be a number or a string")}},27138:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(94228);function i(e,t,r){if(null!==e)for(var n,a,o,s,l,u,c,f,d=0,h=0,p=e.type,v="FeatureCollection"===p,m="Feature"===p,g=v?e.features.length:1,y=0;yu||h>c||p>f)return l=i,u=r,c=h,f=p,void(o=0);var v=n.lineString([l,i],e.properties);if(!1===t(v,r,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function c(e,t){if(!e)throw new Error("geojson is required");l(e,(function(e,r,i){if(null!==e.geometry){var a=e.geometry.type,o=e.geometry.coordinates;switch(a){case"LineString":if(!1===t(e,r,i,0,0))return!1;break;case"Polygon":for(var s=0;s=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r},t.radiansToLength=c,t.lengthToRadians=f,t.lengthToDegrees=function(e,t){return d(f(e,t))},t.bearingToAzimuth=function(e){var t=e%360;return t<0&&(t+=360),t},t.radiansToDegrees=d,t.degreesToRadians=function(e){return e%360*Math.PI/180},t.convertLength=function(e,t,r){if(void 0===t&&(t="kilometers"),void 0===r&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return c(f(e,t),r)},t.convertArea=function(e,r,n){if(void 0===r&&(r="meters"),void 0===n&&(n="kilometers"),!(e>=0))throw new Error("area must be a positive number");var i=t.areaFactors[r];if(!i)throw new Error("invalid original units");var a=t.areaFactors[n];if(!a)throw new Error("invalid final units");return e/i*a},t.isNumber=h,t.isObject=function(e){return!!e&&e.constructor===Object},t.validateBBox=function(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(4!==e.length&&6!==e.length)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach((function(e){if(!h(e))throw new Error("bbox must only contain numbers")}))},t.validateId=function(e){if(!e)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof e))throw new Error("id must be a number or a string")},t.radians2degrees=function(){throw new Error("method has been renamed to `radiansToDegrees`")},t.degrees2radians=function(){throw new Error("method has been renamed to `degreesToRadians`")},t.distanceToDegrees=function(){throw new Error("method has been renamed to `lengthToDegrees`")},t.distanceToRadians=function(){throw new Error("method has been renamed to `lengthToRadians`")},t.radiansToDistance=function(){throw new Error("method has been renamed to `radiansToLength`")},t.bearingToAngle=function(){throw new Error("method has been renamed to `bearingToAzimuth`")},t.convertDistance=function(){throw new Error("method has been renamed to `convertLength`")}},88553:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(64182);function i(e,t,r){if(null!==e)for(var n,a,o,s,l,u,c,f,d=0,h=0,p=e.type,v="FeatureCollection"===p,m="Feature"===p,g=v?e.features.length:1,y=0;yu||h>c||p>f)return l=i,u=r,c=h,f=p,void(o=0);var v=n.lineString([l,i],e.properties);if(!1===t(v,r,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function c(e,t){if(!e)throw new Error("geojson is required");l(e,(function(e,r,i){if(null!==e.geometry){var a=e.geometry.type,o=e.geometry.coordinates;switch(a){case"LineString":if(!1===t(e,r,i,0,0))return!1;break;case"Polygon":for(var s=0;si&&(i=e[o]),e[o]1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;ie.length)&&(r=e.length),e.substring(r-t.length,r)===t}var m="",g="",y="",x="",b={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function _(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach((function(t){r[t]=e[t]})),Object.defineProperty(r,"message",{value:e.message}),r}function w(e){return h(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function k(e,t,r){var i="",a="",o=0,s="",l=!1,u=w(e),c=u.split("\n"),f=w(t).split("\n"),h=0,p="";if("strictEqual"===r&&"object"===d(e)&&"object"===d(t)&&null!==e&&null!==t&&(r="strictEqualObject"),1===c.length&&1===f.length&&c[0]!==f[0]){var _=c[0].length+f[0].length;if(_<=10){if(("object"!==d(e)||null===e)&&("object"!==d(t)||null===t)&&(0!==e||0!==t))return"".concat(b[r],"\n\n")+"".concat(c[0]," !== ").concat(f[0],"\n")}else if("strictEqualObject"!==r&&_<(n.stderr&&n.stderr.isTTY?n.stderr.columns:80)){for(;c[0][h]===f[0][h];)h++;h>2&&(p="\n ".concat(function(e,t){if(t=Math.floor(t),0==e.length||0==t)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+e.substring(0,r-e.length)}(" ",h),"^"),h=0)}}for(var k=c[c.length-1],T=f[f.length-1];k===T&&(h++<2?s="\n ".concat(k).concat(s):i=k,c.pop(),f.pop(),0!==c.length&&0!==f.length);)k=c[c.length-1],T=f[f.length-1];var M=Math.max(c.length,f.length);if(0===M){var A=u.split("\n");if(A.length>30)for(A[26]="".concat(m,"...").concat(x);A.length>27;)A.pop();return"".concat(b.notIdentical,"\n\n").concat(A.join("\n"),"\n")}h>3&&(s="\n".concat(m,"...").concat(x).concat(s),l=!0),""!==i&&(s="\n ".concat(i).concat(s),i="");var S=0,E=b[r]+"\n".concat(g,"+ actual").concat(x," ").concat(y,"- expected").concat(x),C=" ".concat(m,"...").concat(x," Lines skipped");for(h=0;h1&&h>2&&(L>4?(a+="\n".concat(m,"...").concat(x),l=!0):L>3&&(a+="\n ".concat(f[h-2]),S++),a+="\n ".concat(f[h-1]),S++),o=h,i+="\n".concat(y,"-").concat(x," ").concat(f[h]),S++;else if(f.length1&&h>2&&(L>4?(a+="\n".concat(m,"...").concat(x),l=!0):L>3&&(a+="\n ".concat(c[h-2]),S++),a+="\n ".concat(c[h-1]),S++),o=h,a+="\n".concat(g,"+").concat(x," ").concat(c[h]),S++;else{var P=f[h],O=c[h],I=O!==P&&(!v(O,",")||O.slice(0,-1)!==P);I&&v(P,",")&&P.slice(0,-1)===O&&(I=!1,O+=","),I?(L>1&&h>2&&(L>4?(a+="\n".concat(m,"...").concat(x),l=!0):L>3&&(a+="\n ".concat(c[h-2]),S++),a+="\n ".concat(c[h-1]),S++),o=h,a+="\n".concat(g,"+").concat(x," ").concat(O),i+="\n".concat(y,"-").concat(x," ").concat(P),S+=2):(a+=i,i="",1!==L&&0!==h||(a+="\n ".concat(O),S++))}if(S>20&&h30)for(T[26]="".concat(m,"...").concat(x);T.length>27;)T.pop();r=1===T.length?o(this,f(t).call(this,"".concat(v," ").concat(T[0]))):o(this,f(t).call(this,"".concat(v,"\n\n").concat(T.join("\n"),"\n")))}else{var M=w(u),A="",S=b[a];"notDeepEqual"===a||"notEqual"===a?(M="".concat(b[a],"\n\n").concat(M)).length>1024&&(M="".concat(M.slice(0,1021),"...")):(A="".concat(w(c)),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)),r=o(this,f(t).call(this,"".concat(M).concat(A)))}return Error.stackTraceLimit=h,r.generatedMessage=!i,Object.defineProperty(s(r),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),r.code="ERR_ASSERTION",r.actual=u,r.expected=c,r.operator=a,Error.captureStackTrace&&Error.captureStackTrace(s(r),l),r.stack,r.name="AssertionError",o(r)}var r,l,u;return function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(t,e),r=t,l=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:h.custom,value:function(e,t){return h(this,function(e){for(var t=1;t2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}c("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),c("ERR_INVALID_ARG_TYPE",(function(e,t,i){var a,o,l,u;if(void 0===s&&(s=r(32791)),s("string"===typeof e,"'name' must be a string"),"string"===typeof t&&(o="not ",t.substr(!l||l<0?0:+l,o.length)===o)?(a="must not be",t=t.replace(/^not /,"")):a="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))u="The ".concat(e," ").concat(a," ").concat(f(t,"type"));else{var c=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";u='The "'.concat(e,'" ').concat(c," ").concat(a," ").concat(f(t,"type"))}return u+=". Received type ".concat(n(i))}),TypeError),c("ERR_INVALID_ARG_VALUE",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===l&&(l=r(43827));var i=l.inspect(t);return i.length>128&&(i="".concat(i.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(n,". Received ").concat(i)}),TypeError,RangeError),c("ERR_INVALID_RETURN_VALUE",(function(e,t,r){var i;return i=r&&r.constructor&&r.constructor.name?"instance of ".concat(r.constructor.name):"type ".concat(n(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(i,".")}),TypeError),c("ERR_MISSING_ARGS",(function(){for(var e=arguments.length,t=new Array(e),n=0;n0,"At least one arg needs to be specified");var i="The ",a=t.length;switch(t=t.map((function(e){return'"'.concat(e,'"')})),a){case 1:i+="".concat(t[0]," argument");break;case 2:i+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:i+=t.slice(0,a-1).join(", "),i+=", and ".concat(t[a-1]," arguments")}return"".concat(i," must be specified")}),TypeError),e.exports.codes=u},74061:function(e,t,r){"use strict";function n(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=[],n=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(l){i=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(i)throw a}}return r}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function i(e){return i="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}var a=void 0!==/a/g.flags,o=function(e){var t=[];return e.forEach((function(e){return t.push(e)})),t},s=function(e){var t=[];return e.forEach((function(e,r){return t.push([r,e])})),t},l=Object.is?Object.is:r(64003),u=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},c=Number.isNaN?Number.isNaN:r(15567);function f(e){return e.call.bind(e)}var d=f(Object.prototype.hasOwnProperty),h=f(Object.prototype.propertyIsEnumerable),p=f(Object.prototype.toString),v=r(43827).types,m=v.isAnyArrayBuffer,g=v.isArrayBufferView,y=v.isDate,x=v.isMap,b=v.isRegExp,_=v.isSet,w=v.isNativeError,k=v.isBoxedPrimitive,T=v.isNumberObject,M=v.isStringObject,A=v.isBooleanObject,S=v.isBigIntObject,E=v.isSymbolObject,C=v.isFloat32Array,L=v.isFloat64Array;function P(e){if(0===e.length||e.length>10)return!0;for(var t=0;t57)return!0}return 10===e.length&&e>=Math.pow(2,32)}function O(e){return Object.keys(e).filter(P).concat(u(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function I(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i0?o-4:o;for(r=0;r>16&255,u[c++]=t>>8&255,u[c++]=255&t;return 2===l&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[c++]=255&t),1===l&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[c++]=t>>8&255,u[c++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=16383,s=0,u=n-i;su?u:s+o));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function l(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},91358:function(e){"use strict";function t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>=0?(a=o,i=o-1):n=o+1}return a}function r(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>0?(a=o,i=o-1):n=o+1}return a}function n(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<0?(a=o,n=o+1):i=o-1}return a}function i(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<=0?(a=o,n=o+1):i=o-1}return a}function a(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=void 0!==r?r(o,t):o-t;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(e,t,r,n,i,a){return"function"===typeof r?a(e,t,r,void 0===n?0:0|n,void 0===i?e.length-1:0|i):a(e,t,void 0,void 0===r?0:0|r,void 0===n?e.length-1:0|n)}e.exports={ge:function(e,r,n,i,a){return o(e,r,n,i,a,t)},gt:function(e,t,n,i,a){return o(e,t,n,i,a,r)},lt:function(e,t,r,i,a){return o(e,t,r,i,a,n)},le:function(e,t,r,n,a){return o(e,t,r,n,a,i)},eq:function(e,t,r,n,i){return o(e,t,r,n,i,a)}}},13547:function(e,t){"use strict";function r(e){var t=32;return(e&=-e)&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}t.INT_BITS=32,t.INT_MAX=2147483647,t.INT_MIN=-1<<31,t.sign=function(e){return(e>0)-(e<0)},t.abs=function(e){var t=e>>31;return(e^t)-t},t.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=r=((e>>>=t)>255)<<3,t|=r=((e>>>=r)>15)<<2,(t|=r=((e>>>=r)>3)<<1)|(e>>>=r)>>1},t.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},t.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},t.countTrailingZeros=r,t.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},t.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=n<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},t.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},t.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},t.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},t.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},44781:function(e,t,r){"use strict";var n=r(53435);e.exports=function(e,t){t||(t={});var r,o,s,l,u,c,f,d,h,p,v,m=null==t.cutoff?.25:t.cutoff,g=null==t.radius?8:t.radius,y=t.channel||0;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");r=t.width,o=t.height,l=e,c=t.stride?t.stride:Math.floor(e.length/r/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(f=(d=e).getContext("2d"),r=d.width,o=d.height,l=(h=f.getImageData(0,0,r,o)).data,c=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(f=e,r=(d=e.canvas).width,o=d.height,l=(h=f.getImageData(0,0,r,o)).data,c=4):window.ImageData&&e instanceof window.ImageData&&(h=e,r=e.width,o=e.height,l=h.data,c=4);if(s=Math.max(r,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(u=l,l=Array(r*o),p=0,v=u.length;p-1?i(r):r}},68222:function(e,t,r){"use strict";var n=r(77575),i=r(68318),a=i("%Function.prototype.apply%"),o=i("%Function.prototype.call%"),s=i("%Reflect.apply%",!0)||n.call(o,a),l=i("%Object.getOwnPropertyDescriptor%",!0),u=i("%Object.defineProperty%",!0),c=i("%Math.max%");if(u)try{u({},"a",{value:1})}catch(d){u=null}e.exports=function(e){var t=s(n,o,arguments);return l&&u&&l(t,"length").configurable&&u(t,"length",{value:1+c(0,e.length-(arguments.length-1))}),t};var f=function(){return s(n,a,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},53435:function(e){e.exports=function(e,t,r){return tr?r:e:et?t:e}},6475:function(e,t,r){"use strict";var n=r(53435);function i(e,t){null==t&&(t=!0);var r=e[0],i=e[1],a=e[2],o=e[3];return null==o&&(o=t?1:255),t&&(r*=255,i*=255,a*=255,o*=255),16777216*(r=255&n(r,0,255))+((i=255&n(i,0,255))<<16)+((a=255&n(a,0,255))<<8)+(o=255&n(o,0,255))}e.exports=i,e.exports.to=i,e.exports.from=function(e,t){var r=(e=+e)>>>24,n=(16711680&e)>>>16,i=(65280&e)>>>8,a=255&e;return!1===t?[r,n,i,a]:[r/255,n/255,i/255,a/255]}},76857:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(36652),i=r(53435),a=r(90660);e.exports=function(e,t){"float"!==t&&t||(t="array"),"uint"===t&&(t="uint8"),"uint_clamped"===t&&(t="uint8_clamped");var r=new(a(t))(4),o="uint8"!==t&&"uint8_clamped"!==t;return e.length&&"string"!==typeof e||((e=n(e))[0]/=255,e[1]/=255,e[2]/=255),function(e){return e instanceof Uint8Array||e instanceof Uint8ClampedArray||!!(Array.isArray(e)&&(e[0]>1||0===e[0])&&(e[1]>1||0===e[1])&&(e[2]>1||0===e[2])&&(!e[3]||e[3]>1))}(e)?(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=null!=e[3]?e[3]:255,o&&(r[0]/=255,r[1]/=255,r[2]/=255,r[3]/=255),r):(o?(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=null!=e[3]?e[3]:1):(r[0]=i(Math.floor(255*e[0]),0,255),r[1]=i(Math.floor(255*e[1]),0,255),r[2]=i(Math.floor(255*e[2]),0,255),r[3]=null==e[3]?255:i(Math.floor(255*e[3]),0,255)),r)}},90736:function(e,t,r){"use strict";var n=r(76857),i=r(10973),a=r(46775);e.exports=function(e){var t,s,l=[],u=1;if("string"===typeof e)if(n[e])l=n[e].slice(),s="rgb";else if("transparent"===e)u=0,s="rgb",l=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var c=e.slice(1);u=1,(h=c.length)<=4?(l=[parseInt(c[0]+c[0],16),parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16)],4===h&&(u=parseInt(c[3]+c[3],16)/255)):(l=[parseInt(c[0]+c[1],16),parseInt(c[2]+c[3],16),parseInt(c[4]+c[5],16)],8===h&&(u=parseInt(c[6]+c[7],16)/255)),l[0]||(l[0]=0),l[1]||(l[1]=0),l[2]||(l[2]=0),s="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var f=t[1],d="rgb"===f;s=c=f.replace(/a$/,"");var h="cmyk"===c?4:"gray"===c?1:3;l=t[2].trim().split(/\s*,\s*/).map((function(e,t){if(/%$/.test(e))return t===h?parseFloat(e)/100:"rgb"===c?255*parseFloat(e)/100:parseFloat(e);if("h"===c[t]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==o[e])return o[e]}return parseFloat(e)})),f===c&&l.push(1),u=d||void 0===l[h]?1:l[h],l=l.slice(0,h)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(l=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),s=e.match(/([a-z])/gi).join("").toLowerCase());else if(isNaN(e))if(i(e)){var p=a(e.r,e.red,e.R,null);null!==p?(s="rgb",l=[p,a(e.g,e.green,e.G),a(e.b,e.blue,e.B)]):(s="hsl",l=[a(e.h,e.hue,e.H),a(e.s,e.saturation,e.S),a(e.l,e.lightness,e.L,e.b,e.brightness)]),u=a(e.a,e.alpha,e.opacity,1),null!=e.opacity&&(u/=100)}else(Array.isArray(e)||r.g.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(e))&&(l=[e[0],e[1],e[2]],s="rgb",u=4===e.length?e[3]:1);else s="rgb",l=[e>>>16,(65280&e)>>>8,255&e];return{space:s,values:l,alpha:u}};var o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},36652:function(e,t,r){"use strict";var n=r(90736),i=r(80009),a=r(53435);e.exports=function(e){var t,r=n(e);return r.space?((t=Array(3))[0]=a(r.values[0],0,255),t[1]=a(r.values[1],0,255),t[2]=a(r.values[2],0,255),"h"===r.space[0]&&(t=i.rgb(t)),t.push(a(r.alpha,0,1)),t):[]}},80009:function(e,t,r){"use strict";var n=r(6866);e.exports={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t,r,n,i,a,o=e[0]/360,s=e[1]/100,l=e[2]/100;if(0===s)return[a=255*l,a,a];t=2*l-(r=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var u=0;u<3;u++)(n=o+1/3*-(u-1))<0?n++:n>1&&n--,a=6*n<1?t+6*(r-t)*n:2*n<1?r:3*n<2?t+(r-t)*(2/3-n)*6:t,i[u]=255*a;return i}},n.hsl=function(e){var t,r,n=e[0]/255,i=e[1]/255,a=e[2]/255,o=Math.min(n,i,a),s=Math.max(n,i,a),l=s-o;return s===o?t=0:n===s?t=(i-a)/l:i===s?t=2+(a-n)/l:a===s&&(t=4+(n-i)/l),(t=Math.min(60*t,360))<0&&(t+=360),r=(o+s)/2,[t,100*(s===o?0:r<=.5?l/(s+o):l/(2-s-o)),100*r]}},6866:function(e){"use strict";e.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}},24138:function(e){e.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(e,t,r){"use strict";e.exports={parse:r(41004),stringify:r(53313)}},63625:function(e,t,r){"use strict";var n=r(40402);e.exports={isSize:function(e){return/^[\d\.]/.test(e)||-1!==e.indexOf("/")||-1!==n.indexOf(e)}}},41004:function(e,t,r){"use strict";var n=r(90448),i=r(38732),a=r(41901),o=r(15659),s=r(96209),l=r(83794),u=r(99011),c=r(63625).isSize;e.exports=d;var f=d.cache={};function d(e){if("string"!==typeof e)throw new Error("Font argument must be a string.");if(f[e])return f[e];if(""===e)throw new Error("Cannot parse an empty string.");if(-1!==a.indexOf(e))return f[e]={system:e};for(var t,r={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},d=u(e,/\s+/);t=d.shift();){if(-1!==i.indexOf(t))return["style","variant","weight","stretch"].forEach((function(e){r[e]=t})),f[e]=r;if(-1===s.indexOf(t))if("normal"!==t&&"small-caps"!==t)if(-1===l.indexOf(t)){if(-1===o.indexOf(t)){if(c(t)){var p=u(t,"/");if(r.size=p[0],null!=p[1]?r.lineHeight=h(p[1]):"/"===d[0]&&(d.shift(),r.lineHeight=h(d.shift())),!d.length)throw new Error("Missing required font-family.");return r.family=u(d.join(" "),/\s*,\s*/).map(n),f[e]=r}throw new Error("Unknown or unsupported font token: "+t)}r.weight=t}else r.stretch=t;else r.variant=t;else r.style=t}throw new Error("Missing required font-size.")}function h(e){var t=parseFloat(e);return t.toString()===e?t:e}},53313:function(e,t,r){"use strict";var n=r(71299),i=r(63625).isSize,a=v(r(38732)),o=v(r(41901)),s=v(r(15659)),l=v(r(96209)),u=v(r(83794)),c={normal:1,"small-caps":1},f={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},d="1rem",h="serif";function p(e,t){if(e&&!t[e]&&!a[e])throw Error("Unknown keyword `"+e+"`");return e}function v(e){for(var t={},r=0;rt?1:e>=t?0:NaN}r.d(t,{j2:function(){return n},Fp:function(){return o},J6:function(){return l},TS:function(){return u},VV:function(){return c},w6:function(){return f},Sm:function(){return d}});var i=function(e){var t;return 1===e.length&&(t=e,e=function(e,r){return n(t(e),r)}),{left:function(t,r,n,i){for(null==n&&(n=0),null==i&&(i=t.length);n>>1;e(t[a],r)<0?n=a+1:i=a}return n},right:function(t,r,n,i){for(null==n&&(n=0),null==i&&(i=t.length);n>>1;e(t[a],r)>0?i=a:n=a+1}return n}}}(n),a=(i.right,i.left,Array.prototype);function o(e,t){var r,n,i=e.length,a=-1;if(null==t){for(;++a=r)for(n=r;++an&&(n=r)}else for(;++a=r)for(n=r;++an&&(n=r);return n}function s(e){return null===e?NaN:+e}function l(e,t){var r,n=e.length,i=n,a=-1,o=0;if(null==t)for(;++a=0;)for(t=(n=e[i]).length;--t>=0;)r[--o]=n[t];return r}function c(e,t){var r,n,i=e.length,a=-1;if(null==t){for(;++a=r)for(n=r;++ar&&(n=r)}else for(;++a=r)for(n=r;++ar&&(n=r);return n}function f(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=0|Math.max(0,Math.ceil((t-e)/r)),a=new Array(i);++n=n.length)return null!=e&&r.sort(e),null!=t?t(r):r;for(var u,c,f,d=-1,h=r.length,p=n[i++],v=o(),m=s();++dn.length)return e;var a,o=i[r-1];return null!=t&&r>=n.length?a=e.entries():(a=[],e.each((function(e,t){a.push({key:t,values:s(e,r)})}))),null!=o?a.sort((function(e,t){return o(e.key,t.key)})):a}return r={object:function(e){return a(e,0,l,u)},map:function(e){return a(e,0,c,f)},entries:function(e){return s(a(e,0,c,f),0)},key:function(e){return n.push(e),r},sortKeys:function(e){return i[n.length-1]=e,r},sortValues:function(t){return e=t,r},rollup:function(e){return t=e,r}}}function l(){return{}}function u(e,t,r){e[t]=r}function c(){return o()}function f(e,t,r){e.set(t,r)}function d(){}var h=o.prototype;d.prototype=function(e,t){var r=new d;if(e instanceof d)e.each((function(e){r.add(e)}));else if(e){var n=-1,i=e.length;if(null==t)for(;++n=(a=(v+g)/2))?v=a:g=a,(c=r>=(o=(m+y)/2))?m=o:y=o,i=h,!(h=h[f=c<<1|u]))return i[f]=p,e;if(s=+e._x.call(null,h.data),l=+e._y.call(null,h.data),t===s&&r===l)return p.next=h,i?i[f]=p:e._root=p,e;do{i=i?i[f]=new Array(4):e._root=new Array(4),(u=t>=(a=(v+g)/2))?v=a:g=a,(c=r>=(o=(m+y)/2))?m=o:y=o}while((f=c<<1|u)===(d=(l>=o)<<1|s>=a));return i[d]=h,i[f]=p,e}function s(e,t,r,n,i){this.node=e,this.x0=t,this.y0=r,this.x1=n,this.y1=i}function l(e){return e[0]}function u(e){return e[1]}function c(e,t,r){var n=new f(null==t?l:t,null==r?u:r,NaN,NaN,NaN,NaN);return null==e?n:n.addAll(e)}function f(e,t,r,n,i,a){this._x=e,this._y=t,this._x0=r,this._y0=n,this._x1=i,this._y1=a,this._root=void 0}function d(e){for(var t={data:e.data},r=t;e=e.next;)r=r.next={data:e.data};return t}r.r(t),r.d(t,{forceCenter:function(){return n},forceCollide:function(){return m},forceLink:function(){return b},forceManyBody:function(){return K},forceRadial:function(){return $},forceSimulation:function(){return X},forceX:function(){return J},forceY:function(){return Q}});var h=c.prototype=f.prototype;function p(e){return e.x+e.vx}function v(e){return e.y+e.vy}function m(e){var t,r,n=1,o=1;function s(){for(var e,i,s,u,f,d,h,m=t.length,g=0;gu+p||if+p||os.index){var v=u-l.x-l.vx,m=f-l.y-l.vy,g=v*v+m*m;ge.r&&(e.r=e[t].r)}function u(){if(t){var n,i,a=t.length;for(r=new Array(a),n=0;nf&&(f=n),id&&(d=i));if(u>f||c>d)return this;for(this.cover(u,c).cover(f,d),r=0;re||e>=i||n>t||t>=a;)switch(s=(th||(a=u.y0)>p||(o=u.x1)=y)<<1|e>=g)&&(u=v[v.length-1],v[v.length-1]=v[v.length-1-c],v[v.length-1-c]=u)}else{var x=e-+this._x.call(null,m.data),b=t-+this._y.call(null,m.data),_=x*x+b*b;if(_=(s=(p+m)/2))?p=s:m=s,(c=o>=(l=(v+g)/2))?v=l:g=l,t=h,!(h=h[f=c<<1|u]))return this;if(!h.length)break;(t[f+1&3]||t[f+2&3]||t[f+3&3])&&(r=t,d=f)}for(;h.data!==e;)if(n=h,!(h=h.next))return this;return(i=h.next)&&delete h.next,n?(i?n.next=i:delete n.next,this):t?(i?t[f]=i:delete t[f],(h=t[0]||t[1]||t[2]||t[3])&&h===(t[3]||t[2]||t[1]||t[0])&&!h.length&&(r?r[d]=h:this._root=h),this):(this._root=i,this)},h.removeAll=function(e){for(var t=0,r=e.length;t=0&&(t=e.slice(r+1),e=e.slice(0,r)),e&&!n.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}}))),o=-1,s=a.length;if(!(arguments.length<2)){if(null!=t&&"function"!==typeof t)throw new Error("invalid callback: "+t);for(;++o0)for(var r,n,i=new Array(r),a=0;a=0&&t._call.call(null,e),t=t._next;--C}()}finally{C=0,function(){for(var e,t,r=A,n=1/0;r;)r._call?(n>r._time&&(n=r._time),e=r,r=r._next):(t=r._next,r._next=null,r=e?e._next=t:A=t);S=e,q(n)}(),D=0}}function H(){var e=z.now(),t=e-I;t>O&&(R-=t,I=e)}function q(e){C||(L&&(L=clearTimeout(L)),e-D>24?(e<1/0&&(L=setTimeout(V,e-z.now()-R)),P&&(P=clearInterval(P))):(P||(I=z.now(),P=setInterval(H,O)),C=1,F(V)))}function W(e){return e.x}function G(e){return e.y}j.prototype=U.prototype={constructor:j,restart:function(e,t,r){if("function"!==typeof e)throw new TypeError("callback is not a function");r=(null==r?N():+r)+(null==t?0:+t),this._next||S===this||(S?S._next=this:A=this,S=this),this._call=e,this._time=r,q()},stop:function(){this._call&&(this._call=null,this._time=1/0,q())}};var Y=10,Z=Math.PI*(3-Math.sqrt(5));function X(e){var t,r=1,n=.001,i=1-Math.pow(n,1/300),a=0,o=.6,s=(0,g.UI)(),l=U(c),u=E("tick","end");function c(){f(),u.call("tick",t),r1?(null==r?s.remove(e):s.set(e,h(r)),t):s.get(e)},find:function(t,r,n){var i,a,o,s,l,u=0,c=e.length;for(null==n?n=1/0:n*=n,u=0;u1?(u.on(e,r),t):u.on(e)}}}function K(){var e,t,r,n,o=i(-30),s=1,l=1/0,u=.81;function f(n){var i,a=e.length,o=c(e,W,G).visitAfter(h);for(r=n,i=0;i=l)){(e.data!==t||e.next)&&(0===f&&(p+=(f=a())*f),0===d&&(p+=(d=a())*d),p1?n[0]+n.slice(2):n,+e.slice(r+1)]}r.d(t,{WU:function(){return d},FF:function(){return v}});var i,a=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(e){if(!(t=a.exec(e)))throw new Error("invalid format: "+e);var t;return new s({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function s(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function l(e,t){var r=n(e,t);if(!r)return e+"";var i=r[0],a=r[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 u={"%":function(e,t){return(100*e).toFixed(t)},b:function(e){return Math.round(e).toString(2)},c:function(e){return e+""},d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:function(e,t){return e.toExponential(t)},f:function(e,t){return e.toFixed(t)},g:function(e,t){return e.toPrecision(t)},o:function(e){return Math.round(e).toString(8)},p:function(e,t){return l(100*e,t)},r:l,s:function(e,t){var r=n(e,t);if(!r)return e+"";var a=r[0],o=r[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")+n(e,Math.max(0,t+s-1))[0]},X:function(e){return Math.round(e).toString(16).toUpperCase()},x:function(e){return Math.round(e).toString(16)}};function c(e){return e}var f,d,h=Array.prototype.map,p=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function v(e){var t,r,a=void 0===e.grouping||void 0===e.thousands?c:(t=h.call(e.grouping,Number),r=e.thousands+"",function(e,n){for(var i=e.length,a=[],o=0,s=t[0],l=0;i>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(e.substring(i-=s,i+s)),!((l+=s+1)>n));)s=t[o=(o+1)%t.length];return a.reverse().join(r)}),s=void 0===e.currency?"":e.currency[0]+"",l=void 0===e.currency?"":e.currency[1]+"",f=void 0===e.decimal?".":e.decimal+"",d=void 0===e.numerals?c:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(h.call(e.numerals,String)),v=void 0===e.percent?"%":e.percent+"",m=void 0===e.minus?"-":e.minus+"",g=void 0===e.nan?"NaN":e.nan+"";function y(e){var t=(e=o(e)).fill,r=e.align,n=e.sign,c=e.symbol,h=e.zero,y=e.width,x=e.comma,b=e.precision,_=e.trim,w=e.type;"n"===w?(x=!0,w="g"):u[w]||(void 0===b&&(b=12),_=!0,w="g"),(h||"0"===t&&"="===r)&&(h=!0,t="0",r="=");var k="$"===c?s:"#"===c&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",T="$"===c?l:/[%p]/.test(w)?v:"",M=u[w],A=/[defgprs%]/.test(w);function S(e){var o,s,l,u=k,c=T;if("c"===w)c=M(e)+c,e="";else{var v=(e=+e)<0||1/e<0;if(e=isNaN(e)?g:M(Math.abs(e),b),_&&(e=function(e){e:for(var t,r=e.length,n=1,i=-1;n0&&(i=0)}return i>0?e.slice(0,i)+e.slice(t+1):e}(e)),v&&0===+e&&"+"!==n&&(v=!1),u=(v?"("===n?n:m:"-"===n||"("===n?"":n)+u,c=("s"===w?p[8+i/3]:"")+c+(v&&"("===n?")":""),A)for(o=-1,s=e.length;++o(l=e.charCodeAt(o))||l>57){c=(46===l?f+e.slice(o+1):e.slice(o))+c,e=e.slice(0,o);break}}x&&!h&&(e=a(e,1/0));var S=u.length+e.length+c.length,E=S>1)+u+e+c+E.slice(S);break;default:e=E+u+e+c}return d(e)}return b=void 0===b?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b)),S.toString=function(){return e+""},S}return{format:y,formatPrefix:function(e,t){var r,i=y(((e=o(e)).type="f",e)),a=3*Math.max(-8,Math.min(8,Math.floor((r=t,((r=n(Math.abs(r)))?r[1]:NaN)/3)))),s=Math.pow(10,-a),l=p[8+a/3];return function(e){return i(s*e)+l}}}}f=v({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),d=f.format,f.formatPrefix},65704:function(e,t,r){"use strict";r.r(t),r.d(t,{geoAiry:function(){return R},geoAiryRaw:function(){return D},geoAitoff:function(){return F},geoAitoffRaw:function(){return z},geoArmadillo:function(){return B},geoArmadilloRaw:function(){return N},geoAugust:function(){return U},geoAugustRaw:function(){return j},geoBaker:function(){return W},geoBakerRaw:function(){return q},geoBerghaus:function(){return Z},geoBerghausRaw:function(){return Y},geoBertin1953:function(){return re},geoBertin1953Raw:function(){return te},geoBoggs:function(){return ce},geoBoggsRaw:function(){return ue},geoBonne:function(){return ve},geoBonneRaw:function(){return pe},geoBottomley:function(){return ge},geoBottomleyRaw:function(){return me},geoBromley:function(){return xe},geoBromleyRaw:function(){return ye},geoChamberlin:function(){return Ee},geoChamberlinAfrica:function(){return Se},geoChamberlinRaw:function(){return Me},geoCollignon:function(){return Le},geoCollignonRaw:function(){return Ce},geoCraig:function(){return Oe},geoCraigRaw:function(){return Pe},geoCraster:function(){return Re},geoCrasterRaw:function(){return De},geoCylindricalEqualArea:function(){return Fe},geoCylindricalEqualAreaRaw:function(){return ze},geoCylindricalStereographic:function(){return Be},geoCylindricalStereographicRaw:function(){return Ne},geoEckert1:function(){return Ue},geoEckert1Raw:function(){return je},geoEckert2:function(){return He},geoEckert2Raw:function(){return Ve},geoEckert3:function(){return We},geoEckert3Raw:function(){return qe},geoEckert4:function(){return Ye},geoEckert4Raw:function(){return Ge},geoEckert5:function(){return Xe},geoEckert5Raw:function(){return Ze},geoEckert6:function(){return $e},geoEckert6Raw:function(){return Ke},geoEisenlohr:function(){return et},geoEisenlohrRaw:function(){return Qe},geoFahey:function(){return nt},geoFaheyRaw:function(){return rt},geoFoucaut:function(){return at},geoFoucautRaw:function(){return it},geoFoucautSinusoidal:function(){return st},geoFoucautSinusoidalRaw:function(){return ot},geoGilbert:function(){return dt},geoGingery:function(){return mt},geoGingeryRaw:function(){return ht},geoGinzburg4:function(){return xt},geoGinzburg4Raw:function(){return yt},geoGinzburg5:function(){return _t},geoGinzburg5Raw:function(){return bt},geoGinzburg6:function(){return kt},geoGinzburg6Raw:function(){return wt},geoGinzburg8:function(){return Mt},geoGinzburg8Raw:function(){return Tt},geoGinzburg9:function(){return St},geoGinzburg9Raw:function(){return At},geoGringorten:function(){return Lt},geoGringortenQuincuncial:function(){return ai},geoGringortenRaw:function(){return Ct},geoGuyou:function(){return Dt},geoGuyouRaw:function(){return It},geoHammer:function(){return J},geoHammerRaw:function(){return K},geoHammerRetroazimuthal:function(){return Nt},geoHammerRetroazimuthalRaw:function(){return zt},geoHealpix:function(){return Yt},geoHealpixRaw:function(){return Ht},geoHill:function(){return Xt},geoHillRaw:function(){return Zt},geoHomolosine:function(){return tr},geoHomolosineRaw:function(){return er},geoHufnagel:function(){return nr},geoHufnagelRaw:function(){return rr},geoHyperelliptical:function(){return sr},geoHyperellipticalRaw:function(){return or},geoInterrupt:function(){return cr},geoInterruptedBoggs:function(){return dr},geoInterruptedHomolosine:function(){return pr},geoInterruptedMollweide:function(){return mr},geoInterruptedMollweideHemispheres:function(){return yr},geoInterruptedQuarticAuthalic:function(){return fn},geoInterruptedSinuMollweide:function(){return br},geoInterruptedSinusoidal:function(){return wr},geoKavrayskiy7:function(){return Tr},geoKavrayskiy7Raw:function(){return kr},geoLagrange:function(){return Ar},geoLagrangeRaw:function(){return Mr},geoLarrivee:function(){return Cr},geoLarriveeRaw:function(){return Er},geoLaskowski:function(){return Pr},geoLaskowskiRaw:function(){return Lr},geoLittrow:function(){return Ir},geoLittrowRaw:function(){return Or},geoLoximuthal:function(){return Rr},geoLoximuthalRaw:function(){return Dr},geoMiller:function(){return Fr},geoMillerRaw:function(){return zr},geoModifiedStereographic:function(){return Xr},geoModifiedStereographicAlaska:function(){return qr},geoModifiedStereographicGs48:function(){return Wr},geoModifiedStereographicGs50:function(){return Gr},geoModifiedStereographicLee:function(){return Zr},geoModifiedStereographicMiller:function(){return Yr},geoModifiedStereographicRaw:function(){return Nr},geoMollweide:function(){return oe},geoMollweideRaw:function(){return ae},geoMtFlatPolarParabolic:function(){return Qr},geoMtFlatPolarParabolicRaw:function(){return Jr},geoMtFlatPolarQuartic:function(){return tn},geoMtFlatPolarQuarticRaw:function(){return en},geoMtFlatPolarSinusoidal:function(){return nn},geoMtFlatPolarSinusoidalRaw:function(){return rn},geoNaturalEarth:function(){return an.Z},geoNaturalEarth2:function(){return sn},geoNaturalEarth2Raw:function(){return on},geoNaturalEarthRaw:function(){return an.K},geoNellHammer:function(){return un},geoNellHammerRaw:function(){return ln},geoNicolosi:function(){return hn},geoNicolosiRaw:function(){return dn},geoPatterson:function(){return Tn},geoPattersonRaw:function(){return kn},geoPeirceQuincuncial:function(){return oi},geoPierceQuincuncial:function(){return oi},geoPolyconic:function(){return An},geoPolyconicRaw:function(){return Mn},geoPolyhedral:function(){return In},geoPolyhedralButterfly:function(){return jn},geoPolyhedralCollignon:function(){return Hn},geoPolyhedralWaterman:function(){return qn},geoProject:function(){return Xn},geoQuantize:function(){return si},geoQuincuncial:function(){return ii},geoRectangularPolyconic:function(){return ui},geoRectangularPolyconicRaw:function(){return li},geoRobinson:function(){return di},geoRobinsonRaw:function(){return fi},geoSatellite:function(){return pi},geoSatelliteRaw:function(){return hi},geoSinuMollweide:function(){return Qt},geoSinuMollweideRaw:function(){return Jt},geoSinusoidal:function(){return he},geoSinusoidalRaw:function(){return de},geoStitch:function(){return Ii},geoTimes:function(){return Ri},geoTimesRaw:function(){return Di},geoTwoPointAzimuthal:function(){return Bi},geoTwoPointAzimuthalRaw:function(){return Fi},geoTwoPointAzimuthalUsa:function(){return Ni},geoTwoPointEquidistant:function(){return Vi},geoTwoPointEquidistantRaw:function(){return ji},geoTwoPointEquidistantUsa:function(){return Ui},geoVanDerGrinten:function(){return qi},geoVanDerGrinten2:function(){return Gi},geoVanDerGrinten2Raw:function(){return Wi},geoVanDerGrinten3:function(){return Zi},geoVanDerGrinten3Raw:function(){return Yi},geoVanDerGrinten4:function(){return Ki},geoVanDerGrinten4Raw:function(){return Xi},geoVanDerGrintenRaw:function(){return Hi},geoWagner:function(){return Ji},geoWagner4:function(){return na},geoWagner4Raw:function(){return ra},geoWagner6:function(){return aa},geoWagner6Raw:function(){return ia},geoWagner7:function(){return Qi},geoWagnerRaw:function(){return $i},geoWiechel:function(){return sa},geoWiechelRaw:function(){return oa},geoWinkel3:function(){return ua},geoWinkel3Raw:function(){return la}});var n=r(15002),i=Math.abs,a=Math.atan,o=Math.atan2,s=(Math.ceil,Math.cos),l=Math.exp,u=Math.floor,c=Math.log,f=Math.max,d=Math.min,h=Math.pow,p=Math.round,v=Math.sign||function(e){return e>0?1:e<0?-1:0},m=Math.sin,g=Math.tan,y=1e-6,x=1e-12,b=Math.PI,_=b/2,w=b/4,k=Math.SQRT1_2,T=P(2),M=P(b),A=2*b,S=180/b,E=b/180;function C(e){return e>1?_:e<-1?-_:Math.asin(e)}function L(e){return e>1?0:e<-1?b:Math.acos(e)}function P(e){return e>0?Math.sqrt(e):0}function O(e){return(l(e)-l(-e))/2}function I(e){return(l(e)+l(-e))/2}function D(e){var t=g(e/2),r=2*c(s(e/2))/(t*t);function n(e,t){var n=s(e),i=s(t),a=m(t),o=i*n,l=-((1-o?c((1+o)/2)/(1-o):-.5)+r/(1+o));return[l*i*m(e),l*a]}return n.invert=function(t,n){var a,l=P(t*t+n*n),u=-e/2,f=50;if(!l)return[0,0];do{var d=u/2,h=s(d),p=m(d),v=p/h,g=-c(i(h));u-=a=(2/v*g-r*v-l)/(-g/(p*p)+1-r/(2*h*h))*(h<0?.7:1)}while(i(a)>y&&--f>0);var x=m(u);return[o(t*x,l*s(u)),C(n*x/l)]},n}function R(){var e=_,t=(0,n.r)(D),r=t(e);return r.radius=function(r){return arguments.length?t(e=r*E):e*S},r.scale(179.976).clipAngle(147)}function z(e,t){var r=s(t),n=function(e){return e?e/Math.sin(e):1}(L(r*s(e/=2)));return[2*r*m(e)*n,m(t)*n]}function F(){return(0,n.Z)(z).scale(152.63)}function N(e){var t=m(e),r=s(e),n=e>=0?1:-1,a=g(n*e),l=(1+t-r)/2;function u(e,i){var u=s(i),c=s(e/=2);return[(1+u)*m(e),(n*i>-o(c,a)-.001?0:10*-n)+l+m(i)*r-(1+u)*t*c]}return u.invert=function(e,u){var c=0,f=0,d=50;do{var h=s(c),p=m(c),v=s(f),g=m(f),x=1+v,b=x*p-e,_=l+g*r-x*t*h-u,w=x*h/2,k=-p*g,T=t*x*p/2,M=r*v+t*h*g,A=k*T-M*w,S=(_*k-b*M)/A/2,E=(b*T-_*w)/A;i(E)>2&&(E/=2),c-=S,f-=E}while((i(S)>y||i(E)>y)&&--d>0);return n*f>-o(s(c),a)-.001?[2*c,f]:null},u}function B(){var e=20*E,t=e>=0?1:-1,r=g(t*e),i=(0,n.r)(N),a=i(e),l=a.stream;return a.parallel=function(n){return arguments.length?(r=g((t=(e=n*E)>=0?1:-1)*e),i(e)):e*S},a.stream=function(n){var i=a.rotate(),u=l(n),c=(a.rotate([0,0]),l(n)),f=a.precision();return a.rotate(i),u.sphere=function(){c.polygonStart(),c.lineStart();for(var n=-180*t;t*n<180;n+=90*t)c.point(n,90*t);if(e)for(;t*(n-=3*t*f)>=-180;)c.point(n,t*-o(s(n*E/2),r)*S);c.lineEnd(),c.polygonEnd()},u},a.scale(218.695).center([0,28.0974])}function j(e,t){var r=g(t/2),n=P(1-r*r),i=1+n*s(e/=2),a=m(e)*n/i,o=r/i,l=a*a,u=o*o;return[4/3*a*(3+l-3*u),4/3*o*(3+3*l-u)]}function U(){return(0,n.Z)(j).scale(66.1603)}z.invert=function(e,t){if(!(e*e+4*t*t>b*b+y)){var r=e,n=t,a=25;do{var o,l=m(r),u=m(r/2),c=s(r/2),f=m(n),d=s(n),h=m(2*n),p=f*f,v=d*d,g=u*u,x=1-v*c*c,_=x?L(d*c)*P(o=1/x):o=0,w=2*_*d*u-e,k=_*f-t,T=o*(v*g+_*d*c*p),M=o*(.5*l*h-2*_*f*u),A=.25*o*(h*u-_*f*v*l),S=o*(p*c+_*g*d),E=M*A-S*T;if(!E)break;var C=(k*M-w*S)/E,O=(w*A-k*T)/E;r-=C,n-=O}while((i(C)>y||i(O)>y)&&--a>0);return[r,n]}},j.invert=function(e,t){if(t*=3/8,!(e*=3/8)&&i(t)>1)return null;var r=1+e*e+t*t,n=P((r-P(r*r-4*t*t))/2),a=C(n)/3,l=n?function(e){return c(e+P(e*e-1))}(i(t/n))/3:function(e){return c(e+P(e*e+1))}(i(e))/3,u=s(a),f=I(l),d=f*f-u*u;return[2*v(e)*o(O(l)*u,.25-d),2*v(t)*o(f*m(a),.25+d)]};var V=P(8),H=c(1+T);function q(e,t){var r=i(t);return rx&&--u>0);return[e/(s(o)*(V-1/m(o))),v(t)*o]};var G=r(17889);function Y(e){var t=2*b/e;function r(e,r){var n=(0,G.N)(e,r);if(i(e)>_){var a=o(n[1],n[0]),l=P(n[0]*n[0]+n[1]*n[1]),u=t*p((a-_)/t)+_,c=o(m(a-=u),2-s(a));a=u+C(b/l*m(c))-c,n[0]=l*s(a),n[1]=l*m(a)}return n}return r.invert=function(e,r){var n=P(e*e+r*r);if(n>_){var i=o(r,e),l=t*p((i-_)/t)+_,u=i>l?-1:1,c=n*s(l-i),f=1/g(u*L((c-b)/P(b*(b-2*c)+n*n)));i=l+2*a((f+u*P(f*f-3))/3),e=n*s(i),r=n*m(i)}return G.N.invert(e,r)},r}function Z(){var e=5,t=(0,n.r)(Y),r=t(e),i=r.stream,a=.01,l=-s(a*E),u=m(a*E);return r.lobes=function(r){return arguments.length?t(e=+r):e},r.stream=function(t){var n=r.rotate(),c=i(t),f=(r.rotate([0,0]),i(t));return r.rotate(n),c.sphere=function(){f.polygonStart(),f.lineStart();for(var t=0,r=360/e,n=2*b/e,i=90-180/e,c=_;t0&&i(n)>y);return s<0?NaN:r}function ee(e,t,r){return void 0===t&&(t=40),void 0===r&&(r=x),function(n,a,o,s){var l,u,c;o=void 0===o?0:+o,s=void 0===s?0:+s;for(var f=0;fl)o-=u/=2,s-=c/=2;else{l=v;var m=(o>0?-1:1)*r,g=(s>0?-1:1)*r,y=e(o+m,s),x=e(o,s+g),b=(y[0]-d[0])/m,_=(y[1]-d[1])/m,w=(x[0]-d[0])/g,k=(x[1]-d[1])/g,T=k*b-_*w,M=(i(T)<.5?.5:1)/T;if(o+=u=(p*w-h*k)*M,s+=c=(h*_-p*b)*M,i(u)0&&(i[1]*=1+a/1.5*i[0]*i[0]),i}return t.invert=ee(t),t}function re(){return(0,n.Z)(te()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function ne(e,t){var r,n=e*m(t),a=30;do{t-=r=(t+m(t)-n)/(1+s(t))}while(i(r)>y&&--a>0);return t/2}function ie(e,t,r){function n(n,i){return[e*n*s(i=ne(r,i)),t*m(i)]}return n.invert=function(n,i){return i=C(i/t),[n/(e*s(i)),C((2*i+m(2*i))/r)]},n}$.invert=function(e,t){var r=2*C(t/2);return[e*s(r/2)/s(r),r]};var ae=ie(T/_,T,b);function oe(){return(0,n.Z)(ae).scale(169.529)}var se=2.00276,le=1.11072;function ue(e,t){var r=ne(b,t);return[se*e/(1/s(t)+le/s(r)),(t+T*m(r))/se]}function ce(){return(0,n.Z)(ue).scale(160.857)}function fe(e){var t=0,r=(0,n.r)(e),i=r(t);return i.parallel=function(e){return arguments.length?r(t=e*E):t*S},i}function de(e,t){return[e*s(t),t]}function he(){return(0,n.Z)(de).scale(152.63)}function pe(e){if(!e)return de;var t=1/g(e);function r(r,n){var i=t+e-n,a=i?r*s(n)/i:i;return[i*m(a),t-i*s(a)]}return r.invert=function(r,n){var i=P(r*r+(n=t-n)*n),a=t+e-i;return[i/s(a)*o(r,n),a]},r}function ve(){return fe(pe).scale(123.082).center([0,26.1441]).parallel(45)}function me(e){function t(t,r){var n=_-r,i=n?t*e*m(n)/n:n;return[n*m(i)/e,_-n*s(i)]}return t.invert=function(t,r){var n=t*e,i=_-r,a=P(n*n+i*i),s=o(n,i);return[(a?a/m(a):1)*s/e,_-a]},t}function ge(){var e=.5,t=(0,n.r)(me),r=t(e);return r.fraction=function(r){return arguments.length?t(e=+r):e},r.scale(158.837)}ue.invert=function(e,t){var r,n,a=se*t,o=t<0?-w:w,l=25;do{n=a-T*m(o),o-=r=(m(2*o)+2*o-b*m(n))/(2*s(2*o)+2+b*s(n)*T*s(o))}while(i(r)>y&&--l>0);return n=a-T*m(o),[e*(1/s(n)+le/s(o))/se,n]},de.invert=function(e,t){return[e/s(t),t]};var ye=ie(1,4/b,b);function xe(){return(0,n.Z)(ye).scale(152.63)}var be=r(66624),_e=r(49386);function we(e,t,r,n,a,l){var u,c=s(l);if(i(e)>1||i(l)>1)u=L(r*a+t*n*c);else{var f=m(e/2),d=m(l/2);u=2*C(P(f*f+t*n*d*d))}return i(u)>y?[u,o(n*m(l),t*a-r*n*c)]:[0,0]}function ke(e,t,r){return L((e*e+t*t-r*r)/(2*e*t))}function Te(e){return e-2*b*u((e+b)/(2*b))}function Me(e,t,r){for(var n,i=[[e[0],e[1],m(e[1]),s(e[1])],[t[0],t[1],m(t[1]),s(t[1])],[r[0],r[1],m(r[1]),s(r[1])]],a=i[2],o=0;o<3;++o,a=n)n=i[o],a.v=we(n[1]-a[1],a[3],a[2],n[3],n[2],n[0]-a[0]),a.point=[0,0];var l=ke(i[0].v[0],i[2].v[0],i[1].v[0]),u=ke(i[0].v[0],i[1].v[0],i[2].v[0]),c=b-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]*m(l))];return function(e,t){var r,n=m(t),a=s(t),o=new Array(3);for(r=0;r<3;++r){var l=i[r];if(o[r]=we(t-l[1],l[3],l[2],a,n,e-l[0]),!o[r][0])return l.point;o[r][1]=Te(o[r][1]-l.v[1])}var d=f.slice();for(r=0;r<3;++r){var h=2==r?0:r+1,p=ke(i[r].v[0],o[r][0],o[h][0]);o[r][1]<0&&(p=-p),r?1==r?(p=u-p,d[0]-=o[r][0]*s(p),d[1]-=o[r][0]*m(p)):(p=c-p,d[0]+=o[r][0]*s(p),d[1]+=o[r][0]*m(p)):(d[0]+=o[r][0]*s(p),d[1]-=o[r][0]*m(p))}return d[0]/=3,d[1]/=3,d}}function Ae(e){return e[0]*=E,e[1]*=E,e}function Se(){return Ee([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Ee(e,t,r){var i=(0,be.Z)({type:"MultiPoint",coordinates:[e,t,r]}),a=[-i[0],-i[1]],o=(0,_e.Z)(a),s=Me(Ae(o(e)),Ae(o(t)),Ae(o(r)));s.invert=ee(s);var l=(0,n.Z)(s).rotate(a),u=l.center;return delete l.rotate,l.center=function(e){return arguments.length?u(o(e)):o.invert(u())},l.clipAngle(90)}function Ce(e,t){var r=P(1-m(t));return[2/M*e*r,M*(1-r)]}function Le(){return(0,n.Z)(Ce).scale(95.6464).center([0,30])}function Pe(e){var t=g(e);function r(e,r){return[e,(e?e/m(e):1)*(m(r)*s(e)-t*s(r))]}return r.invert=t?function(e,r){e&&(r*=m(e)/e);var n=s(e);return[e,2*o(P(n*n+t*t-r*r)-n,t-r)]}:function(e,t){return[e,C(e?t*g(e)/e:t)]},r}function Oe(){return fe(Pe).scale(249.828).clipAngle(90)}Ce.invert=function(e,t){var r=(r=t/M-1)*r;return[r>0?e*P(b/r)/2:0,C(1-r)]};var Ie=P(3);function De(e,t){return[Ie*e*(2*s(2*t/3)-1)/M,Ie*M*m(t/3)]}function Re(){return(0,n.Z)(De).scale(156.19)}function ze(e){var t=s(e);function r(e,r){return[e*t,m(r)/t]}return r.invert=function(e,r){return[e/t,C(r*t)]},r}function Fe(){return fe(ze).parallel(38.58).scale(195.044)}function Ne(e){var t=s(e);function r(e,r){return[e*t,(1+t)*g(r/2)]}return r.invert=function(e,r){return[e/t,2*a(r/(1+t))]},r}function Be(){return fe(Ne).scale(124.75)}function je(e,t){var r=P(8/(3*b));return[r*e*(1-i(t)/b),r*t]}function Ue(){return(0,n.Z)(je).scale(165.664)}function Ve(e,t){var r=P(4-3*m(i(t)));return[2/P(6*b)*e*r,v(t)*P(2*b/3)*(2-r)]}function He(){return(0,n.Z)(Ve).scale(165.664)}function qe(e,t){var r=P(b*(4+b));return[2/r*e*(1+P(1-4*t*t/(b*b))),4/r*t]}function We(){return(0,n.Z)(qe).scale(180.739)}function Ge(e,t){var r=(2+_)*m(t);t/=2;for(var n=0,a=1/0;n<10&&i(a)>y;n++){var o=s(t);t-=a=(t+m(t)*(o+2)-r)/(2*o*(1+o))}return[2/P(b*(4+b))*e*(1+s(t)),2*P(b/(4+b))*m(t)]}function Ye(){return(0,n.Z)(Ge).scale(180.739)}function Ze(e,t){return[e*(1+s(t))/P(2+b),2*t/P(2+b)]}function Xe(){return(0,n.Z)(Ze).scale(173.044)}function Ke(e,t){for(var r=(1+_)*m(t),n=0,a=1/0;n<10&&i(a)>y;n++)t-=a=(t+m(t)-r)/(1+s(t));return r=P(2+b),[e*(1+s(t))/r,2*t/r]}function $e(){return(0,n.Z)(Ke).scale(173.044)}De.invert=function(e,t){var r=3*C(t/(Ie*M));return[M*e/(Ie*(2*s(2*r/3)-1)),r]},je.invert=function(e,t){var r=P(8/(3*b)),n=t/r;return[e/(r*(1-i(n)/b)),n]},Ve.invert=function(e,t){var r=2-i(t)/P(2*b/3);return[e*P(6*b)/(2*r),v(t)*C((4-r*r)/3)]},qe.invert=function(e,t){var r=P(b*(4+b))/2;return[e*r/(1+P(1-t*t*(4+b)/(4*b))),t*r/2]},Ge.invert=function(e,t){var r=t*P((4+b)/b)/2,n=C(r),i=s(n);return[e/(2/P(b*(4+b))*(1+i)),C((n+r*(i+2))/(2+_))]},Ze.invert=function(e,t){var r=P(2+b),n=t*r/2;return[r*e/(1+s(n)),n]},Ke.invert=function(e,t){var r=1+_,n=P(r/2);return[2*e*n/(1+s(t*=n)),C((t+m(t))/r)]};var Je=3+2*T;function Qe(e,t){var r=m(e/=2),n=s(e),i=P(s(t)),o=s(t/=2),l=m(t)/(o+T*n*i),u=P(2/(1+l*l)),f=P((T*o+(n+r)*i)/(T*o+(n-r)*i));return[Je*(u*(f-1/f)-2*c(f)),Je*(u*l*(f+1/f)-2*a(l))]}function et(){return(0,n.Z)(Qe).scale(62.5271)}Qe.invert=function(e,t){if(!(r=j.invert(e/1.2,1.065*t)))return null;var r,n=r[0],o=r[1],l=20;e/=Je,t/=Je;do{var u=n/2,h=o/2,p=m(u),v=s(u),g=m(h),x=s(h),b=s(o),w=P(b),M=g/(x+T*v*w),A=M*M,S=P(2/(1+A)),E=(T*x+(v+p)*w)/(T*x+(v-p)*w),C=P(E),L=C-1/C,O=C+1/C,I=S*L-2*c(C)-e,D=S*M*O-2*a(M)-t,R=g&&k*w*p*A/g,z=(T*v*x+w)/(2*(x+T*v*w)*(x+T*v*w)*w),F=-.5*M*S*S*S,N=F*R,B=F*z,U=(U=2*x+T*w*(v-p))*U*C,V=(T*v*x*w+b)/U,H=-T*p*g/(w*U),q=L*N-2*V/C+S*(V+V/E),W=L*B-2*H/C+S*(H+H/E),G=M*O*N-2*R/(1+A)+S*O*R+S*M*(V-V/E),Y=M*O*B-2*z/(1+A)+S*O*z+S*M*(H-H/E),Z=W*G-Y*q;if(!Z)break;var X=(D*W-I*Y)/Z,K=(I*G-D*q)/Z;n-=X,o=f(-_,d(_,o-K))}while((i(X)>y||i(K)>y)&&--l>0);return i(i(o)-_)n){var d=P(f),h=o(c,u),v=r*p(h/r),g=h-v,x=e*s(g),w=(e*m(g)-g*m(x))/(_-x),k=pt(g,w),T=(b-e)/vt(k,x,b);u=d;var M,A=50;do{u-=M=(e+vt(k,x,u)*T-d)/(k(u)*T)}while(i(M)>y&&--A>0);c=g*m(u),u<_&&(c-=w*(u-_));var S=m(v),E=s(v);l[0]=u*E-c*S,l[1]=u*S+c*E}return l}return a.invert=function(t,a){var l=t*t+a*a;if(l>n){var u=P(l),c=o(a,t),f=r*p(c/r),d=c-f;t=u*s(d),a=u*m(d);for(var h=t-_,v=m(t),g=a/v,y=t<_?1/0:0,w=10;;){var k=e*m(g),T=e*s(g),M=m(T),A=_-T,S=(k-g*M)/A,E=pt(g,S);if(i(y)y||i(h)>y)&&--g>0);return[p,v]},c}var yt=gt(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function xt(){return(0,n.Z)(yt).scale(149.995)}var bt=gt(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function _t(){return(0,n.Z)(bt).scale(153.93)}var wt=gt(5/6*b,-.62636,-.0344,0,1.3493,-.05524,0,.045);function kt(){return(0,n.Z)(wt).scale(130.945)}function Tt(e,t){var r=e*e,n=t*t;return[e*(1-.162388*n)*(.87-952426e-9*r*r),t*(1+n/12)]}function Mt(){return(0,n.Z)(Tt).scale(131.747)}Tt.invert=function(e,t){var r,n=e,a=t,o=50;do{var s=a*a;a-=r=(a*(1+s/12)-t)/(1+s/4)}while(i(r)>y&&--o>0);o=50,e/=1-.162388*s;do{var l=(l=n*n)*l;n-=r=(n*(.87-952426e-9*l)-e)/(.87-.00476213*l)}while(i(r)>y&&--o>0);return[n,a]};var At=gt(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function St(){return(0,n.Z)(At).scale(131.087)}function Et(e){var t=e(_,0)[0]-e(-_,0)[0];function r(r,n){var i=r>0?-.5:.5,a=e(r+i*b,n);return a[0]-=i*t,a}return e.invert&&(r.invert=function(r,n){var i=r>0?-.5:.5,a=e.invert(r+i*t,n),o=a[0]-i*b;return o<-b?o+=2*b:o>b&&(o-=2*b),a[0]=o,a}),r}function Ct(e,t){var r=v(e),n=v(t),a=s(t),l=s(e)*a,u=m(e)*a,c=m(n*t);e=i(o(u,c)),t=C(l),i(e-_)>y&&(e%=_);var f=function(e,t){if(t===_)return[0,0];var r,n,a=m(t),o=a*a,l=o*o,u=1+l,c=1+3*l,f=1-l,d=C(1/P(u)),h=f+o*u*d,p=(1-a)/h,v=P(p),g=p*u,x=P(g),w=v*f;if(0===e)return[0,-(w+o*x)];var k,T=s(t),M=1/T,A=2*a*T,S=(-3*o+d*c)*A,E=(-h*T-(1-a)*S)/(h*h),L=o*u*E+p*c*A,O=-M*A,I=-M*L,D=-2*M*(f*(.5*E/v)-2*o*v*A),R=4*e/b;if(e>.222*b||t.175*b){if(r=(w+o*P(g*(1+l)-w*w))/(1+l),e>b/4)return[r,r];var z=r,F=.5*r;r=.5*(F+z),n=50;do{var N=r*(D+O*P(g-r*r))+I*C(r/x)-R;if(!N)break;N<0?F=r:z=r,r=.5*(F+z)}while(i(z-F)>y&&--n>0)}else{r=y,n=25;do{var B=r*r,j=P(g-B),U=D+O*j,V=r*U+I*C(r/x)-R;r-=k=j?V/(U+(I-O*B)/j):0}while(i(k)>y&&--n>0)}return[r,-w-o*P(g-r*r)]}(e>b/4?_-e:e,t);return e>b/4&&(c=f[0],f[0]=-f[1],f[1]=-c),f[0]*=r,f[1]*=-n,f}function Lt(){return(0,n.Z)(Et(Ct)).scale(239.75)}function Pt(e,t){var r,n,o,u,c,f;if(t=1-y)return r=(1-t)/4,o=1/(n=I(e)),[(u=((f=l(2*(f=e)))-1)/(f+1))+r*((c=n*O(e))-e)/(n*n),o-r*u*o*(c-e),o+r*u*o*(c+e),2*a(l(e))-_+r*(c-e)/n];var d=[1,0,0,0,0,0,0,0,0],h=[P(t),0,0,0,0,0,0,0,0],p=0;for(n=P(1-t),c=1;i(h[p]/d[p])>y&&p<8;)r=d[p++],h[p]=(r-n)/2,d[p]=(r+n)/2,n=P(r*n),c*=2;o=c*d[p]*e;do{o=(C(u=h[p]*m(n=o)/d[p])+o)/2}while(--p);return[m(o),u=s(o),u/s(o-n),o]}function Ot(e,t){if(!t)return e;if(1===t)return c(g(e/2+w));for(var r=1,n=P(1-t),o=P(t),s=0;i(o)>y;s++){if(e%b){var l=a(n*g(e)/r);l<0&&(l+=b),e+=l+~~(e/b)*b}else e+=e;o=(r+n)/2,n=P(r*n),o=((r=o)-n)/2}return e/(h(2,s)*r)}function It(e,t){var r=(T-1)/(T+1),n=P(1-r*r),u=Ot(_,n*n),f=c(g(b/4+i(t)/2)),d=l(-1*f)/P(r),h=function(e,t){var r=e*e,n=t+1,i=1-r-t*t;return[.5*((e>=0?_:-_)-o(i,2*e)),-.25*c(i*i+4*r)+.5*c(n*n+r)]}(d*s(-1*e),d*m(-1*e)),p=function(e,t,r){var n=i(e),o=O(i(t));if(n){var s=1/m(n),l=1/(g(n)*g(n)),u=-(l+r*(o*o*s*s)-1+r),c=(-u+P(u*u-(r-1)*l*4))/2;return[Ot(a(1/P(c)),r)*v(e),Ot(a(P((c/l-1)/r)),1-r)*v(t)]}return[0,Ot(a(o),1-r)*v(t)]}(h[0],h[1],n*n);return[-p[1],(t>=0?1:-1)*(.5*u-p[0])]}function Dt(){return(0,n.Z)(Et(It)).scale(151.496)}Ct.invert=function(e,t){i(e)>1&&(e=2*v(e)-e),i(t)>1&&(t=2*v(t)-t);var r=v(e),n=v(t),a=-r*e,l=-n*t,u=l/a<1,c=function(e,t){for(var r=0,n=1,a=.5,o=50;;){var l=a*a,u=P(a),c=C(1/P(1+l)),f=1-l+a*(1+l)*c,d=(1-u)/f,h=P(d),p=d*(1+l),v=h*(1-l),m=P(p-e*e),g=t+v+a*m;if(i(n-r)0?r=a:n=a,a=.5*(r+n)}if(!o)return null;var y=C(u),_=s(y),w=1/_,k=2*u*_,T=(-f*_-(-3*a+c*(1+3*l))*k*(1-u))/(f*f),M=.5*T/h,A=(1-l)*M-2*a*h*k;return[b/4*(e*(-2*w*A+-w*k*m)+-w*(a*(1+l)*T+d*(1+3*l)*k)*C(e/P(p))),y]}(u?l:a,u?a:l),f=c[0],d=c[1],h=s(d);return u&&(f=-_-f),[r*(o(m(f)*h,-m(d))+b),n*C(s(f)*h)]},It.invert=function(e,t){var r=(T-1)/(T+1),n=P(1-r*r),i=function(e,t,r){var n,i,a;return e?(n=Pt(e,r),t?(a=(i=Pt(t,1-r))[1]*i[1]+r*n[0]*n[0]*i[0]*i[0],[[n[0]*i[2]/a,n[1]*n[2]*i[0]*i[1]/a],[n[1]*i[1]/a,-n[0]*n[2]*i[0]*i[2]/a],[n[2]*i[1]*i[2]/a,-r*n[0]*n[1]*i[0]/a]]):[[n[0],0],[n[1],0],[n[2],0]]):[[0,(i=Pt(t,1-r))[0]/i[1]],[1/i[1],0],[i[2]/i[1],0]]}(.5*Ot(_,n*n)-t,-e,n*n),s=function(e,t){var r=t[0]*t[0]+t[1]*t[1];return[(e[0]*t[0]+e[1]*t[1])/r,(e[1]*t[0]-e[0]*t[1])/r]}(i[0],i[1]);return[o(s[1],s[0])/-1,2*a(l(-.5*c(r*s[0]*s[0]+r*s[1]*s[1])))-_]};var Rt=r(7613);function zt(e){var t=m(e),r=s(e),n=Ft(e);function a(e,a){var o=n(e,a);e=o[0],a=o[1];var l=m(a),u=s(a),c=s(e),f=L(t*l+r*u*c),d=m(f),h=i(d)>y?f/d:1;return[h*r*m(e),(i(e)>_?h:-h)*(t*u-r*l*c)]}return n.invert=Ft(-e),a.invert=function(e,r){var i=P(e*e+r*r),a=-m(i),l=s(i),u=i*l,c=-r*a,f=i*t,d=P(u*u+c*c-f*f),h=o(u*f+c*d,c*f-u*d),p=(i>_?-1:1)*o(e*a,i*s(h)*l+r*m(h)*a);return n.invert(p,h)},a}function Ft(e){var t=m(e),r=s(e);return function(e,n){var i=s(n),a=s(e)*i,l=m(e)*i,u=m(n);return[o(l,a*r-u*t),C(u*r+a*t)]}}function Nt(){var e=0,t=(0,n.r)(zt),r=t(e),i=r.rotate,a=r.stream,o=(0,Rt.Z)();return r.parallel=function(n){if(!arguments.length)return e*S;var i=r.rotate();return t(e=n*E).rotate(i)},r.rotate=function(t){return arguments.length?(i.call(r,[t[0],t[1]-e*S]),o.center([-t[0],-t[1]]),r):((t=i.call(r))[1]+=e*S,t)},r.stream=function(e){return(e=a(e)).sphere=function(){e.polygonStart();var t,r=o.radius(89.99)().coordinates[0],n=r.length-1,i=-1;for(e.lineStart();++i=0;)e.point((t=r[i])[0],t[1]);e.lineEnd(),e.polygonEnd()},e},r.scale(79.4187).parallel(45).clipAngle(179.999)}var Bt=r(33064),jt=r(72736),Ut=C(1-1/3)*S,Vt=ze(0);function Ht(e){var t=Ut*E,r=Ce(b,t)[0]-Ce(-b,t)[0],n=Vt(0,t)[1],a=Ce(0,t)[1],o=M-a,s=A/e,l=4/A,c=n+o*o*4/A;function h(h,p){var v,m=i(p);if(m>t){var g=d(e-1,f(0,u((h+b)/s)));(v=Ce(h+=b*(e-1)/e-g*s,m))[0]=v[0]*A/r-A*(e-1)/(2*e)+g*A/e,v[1]=n+4*(v[1]-a)*o/A,p<0&&(v[1]=-v[1])}else v=Vt(h,p);return v[0]*=l,v[1]/=c,v}return h.invert=function(t,h){t/=l;var p=i(h*=c);if(p>n){var v=d(e-1,f(0,u((t+b)/s)));t=(t+b*(e-1)/e-v*s)*r/A;var m=Ce.invert(t,.25*(p-n)*A/o+a);return m[0]-=b*(e-1)/e-v*s,h<0&&(m[1]=-m[1]),m}return Vt.invert(t,h)},h}function qt(e,t){return[e,1&t?90-y:Ut]}function Wt(e,t){return[e,1&t?-90+y:-Ut]}function Gt(e){return[e[0]*(1-y),e[1]]}function Yt(){var e=4,t=(0,n.r)(Ht),r=t(e),i=r.stream;return r.lobes=function(r){return arguments.length?t(e=+r):e},r.stream=function(t){var n=r.rotate(),a=i(t),o=(r.rotate([0,0]),i(t));return r.rotate(n),a.sphere=function(){(0,jt.Z)(function(e){var t=[].concat((0,Bt.w6)(-180,180+e/2,e).map(qt),(0,Bt.w6)(180,-180-e/2,-e).map(Wt));return{type:"Polygon",coordinates:[180===e?t.map(Gt):t]}}(180/e),o)},a},r.scale(239.75)}function Zt(e){var t,r=1+e,n=C(m(1/r)),a=2*P(b/(t=b+4*n*r)),l=.5*a*(r+P(e*(2+e))),u=e*e,c=r*r;function f(f,d){var h,p,v=1-m(d);if(v&&v<2){var g,y=_-d,w=25;do{var k=m(y),T=s(y),M=n+o(k,r-T),A=1+c-2*r*T;y-=g=(y-u*n-r*k+A*M-.5*v*t)/(2*r*k*M)}while(i(g)>x&&--w>0);h=a*P(A),p=f*M/b}else h=a*(e+v),p=f*n/b;return[h*m(p),l-h*s(p)]}return f.invert=function(e,i){var s=e*e+(i-=l)*i,f=(1+c-s/(a*a))/(2*r),d=L(f),h=m(d),p=n+o(h,r-f);return[C(e/P(s))*b/p,C(1-2*(d-u*n-r*h+(1+c-2*r*f)*p)/t)]},f}function Xt(){var e=1,t=(0,n.r)(Zt),r=t(e);return r.ratio=function(r){return arguments.length?t(e=+r):e},r.scale(167.774).center([0,18.67])}var Kt=.7109889596207567,$t=.0528035274542;function Jt(e,t){return t>-Kt?((e=ae(e,t))[1]+=$t,e):de(e,t)}function Qt(){return(0,n.Z)(Jt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function er(e,t){return i(t)>Kt?((e=ae(e,t))[1]-=t>0?$t:-$t,e):de(e,t)}function tr(){return(0,n.Z)(er).scale(152.63)}function rr(e,t,r,n){var i=P(4*b/(2*r+(1+e-t/2)*m(2*r)+(e+t)/2*m(4*r)+t/2*m(6*r))),a=P(n*m(r)*P((1+e*s(2*r)+t*s(4*r))/(1+e+t))),o=r*u(1);function l(r){return P(1+e*s(2*r)+t*s(4*r))}function u(n){var i=n*r;return(2*i+(1+e-t/2)*m(2*i)+(e+t)/2*m(4*i)+t/2*m(6*i))/r}function c(e){return l(e)*m(e)}var f=function(e,t){var n=r*Q(u,o*m(t)/r,t/b);isNaN(n)&&(n=r*v(t));var c=i*l(n);return[c*a*e/b*s(n),c/a*m(n)]};return f.invert=function(e,t){var n=Q(c,t*a/i);return[e*b/(s(n)*i*a*l(n)),C(r*u(n/r)/o)]},0===r&&(i=P(n/b),(f=function(e,t){return[e*i,m(t)/i]}).invert=function(e,t){return[e/i,C(t*i)]}),f}function nr(){var e=1,t=0,r=45*E,i=2,a=(0,n.r)(rr),o=a(e,t,r,i);return o.a=function(n){return arguments.length?a(e=+n,t,r,i):e},o.b=function(n){return arguments.length?a(e,t=+n,r,i):t},o.psiMax=function(n){return arguments.length?a(e,t,r=+n*E,i):r*S},o.ratio=function(n){return arguments.length?a(e,t,r,i=+n):i},o.scale(180.739)}function ir(e,t,r,n,i,a,o,s,l,u,c){if(c.nanEncountered)return NaN;var f,d,h,p,v,m,g,y,x,b;if(d=e(t+.25*(f=r-t)),h=e(r-.25*f),isNaN(d))c.nanEncountered=!0;else{if(!isNaN(h))return b=((m=(p=f*(n+4*d+i)/12)+(v=f*(i+4*h+a)/12))-o)/15,u>l?(c.maxDepthCount++,m+b):Math.abs(b)e?r=n:t=n,n=t+r>>1}while(n>t);var i=u[n+1]-u[n];return i&&(i=(e-u[n+1])/i),(n+1+i)/s}var d=2*f(1)/b*o/r,p=function(e,t){var r=f(i(m(t))),a=n(r)*e;return r/=d,[a,t>=0?r:-r]};return p.invert=function(e,t){var r;return i(t*=d)<1&&(r=v(t)*C(a(i(t))*o)),[e/n(i(t)),r]},p}function sr(){var e=0,t=2.5,r=1.183136,i=(0,n.r)(or),a=i(e,t,r);return a.alpha=function(n){return arguments.length?i(e=+n,t,r):e},a.k=function(n){return arguments.length?i(e,t=+n,r):t},a.gamma=function(n){return arguments.length?i(e,t,r=+n):r},a.scale(152.63)}function lr(e,t){return i(e[0]-t[0])a[o][2][0];++o);var l=e(r-a[o][1][0],n);return l[0]+=e(a[o][1][0],i*n>i*a[o][0][1]?a[o][0][1]:n)[0],l}r?o.invert=r(o):e.invert&&(o.invert=function(r,n){for(var i=a[+(n<0)],s=t[+(n<0)],l=0,u=i.length;l=0;--s)r=(t=e[1][s])[0][0],n=t[0][1],i=t[1][1],a=t[2][0],o=t[2][1],l.push(ur([[a-y,o-y],[a-y,i+y],[r+y,i+y],[r+y,n-y]],30));return{type:"Polygon",coordinates:[(0,Bt.TS)(l)]}}(r),t=r.map((function(e){return e.map((function(e){return[[e[0][0]*E,e[0][1]*E],[e[1][0]*E,e[1][1]*E],[e[2][0]*E,e[2][1]*E]]}))})),a=t.map((function(t){return t.map((function(t){var r,n=e(t[0][0],t[0][1])[0],i=e(t[2][0],t[2][1])[0],a=e(t[1][0],t[0][1])[1],o=e(t[1][0],t[1][1])[1];return a>o&&(r=a,a=o,o=r),[[n,a],[i,o]]}))})),s):t.map((function(e){return e.map((function(e){return[[e[0][0]*S,e[0][1]*S],[e[1][0]*S,e[1][1]*S],[e[2][0]*S,e[2][1]*S]]}))}))},null!=t&&s.lobes(t),s}Jt.invert=function(e,t){return t>-Kt?ae.invert(e,t-$t):de.invert(e,t)},er.invert=function(e,t){return i(t)>Kt?ae.invert(e,t+(t>0?$t:-$t)):de.invert(e,t)};var fr=[[[[-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 dr(){return cr(ue,fr).scale(160.857)}var hr=[[[[-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 pr(){return cr(er,hr).scale(152.63)}var vr=[[[[-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 mr(){return cr(ae,vr).scale(169.529)}var gr=[[[[-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 yr(){return cr(ae,gr).scale(169.529).rotate([20,0])}var xr=[[[[-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 br(){return cr(Jt,xr,ee).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var _r=[[[[-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 wr(){return cr(de,_r).scale(152.63).rotate([-20,0])}function kr(e,t){return[3/A*e*P(b*b/3-t*t),t]}function Tr(){return(0,n.Z)(kr).scale(158.837)}function Mr(e){function t(t,r){if(i(i(r)-_)2)return null;var a=(t/=2)*t,s=(r/=2)*r,l=2*r/(1+a+s);return l=h((1+l)/(1-l),1/e),[o(2*t,1-a-s)/e,C((l-1)/(l+1))]},t}function Ar(){var e=.5,t=(0,n.r)(Mr),r=t(e);return r.spacing=function(r){return arguments.length?t(e=+r):e},r.scale(124.75)}kr.invert=function(e,t){return[A/3*e/P(b*b/3-t*t),t]};var Sr=b/T;function Er(e,t){return[e*(1+P(s(t)))/2,t/(s(t/2)*s(e/6))]}function Cr(){return(0,n.Z)(Er).scale(97.2672)}function Lr(e,t){var r=e*e,n=t*t;return[e*(.975534+n*(-.0143059*r-.119161+-.0547009*n)),t*(1.00384+r*(.0802894+-.02855*n+199025e-9*r)+n*(.0998909+-.0491032*n))]}function Pr(){return(0,n.Z)(Lr).scale(139.98)}function Or(e,t){return[m(e)/s(t),g(t)*s(e)]}function Ir(){return(0,n.Z)(Or).scale(144.049).clipAngle(89.999)}function Dr(e){var t=s(e),r=g(w+e/2);function n(n,a){var o=a-e,s=i(o)=0;)d=(f=e[c])[0]+l*(i=d)-u*h,h=f[1]+l*h+u*i;return[d=l*(i=d)-u*h,h=l*h+u*i]}return r.invert=function(r,n){var l=20,u=r,c=n;do{for(var f,d=t,h=e[d],p=h[0],v=h[1],g=0,x=0;--d>=0;)g=p+u*(f=g)-c*x,x=v+u*x+c*f,p=(h=e[d])[0]+u*(f=p)-c*v,v=h[1]+u*v+c*f;var b,_,w=(g=p+u*(f=g)-c*x)*g+(x=v+u*x+c*f)*x;u-=b=((p=u*(f=p)-c*v-r)*g+(v=u*v+c*f-n)*x)/w,c-=_=(v*g-p*x)/w}while(i(b)+i(_)>y*y&&--l>0);if(l){var k=P(u*u+c*c),T=2*a(.5*k),M=m(T);return[o(u*M,k*s(T)),k?C(c*M/k):0]}},r}Er.invert=function(e,t){var r=i(e),n=i(t),a=y,o=_;ny||i(x)>y)&&--a>0);return a&&[r,n]},Or.invert=function(e,t){var r=e*e,n=t*t+1,i=r+n,a=e?k*P((i-P(i*i-4*r))/r):1/P(n);return[C(e*a),v(t)*L(a)]},zr.invert=function(e,t){return[e,2.5*a(l(.8*t))-.625*b]};var Br=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],jr=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Ur=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Vr=[[.9245,0],[0,0],[.01943,0]],Hr=[[.721316,0],[0,0],[-.00881625,-.00617325]];function qr(){return Xr(Br,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Wr(){return Xr(jr,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gr(){return Xr(Ur,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Yr(){return Xr(Vr,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Zr(){return Xr(Hr,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Xr(e,t){var r=(0,n.Z)(Nr(e)).rotate(t).clipAngle(90),i=(0,_e.Z)(t),a=r.center;return delete r.rotate,r.center=function(e){return arguments.length?a(i(e)):i.invert(a())},r}var Kr=P(6),$r=P(7);function Jr(e,t){var r=C(7*m(t)/(3*Kr));return[Kr*e*(2*s(2*r/3)-1)/$r,9*m(r/3)/$r]}function Qr(){return(0,n.Z)(Jr).scale(164.859)}function en(e,t){for(var r,n=(1+k)*m(t),a=t,o=0;o<25&&(a-=r=(m(a/2)+m(a)-n)/(.5*s(a/2)+s(a)),!(i(r)x&&--l>0);return[e/(.84719-.13063*(n=s*s)+(o=n*(a=n*n))*o*(.05494*n-.04515-.02326*a+.00331*o)),s]},ln.invert=function(e,t){for(var r=t/2,n=0,a=1/0;n<10&&i(a)>y;++n){var o=s(t/2);t-=a=(t-g(t/2)-r)/(1-.5/(o*o))}return[2*e/(1+s(t)),t]};var cn=[[[[-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 fn(){return cr(K(1/0),cn).rotate([20,0]).scale(152.63)}function dn(e,t){var r=m(t),n=s(t),a=v(e);if(0===e||i(t)===_)return[0,t];if(0===t)return[e,0];if(i(e)===_)return[e*n,_*r];var o=b/(2*e)-2*e/b,l=2*t/b,u=(1-l*l)/(r-l),c=o*o,f=u*u,d=1+c/f,h=1+f/c,p=(o*r/u-o/2)/d,g=(f*r/c+u/2)/h,y=g*g-(f*r*r/c+u*r-1)/h;return[_*(p+P(p*p+n*n/d)*a),_*(g+P(y<0?0:y)*v(-t*o)*a)]}function hn(){return(0,n.Z)(dn).scale(127.267)}dn.invert=function(e,t){var r=(e/=_)*e,n=r+(t/=_)*t,i=b*b;return[e?(n-1+P((1-n)*(1-n)+4*r))/(2*e)*_:0,Q((function(e){return n*(b*m(e)-2*e)*b+4*e*e*(t-m(e))+2*b*e-i*t}),0)]};var pn=1.0148,vn=.23185,mn=-.14499,gn=.02406,yn=pn,xn=5*vn,bn=7*mn,_n=9*gn,wn=1.790857183;function kn(e,t){var r=t*t;return[e,t*(pn+r*r*(vn+r*(mn+gn*r)))]}function Tn(){return(0,n.Z)(kn).scale(139.319)}function Mn(e,t){if(i(t)wn?t=wn:t<-1.790857183&&(t=-1.790857183);var r,n=t;do{var a=n*n;n-=r=(n*(pn+a*a*(vn+a*(mn+gn*a)))-t)/(yn+a*a*(xn+a*(bn+_n*a)))}while(i(r)>y);return[e,n]},Mn.invert=function(e,t){if(i(t)y&&--o>0);return l=g(a),[(i(t)=0;)if(n=t[s],r[0]===n[0]&&r[1]===n[1]){if(a)return[a,r];a=r}}}(t.face,r.face),i=Cn(n.map(r.project),n.map(t.project));t.transform=r.transform?Ln(r.transform,i):i;for(var a=r.edges,o=0,s=a.length;o0?[-t[0],0]:[180-t[0],180])};var t=Bn.map((function(t){return{face:t,project:e(t)}}));return[-1,0,0,1,0,1,4,5].forEach((function(e,r){var n=t[e];n&&(n.children||(n.children=[])).push(t[r])})),In(t[0],(function(e,r){return t[e<-b/2?r<0?6:4:e<0?r<0?2:0:en^h>n&&r<(d-u)*(n-c)/(h-c)+u&&(i=!i)}return i}(e[0],r))return e.push(t),!0}))||e.push([t])})),ei=[],e.length?e.length>1?{type:"MultiPolygon",coordinates:e}:{type:"Polygon",coordinates:e[0]}:null}};function ii(e){var t=e(_,0)[0]-e(-_,0)[0];function r(r,n){var a=i(r)<_,o=e(a?r:r>0?r-b:r+b,n),s=(o[0]-o[1])*k,l=(o[0]+o[1])*k;if(a)return[s,l];var u=t*k,c=s>0^l>0?-1:1;return[c*s-v(l)*u,c*l-v(s)*u]}return e.invert&&(r.invert=function(r,n){var a=(r+n)*k,o=(n-r)*k,s=i(a)<.5*t&&i(o)<.5*t;if(!s){var l=t*k,u=a>0^o>0?-1:1,c=-u*r+(o>0?1:-1)*l,f=-u*n+(a>0?1:-1)*l;a=(-c-f)*k,o=(c-f)*k}var d=e.invert(a,o);return s||(d[0]+=a>0?b:-b),d}),(0,n.Z)(r).rotate([-90,-90,45]).clipAngle(179.999)}function ai(){return ii(Ct).scale(176.423)}function oi(){return ii(It).scale(111.48)}function si(e,t){if(!(0<=(t=+t)&&t<=20))throw new Error("invalid digits");function r(e){var r=e.length,n=2,i=new Array(r);for(i[0]=+e[0].toFixed(t),i[1]=+e[1].toFixed(t);n2||a[0]!=t[0]||a[1]!=t[1])&&(n.push(a),t=a)}return 1===n.length&&e.length>1&&n.push(r(e[e.length-1])),n}function a(e){return e.map(i)}function o(e){if(null==e)return e;var t;switch(e.type){case"GeometryCollection":t={type:"GeometryCollection",geometries:e.geometries.map(o)};break;case"Point":t={type:"Point",coordinates:r(e.coordinates)};break;case"MultiPoint":t={type:e.type,coordinates:n(e.coordinates)};break;case"LineString":t={type:e.type,coordinates:i(e.coordinates)};break;case"MultiLineString":case"Polygon":t={type:e.type,coordinates:a(e.coordinates)};break;case"MultiPolygon":t={type:"MultiPolygon",coordinates:e.coordinates.map(a)};break;default:return e}return null!=e.bbox&&(t.bbox=e.bbox),t}function s(e){var t={type:"Feature",properties:e.properties,geometry:o(e.geometry)};return null!=e.id&&(t.id=e.id),null!=e.bbox&&(t.bbox=e.bbox),t}if(null!=e)switch(e.type){case"Feature":return s(e);case"FeatureCollection":var l={type:"FeatureCollection",features:e.features.map(s)};return null!=e.bbox&&(l.bbox=e.bbox),l;default:return o(e)}return e}function li(e){var t=m(e);function r(r,n){var i=t?g(r*t/2)/t:r/2;if(!n)return[2*i,-e];var o=2*a(i*m(n)),l=1/g(n);return[m(o)*l,n+(1-s(o))*l-e]}return r.invert=function(r,n){if(i(n+=e)y&&--c>0);var p=r*(f=g(u)),v=g(i(n)0?_:-_)*(f+o*(p-l)/2+o*o*(p-2*f+l)/2)]}function di(){return(0,n.Z)(fi).scale(152.63)}function hi(e,t){var r=function(e){function t(t,r){var n=s(r),i=(e-1)/(e-n*s(t));return[i*n*m(t),i*m(r)]}return t.invert=function(t,r){var n=t*t+r*r,i=P(n),a=(e-P(1-n*(e+1)/(e-1)))/((e-1)/i+i/(e-1));return[o(t*a,i*P(1-a*a)),i?C(r*a/i):0]},t}(e);if(!t)return r;var n=s(t),i=m(t);function a(t,a){var o=r(t,a),s=o[1],l=s*i/(e-1)+n;return[o[0]*n/l,s/l]}return a.invert=function(t,a){var o=(e-1)/(e-1-a*i);return r.invert(o*t,o*a*n)},a}function pi(){var e=2,t=0,r=(0,n.r)(hi),i=r(e,t);return i.distance=function(n){return arguments.length?r(e=+n,t):e},i.tilt=function(n){return arguments.length?r(e,t=n*E):t*S},i.scale(432.147).clipAngle(L(1/e)*S-1e-6)}ci.forEach((function(e){e[1]*=1.0144})),fi.invert=function(e,t){var r=t/_,n=90*r,a=d(18,i(n/5)),o=f(0,u(a));do{var s=ci[o][1],l=ci[o+1][1],c=ci[d(19,o+2)][1],h=c-s,p=c-2*l+s,v=2*(i(r)-l)/h,m=p/h,g=v*(1-m*v*(1-2*m*v));if(g>=0||1===o){n=(t>=0?5:-5)*(g+a);var y,b=50;do{g=(a=d(18,i(n)/5))-(o=u(a)),s=ci[o][1],l=ci[o+1][1],c=ci[d(19,o+2)][1],n-=(y=(t>=0?_:-_)*(l+g*(c-s)/2+g*g*(c-2*l+s)/2)-t)*S}while(i(y)>x&&--b>0);break}}while(--o>=0);var w=ci[o][0],k=ci[o+1][0],T=ci[d(19,o+2)][0];return[e/(k+g*(T-w)/2+g*g*(T-2*k+w)/2),n*E]};var vi=1e-4,mi=1e4,gi=-180,yi=gi+vi,xi=180,bi=xi-vi,_i=-90,wi=_i+vi,ki=90,Ti=ki-vi;function Mi(e){return e.length>0}function Ai(e){return e===_i||e===ki?[0,e]:[gi,(t=e,Math.floor(t*mi)/mi)];var t}function Si(e){var t=e[0],r=e[1],n=!1;return t<=yi?(t=gi,n=!0):t>=bi&&(t=xi,n=!0),r<=wi?(r=_i,n=!0):r>=Ti&&(r=ki,n=!0),n?[t,r]:e}function Ei(e){return e.map(Si)}function Ci(e,t,r){for(var n=0,i=e.length;n=bi||c<=wi||c>=Ti){a[o]=Si(l);for(var f=o+1;fyi&&hwi&&p=s)break;r.push({index:-1,polygon:t,ring:a=a.slice(f-1)}),a[0]=Ai(a[0][1]),o=-1,s=a.length}}}}function Li(e){var t,r,n,i,a,o,s=e.length,l={},u={};for(t=0;t0?b-l:l)*S],c=(0,n.Z)(e(s)).rotate(u),f=(0,_e.Z)(u),d=c.center;return delete c.rotate,c.center=function(e){return arguments.length?d(f(e)):f.invert(d())},c.clipAngle(90)}function Fi(e){var t=s(e);function r(e,r){var n=(0,Fn.M)(e,r);return n[0]*=t,n}return r.invert=function(e,r){return Fn.M.invert(e/t,r)},r}function Ni(){return Bi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Bi(e,t){return zi(Fi,e,t)}function ji(e){if(!(e*=2))return G.N;var t=-e/2,r=-t,n=e*e,i=g(r),a=.5/m(r);function l(i,a){var o=L(s(a)*s(i-t)),l=L(s(a)*s(i-r));return[((o*=o)-(l*=l))/(2*e),(a<0?-1:1)*P(4*n*l-(n-o+l)*(n-o+l))/(2*e)]}return l.invert=function(e,n){var l,u,c=n*n,f=s(P(c+(l=e+t)*l)),d=s(P(c+(l=e+r)*l));return[o(u=f-d,l=(f+d)*i),(n<0?-1:1)*L(P(l*l+u*u)*a)]},l}function Ui(){return Vi([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Vi(e,t){return zi(ji,e,t)}function Hi(e,t){if(i(t)y&&--l>0);return[v(e)*(P(a*a+4)+a)*b/4,_*s]};var ea=4*b+3*P(3),ta=2*P(2*b*P(3)/ea),ra=ie(ta*P(3)/b,ta,ea/6);function na(){return(0,n.Z)(ra).scale(176.84)}function ia(e,t){return[e*P(1-3*t*t/(b*b)),t]}function aa(){return(0,n.Z)(ia).scale(152.63)}function oa(e,t){var r=s(t),n=s(e)*r,i=1-n,a=s(e=o(m(e)*r,-m(t))),l=m(e);return[l*(r=P(1-n*n))-a*i,-a*r-l*i]}function sa(){return(0,n.Z)(oa).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)}function la(e,t){var r=z(e,t);return[(r[0]+e/_)/2,(r[1]+t)/2]}function ua(){return(0,n.Z)(la).scale(158.837)}ia.invert=function(e,t){return[e/P(1-3*t*t/(b*b)),t]},oa.invert=function(e,t){var r=(e*e+t*t)/-2,n=P(-r*(2+r)),i=t*r+e*n,a=e*r-t*n,s=P(a*a+i*i);return[o(n*i,s*(1+r)),s?-C(n*a/s):0]},la.invert=function(e,t){var r=e,n=t,a=25;do{var o,l=s(n),u=m(n),c=m(2*n),f=u*u,d=l*l,h=m(r),p=s(r/2),v=m(r/2),g=v*v,x=1-d*p*p,b=x?L(l*p)*P(o=1/x):o=0,w=.5*(2*b*l*v+r/_)-e,k=.5*(b*u+n)-t,T=.5*o*(d*g+b*l*p*f)+.5/_,M=o*(h*c/4-b*u*v),A=.125*o*(c*v-b*u*d*h),S=.5*o*(f*p+b*g*l)+.5,E=M*A-S*T,C=(k*M-w*S)/E,O=(w*A-k*T)/E;r-=C,n-=O}while((i(C)>y||i(O)>y)&&--a>0);return[r,n]}},33940:function(e,t,r){"use strict";function n(){return new i}function i(){this.reset()}r.d(t,{Z:function(){return n}}),i.prototype={constructor:i,reset:function(){this.s=this.t=0},add:function(e){o(a,e,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(e,t,r){var n=e.s=t+r,i=n-t,a=n-i;e.t=t-a+(r-i)}},97860:function(e,t,r){"use strict";r.d(t,{L9:function(){return d},ZP:function(){return x},gL:function(){return p}});var n,i,a,o,s,l=r(33940),u=r(39695),c=r(73182),f=r(72736),d=(0,l.Z)(),h=(0,l.Z)(),p={point:c.Z,lineStart:c.Z,lineEnd:c.Z,polygonStart:function(){d.reset(),p.lineStart=v,p.lineEnd=m},polygonEnd:function(){var e=+d;h.add(e<0?u.BZ+e:e),this.lineStart=this.lineEnd=this.point=c.Z},sphere:function(){h.add(u.BZ)}};function v(){p.point=g}function m(){y(n,i)}function g(e,t){p.point=y,n=e,i=t,e*=u.uR,t*=u.uR,a=e,o=(0,u.mC)(t=t/2+u.pu),s=(0,u.O$)(t)}function y(e,t){e*=u.uR,t=(t*=u.uR)/2+u.pu;var r=e-a,n=r>=0?1:-1,i=n*r,l=(0,u.mC)(t),c=(0,u.O$)(t),f=s*c,h=o*l+f*(0,u.mC)(i),p=f*n*(0,u.O$)(i);d.add((0,u.fv)(p,h)),a=e,o=l,s=c}function x(e){return h.reset(),(0,f.Z)(e,p),2*h}},77338:function(e,t,r){"use strict";r.d(t,{Z:function(){return L}});var n,i,a,o,s,l,u,c,f,d,h=r(33940),p=r(97860),v=r(7620),m=r(39695),g=r(72736),y=(0,h.Z)(),x={point:b,lineStart:w,lineEnd:k,polygonStart:function(){x.point=T,x.lineStart=M,x.lineEnd=A,y.reset(),p.gL.polygonStart()},polygonEnd:function(){p.gL.polygonEnd(),x.point=b,x.lineStart=w,x.lineEnd=k,p.L9<0?(n=-(a=180),i=-(o=90)):y>m.Ho?o=90:y<-m.Ho&&(i=-90),d[0]=n,d[1]=a},sphere:function(){n=-(a=180),i=-(o=90)}};function b(e,t){f.push(d=[n=e,a=e]),to&&(o=t)}function _(e,t){var r=(0,v.Og)([e*m.uR,t*m.uR]);if(c){var l=(0,v.T5)(c,r),u=[l[1],-l[0],0],h=(0,v.T5)(u,l);(0,v.iJ)(h),h=(0,v.Y1)(h);var p,g=e-s,y=g>0?1:-1,x=h[0]*m.RW*y,b=(0,m.Wn)(g)>180;b^(y*so&&(o=p):b^(y*s<(x=(x+360)%360-180)&&xo&&(o=t)),b?eS(n,a)&&(a=e):S(e,a)>S(n,a)&&(n=e):a>=n?(ea&&(a=e)):e>s?S(n,e)>S(n,a)&&(a=e):S(e,a)>S(n,a)&&(n=e)}else f.push(d=[n=e,a=e]);to&&(o=t),c=r,s=e}function w(){x.point=_}function k(){d[0]=n,d[1]=a,x.point=b,c=null}function T(e,t){if(c){var r=e-s;y.add((0,m.Wn)(r)>180?r+(r>0?360:-360):r)}else l=e,u=t;p.gL.point(e,t),_(e,t)}function M(){p.gL.lineStart()}function A(){T(l,u),p.gL.lineEnd(),(0,m.Wn)(y)>m.Ho&&(n=-(a=180)),d[0]=n,d[1]=a,c=null}function S(e,t){return(t-=e)<0?t+360:t}function E(e,t){return e[0]-t[0]}function C(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tS(s[0],s[1])&&(s[1]=l[1]),S(l[0],s[1])>S(s[0],s[1])&&(s[0]=l[0])):u.push(s=l);for(c=-1/0,t=0,s=u[r=u.length-1];t<=r;s=l,++t)l=u[t],(h=S(s[1],l[0]))>c&&(c=h,n=l[0],a=s[1])}return f=d=null,n===1/0||i===1/0?[[NaN,NaN],[NaN,NaN]]:[[n,i],[a,o]]}},7620:function(e,t,r){"use strict";r.d(t,{Og:function(){return a},T:function(){return u},T5:function(){return s},Y1:function(){return i},iJ:function(){return c},j9:function(){return o},s0:function(){return l}});var n=r(39695);function i(e){return[(0,n.fv)(e[1],e[0]),(0,n.ZR)(e[2])]}function a(e){var t=e[0],r=e[1],i=(0,n.mC)(r);return[i*(0,n.mC)(t),i*(0,n.O$)(t),(0,n.O$)(r)]}function o(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function s(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function l(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function u(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function c(e){var t=(0,n._b)(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}},66624:function(e,t,r){"use strict";r.d(t,{Z:function(){return I}});var n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x=r(39695),b=r(73182),_=r(72736),w={sphere:b.Z,point:k,lineStart:M,lineEnd:E,polygonStart:function(){w.lineStart=C,w.lineEnd=L},polygonEnd:function(){w.lineStart=M,w.lineEnd=E}};function k(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t);T(r*(0,x.mC)(e),r*(0,x.O$)(e),(0,x.O$)(t))}function T(e,t,r){++n,a+=(e-a)/n,o+=(t-o)/n,s+=(r-s)/n}function M(){w.point=A}function A(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t);m=r*(0,x.mC)(e),g=r*(0,x.O$)(e),y=(0,x.O$)(t),w.point=S,T(m,g,y)}function S(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t),n=r*(0,x.mC)(e),a=r*(0,x.O$)(e),o=(0,x.O$)(t),s=(0,x.fv)((0,x._b)((s=g*o-y*a)*s+(s=y*n-m*o)*s+(s=m*a-g*n)*s),m*n+g*a+y*o);i+=s,l+=s*(m+(m=n)),u+=s*(g+(g=a)),c+=s*(y+(y=o)),T(m,g,y)}function E(){w.point=k}function C(){w.point=P}function L(){O(p,v),w.point=k}function P(e,t){p=e,v=t,e*=x.uR,t*=x.uR,w.point=O;var r=(0,x.mC)(t);m=r*(0,x.mC)(e),g=r*(0,x.O$)(e),y=(0,x.O$)(t),T(m,g,y)}function O(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t),n=r*(0,x.mC)(e),a=r*(0,x.O$)(e),o=(0,x.O$)(t),s=g*o-y*a,p=y*n-m*o,v=m*a-g*n,b=(0,x._b)(s*s+p*p+v*v),_=(0,x.ZR)(b),w=b&&-_/b;f+=w*s,d+=w*p,h+=w*v,i+=_,l+=_*(m+(m=n)),u+=_*(g+(g=a)),c+=_*(y+(y=o)),T(m,g,y)}function I(e){n=i=a=o=s=l=u=c=f=d=h=0,(0,_.Z)(e,w);var t=f,r=d,p=h,v=t*t+r*r+p*p;return v0?os)&&(o+=i*a.BZ));for(var d,h=o;i>0?h>s:h0?i.pi:-i.pi,u=(0,i.Wn)(o-r);(0,i.Wn)(u-i.pi)0?i.ou:-i.ou),e.point(a,n),e.lineEnd(),e.lineStart(),e.point(l,n),e.point(o,n),t=0):a!==l&&u>=i.pi&&((0,i.Wn)(r-a)i.Ho?(0,i.z4)(((0,i.O$)(t)*(o=(0,i.mC)(n))*(0,i.O$)(r)-(0,i.O$)(n)*(a=(0,i.mC)(t))*(0,i.O$)(e))/(a*o*s)):(t+n)/2}(r,n,o,s),e.point(a,n),e.lineEnd(),e.lineStart(),e.point(l,n),t=0),e.point(r=o,n=s),a=l},lineEnd:function(){e.lineEnd(),r=n=NaN},clean:function(){return 2-t}}}),(function(e,t,r,n){var a;if(null==e)a=r*i.ou,n.point(-i.pi,a),n.point(0,a),n.point(i.pi,a),n.point(i.pi,0),n.point(i.pi,-a),n.point(0,-a),n.point(-i.pi,-a),n.point(-i.pi,0),n.point(-i.pi,a);else if((0,i.Wn)(e[0]-t[0])>i.Ho){var o=e[0]1&&t.push(t.pop().concat(t.shift()))},result:function(){var r=t;return t=[],e=null,r}}}},1457:function(e,t,r){"use strict";r.d(t,{Z:function(){return l}});var n=r(7620),i=r(7613),a=r(39695),o=r(67108),s=r(97023);function l(e){var t=(0,a.mC)(e),r=6*a.uR,l=t>0,u=(0,a.Wn)(t)>a.Ho;function c(e,r){return(0,a.mC)(e)*(0,a.mC)(r)>t}function f(e,r,i){var o=(0,n.Og)(e),s=(0,n.Og)(r),l=[1,0,0],u=(0,n.T5)(o,s),c=(0,n.j9)(u,u),f=u[0],d=c-f*f;if(!d)return!i&&e;var h=t*c/d,p=-t*f/d,v=(0,n.T5)(l,u),m=(0,n.T)(l,h),g=(0,n.T)(u,p);(0,n.s0)(m,g);var y=v,x=(0,n.j9)(m,y),b=(0,n.j9)(y,y),_=x*x-b*((0,n.j9)(m,m)-1);if(!(_<0)){var w=(0,a._b)(_),k=(0,n.T)(y,(-x-w)/b);if((0,n.s0)(k,m),k=(0,n.Y1)(k),!i)return k;var T,M=e[0],A=r[0],S=e[1],E=r[1];A0^k[1]<((0,a.Wn)(k[0]-M)a.pi^(M<=k[0]&&k[0]<=A)){var P=(0,n.T)(y,(-x+w)/b);return(0,n.s0)(P,m),[k,(0,n.Y1)(P)]}}}function d(t,r){var n=l?e:a.pi-e,i=0;return t<-n?i|=1:t>n&&(i|=2),r<-n?i|=4:r>n&&(i|=8),i}return(0,s.Z)(c,(function(e){var t,r,n,i,s;return{lineStart:function(){i=n=!1,s=1},point:function(h,p){var v,m=[h,p],g=c(h,p),y=l?g?0:d(h,p):g?d(h+(h<0?a.pi:-a.pi),p):0;if(!t&&(i=n=g)&&e.lineStart(),g!==n&&(!(v=f(t,m))||(0,o.Z)(t,v)||(0,o.Z)(m,v))&&(m[2]=1),g!==n)s=0,g?(e.lineStart(),v=f(m,t),e.point(v[0],v[1])):(v=f(t,m),e.point(v[0],v[1],2),e.lineEnd()),t=v;else if(u&&t&&l^g){var x;y&r||!(x=f(m,t,!0))||(s=0,l?(e.lineStart(),e.point(x[0][0],x[0][1]),e.point(x[1][0],x[1][1]),e.lineEnd()):(e.point(x[1][0],x[1][1]),e.lineEnd(),e.lineStart(),e.point(x[0][0],x[0][1],3)))}!g||t&&(0,o.Z)(t,m)||e.point(m[0],m[1]),t=m,n=g,r=y},lineEnd:function(){n&&e.lineEnd(),t=null},clean:function(){return s|(i&&n)<<1}}}),(function(t,n,a,o){(0,i.m)(o,e,r,a,t,n)}),l?[0,-e]:[-a.pi,e-a.pi])}},97023:function(e,t,r){"use strict";r.d(t,{Z:function(){return l}});var n=r(85272),i=r(46225),a=r(39695),o=r(23071),s=r(33064);function l(e,t,r,a){return function(l){var f,d,h,p=t(l),v=(0,n.Z)(),m=t(v),g=!1,y={point:x,lineStart:_,lineEnd:w,polygonStart:function(){y.point=k,y.lineStart=T,y.lineEnd=M,d=[],f=[]},polygonEnd:function(){y.point=x,y.lineStart=_,y.lineEnd=w,d=(0,s.TS)(d);var e=(0,o.Z)(f,a);d.length?(g||(l.polygonStart(),g=!0),(0,i.Z)(d,c,e,r,l)):e&&(g||(l.polygonStart(),g=!0),l.lineStart(),r(null,null,1,l),l.lineEnd()),g&&(l.polygonEnd(),g=!1),d=f=null},sphere:function(){l.polygonStart(),l.lineStart(),r(null,null,1,l),l.lineEnd(),l.polygonEnd()}};function x(t,r){e(t,r)&&l.point(t,r)}function b(e,t){p.point(e,t)}function _(){y.point=b,p.lineStart()}function w(){y.point=x,p.lineEnd()}function k(e,t){h.push([e,t]),m.point(e,t)}function T(){m.lineStart(),h=[]}function M(){k(h[0][0],h[0][1]),m.lineEnd();var e,t,r,n,i=m.clean(),a=v.result(),o=a.length;if(h.pop(),f.push(h),h=null,o)if(1&i){if((t=(r=a[0]).length-1)>0){for(g||(l.polygonStart(),g=!0),l.lineStart(),e=0;e1&&2&i&&a.push(a.pop().concat(a.shift())),d.push(a.filter(u))}return y}}function u(e){return e.length>1}function c(e,t){return((e=e.x)[0]<0?e[1]-a.ou-a.Ho:a.ou-e[1])-((t=t.x)[0]<0?t[1]-a.ou-a.Ho:a.ou-t[1])}},87605:function(e,t,r){"use strict";r.d(t,{Z:function(){return u}});var n=r(39695),i=r(85272),a=r(46225),o=r(33064),s=1e9,l=-s;function u(e,t,r,u){function c(n,i){return e<=n&&n<=r&&t<=i&&i<=u}function f(n,i,a,o){var s=0,l=0;if(null==n||(s=d(n,a))!==(l=d(i,a))||p(n,i)<0^a>0)do{o.point(0===s||3===s?e:r,s>1?u:t)}while((s=(s+a+4)%4)!==l);else o.point(i[0],i[1])}function d(i,a){return(0,n.Wn)(i[0]-e)0?0:3:(0,n.Wn)(i[0]-r)0?2:1:(0,n.Wn)(i[1]-t)0?1:0:a>0?3:2}function h(e,t){return p(e.x,t.x)}function p(e,t){var r=d(e,1),n=d(t,1);return r!==n?r-n:0===r?t[1]-e[1]:1===r?e[0]-t[0]:2===r?e[1]-t[1]:t[0]-e[0]}return function(n){var d,p,v,m,g,y,x,b,_,w,k,T=n,M=(0,i.Z)(),A={point:S,lineStart:function(){A.point=E,p&&p.push(v=[]),w=!0,_=!1,x=b=NaN},lineEnd:function(){d&&(E(m,g),y&&_&&M.rejoin(),d.push(M.result())),A.point=S,_&&T.lineEnd()},polygonStart:function(){T=M,d=[],p=[],k=!0},polygonEnd:function(){var t=function(){for(var t=0,r=0,n=p.length;ru&&(f-i)*(u-a)>(d-a)*(e-i)&&++t:d<=u&&(f-i)*(u-a)<(d-a)*(e-i)&&--t;return t}(),r=k&&t,i=(d=(0,o.TS)(d)).length;(r||i)&&(n.polygonStart(),r&&(n.lineStart(),f(null,null,1,n),n.lineEnd()),i&&(0,a.Z)(d,h,t,f,n),n.polygonEnd()),T=n,d=p=v=null}};function S(e,t){c(e,t)&&T.point(e,t)}function E(n,i){var a=c(n,i);if(p&&v.push([n,i]),w)m=n,g=i,y=a,w=!1,a&&(T.lineStart(),T.point(n,i));else if(a&&_)T.point(n,i);else{var o=[x=Math.max(l,Math.min(s,x)),b=Math.max(l,Math.min(s,b))],f=[n=Math.max(l,Math.min(s,n)),i=Math.max(l,Math.min(s,i))];!function(e,t,r,n,i,a){var o,s=e[0],l=e[1],u=0,c=1,f=t[0]-s,d=t[1]-l;if(o=r-s,f||!(o>0)){if(o/=f,f<0){if(o0){if(o>c)return;o>u&&(u=o)}if(o=i-s,f||!(o<0)){if(o/=f,f<0){if(o>c)return;o>u&&(u=o)}else if(f>0){if(o0)){if(o/=d,d<0){if(o0){if(o>c)return;o>u&&(u=o)}if(o=a-l,d||!(o<0)){if(o/=d,d<0){if(o>c)return;o>u&&(u=o)}else if(d>0){if(o0&&(e[0]=s+u*f,e[1]=l+u*d),c<1&&(t[0]=s+c*f,t[1]=l+c*d),!0}}}}}(o,f,e,t,r,u)?a&&(T.lineStart(),T.point(n,i),k=!1):(_||(T.lineStart(),T.point(o[0],o[1])),T.point(f[0],f[1]),a||T.lineEnd(),k=!1)}x=n,b=i,_=a}return A}}},46225:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(67108),i=r(39695);function a(e,t,r,n){this.x=e,this.z=t,this.o=r,this.e=n,this.v=!1,this.n=this.p=null}function o(e,t,r,o,l){var u,c,f=[],d=[];if(e.forEach((function(e){if(!((t=e.length-1)<=0)){var t,r,o=e[0],s=e[t];if((0,n.Z)(o,s)){if(!o[2]&&!s[2]){for(l.lineStart(),u=0;u=0;--u)l.point((p=h[u])[0],p[1]);else o(m.x,m.p.x,-1,l);m=m.p}h=(m=m.o).z,g=!g}while(!m.v);l.lineEnd()}}}function s(e){if(t=e.length){for(var t,r,n=0,i=e[0];++n0&&(i=S(e[a],e[a-1]))>0&&r<=i&&n<=i&&(r+n-i)*(1-Math.pow((r-n)/i,2))m.Ho})).map(l)).concat((0,F.w6)((0,m.mD)(a/h)*h,i,h).filter((function(e){return(0,m.Wn)(e%v)>m.Ho})).map(u))}return y.lines=function(){return x().map((function(e){return{type:"LineString",coordinates:e}}))},y.outline=function(){return{type:"Polygon",coordinates:[c(n).concat(f(o).slice(1),c(r).reverse().slice(1),f(s).reverse().slice(1))]}},y.extent=function(e){return arguments.length?y.extentMajor(e).extentMinor(e):y.extentMinor()},y.extentMajor=function(e){return arguments.length?(n=+e[0][0],r=+e[1][0],s=+e[0][1],o=+e[1][1],n>r&&(e=n,n=r,r=e),s>o&&(e=s,s=o,o=e),y.precision(g)):[[n,s],[r,o]]},y.extentMinor=function(r){return arguments.length?(t=+r[0][0],e=+r[1][0],a=+r[0][1],i=+r[1][1],t>e&&(r=t,t=e,e=r),a>i&&(r=a,a=i,i=r),y.precision(g)):[[t,a],[e,i]]},y.step=function(e){return arguments.length?y.stepMajor(e).stepMinor(e):y.stepMinor()},y.stepMajor=function(e){return arguments.length?(p=+e[0],v=+e[1],y):[p,v]},y.stepMinor=function(e){return arguments.length?(d=+e[0],h=+e[1],y):[d,h]},y.precision=function(d){return arguments.length?(g=+d,l=N(a,i,90),u=B(t,e,g),c=N(s,o,90),f=B(n,r,g),y):g},y.extentMajor([[-180,-90+m.Ho],[180,90-m.Ho]]).extentMinor([[-180,-80-m.Ho],[180,80+m.Ho]])}function U(){return j()()}var V,H,q,W,G=r(83074),Y=r(8593),Z=(0,v.Z)(),X=(0,v.Z)(),K={point:g.Z,lineStart:g.Z,lineEnd:g.Z,polygonStart:function(){K.lineStart=$,K.lineEnd=ee},polygonEnd:function(){K.lineStart=K.lineEnd=K.point=g.Z,Z.add((0,m.Wn)(X)),X.reset()},result:function(){var e=Z/2;return Z.reset(),e}};function $(){K.point=J}function J(e,t){K.point=Q,V=q=e,H=W=t}function Q(e,t){X.add(W*e-q*t),q=e,W=t}function ee(){Q(V,H)}var te,re,ne,ie,ae=K,oe=r(3559),se=0,le=0,ue=0,ce=0,fe=0,de=0,he=0,pe=0,ve=0,me={point:ge,lineStart:ye,lineEnd:_e,polygonStart:function(){me.lineStart=we,me.lineEnd=ke},polygonEnd:function(){me.point=ge,me.lineStart=ye,me.lineEnd=_e},result:function(){var e=ve?[he/ve,pe/ve]:de?[ce/de,fe/de]:ue?[se/ue,le/ue]:[NaN,NaN];return se=le=ue=ce=fe=de=he=pe=ve=0,e}};function ge(e,t){se+=e,le+=t,++ue}function ye(){me.point=xe}function xe(e,t){me.point=be,ge(ne=e,ie=t)}function be(e,t){var r=e-ne,n=t-ie,i=(0,m._b)(r*r+n*n);ce+=i*(ne+e)/2,fe+=i*(ie+t)/2,de+=i,ge(ne=e,ie=t)}function _e(){me.point=ge}function we(){me.point=Te}function ke(){Me(te,re)}function Te(e,t){me.point=Me,ge(te=ne=e,re=ie=t)}function Me(e,t){var r=e-ne,n=t-ie,i=(0,m._b)(r*r+n*n);ce+=i*(ne+e)/2,fe+=i*(ie+t)/2,de+=i,he+=(i=ie*e-ne*t)*(ne+e),pe+=i*(ie+t),ve+=3*i,ge(ne=e,ie=t)}var Ae=me;function Se(e){this._context=e}Se.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,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(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,m.BZ)}},result:g.Z};var Ee,Ce,Le,Pe,Oe,Ie=(0,v.Z)(),De={point:g.Z,lineStart:function(){De.point=Re},lineEnd:function(){Ee&&ze(Ce,Le),De.point=g.Z},polygonStart:function(){Ee=!0},polygonEnd:function(){Ee=null},result:function(){var e=+Ie;return Ie.reset(),e}};function Re(e,t){De.point=ze,Ce=Pe=e,Le=Oe=t}function ze(e,t){Pe-=e,Oe-=t,Ie.add((0,m._b)(Pe*Pe+Oe*Oe)),Pe=e,Oe=t}var Fe=De;function Ne(){this._string=[]}function Be(e){return"m0,"+e+"a"+e+","+e+" 0 1,1 0,"+-2*e+"a"+e+","+e+" 0 1,1 0,"+2*e+"z"}function je(e,t){var r,n,i=4.5;function a(e){return e&&("function"===typeof i&&n.pointRadius(+i.apply(this,arguments)),(0,y.Z)(e,r(n))),n.result()}return a.area=function(e){return(0,y.Z)(e,r(ae)),ae.result()},a.measure=function(e){return(0,y.Z)(e,r(Fe)),Fe.result()},a.bounds=function(e){return(0,y.Z)(e,r(oe.Z)),oe.Z.result()},a.centroid=function(e){return(0,y.Z)(e,r(Ae)),Ae.result()},a.projection=function(t){return arguments.length?(r=null==t?(e=null,Y.Z):(e=t).stream,a):e},a.context=function(e){return arguments.length?(n=null==e?(t=null,new Ne):new Se(t=e),"function"!==typeof i&&n.pointRadius(i),a):t},a.pointRadius=function(e){return arguments.length?(i="function"===typeof e?e:(n.pointRadius(+e),+e),a):i},a.projection(e).context(t)}Ne.prototype={_radius:4.5,_circle:Be(4.5),pointRadius:function(e){return(e=+e)!==this._radius&&(this._radius=e,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(e,t){switch(this._point){case 0:this._string.push("M",e,",",t),this._point=1;break;case 1:this._string.push("L",e,",",t);break;default:null==this._circle&&(this._circle=Be(this._radius)),this._string.push("M",e,",",t,this._circle)}},result:function(){if(this._string.length){var e=this._string.join("");return this._string=[],e}return null}};var Ue=r(15002);function Ve(e){var t=0,r=m.pi/3,n=(0,Ue.r)(e),i=n(t,r);return i.parallels=function(e){return arguments.length?n(t=e[0]*m.uR,r=e[1]*m.uR):[t*m.RW,r*m.RW]},i}function He(e,t){var r=(0,m.O$)(e),n=(r+(0,m.O$)(t))/2;if((0,m.Wn)(n)=.12&&i<.234&&n>=-.425&&n<-.214?s:i>=.166&&i<.234&&n>=-.214&&n<-.115?l:o).invert(e)},c.stream=function(r){return e&&t===r?e:e=function(e){var t=e.length;return{point:function(r,n){for(var i=-1;++i0?t<-m.ou+m.Ho&&(t=-m.ou+m.Ho):t>m.ou-m.Ho&&(t=m.ou-m.Ho);var r=i/(0,m.sQ)(et(t),n);return[r*(0,m.O$)(n*e),i-r*(0,m.mC)(n*e)]}return a.invert=function(e,t){var r=i-t,a=(0,m.Xx)(n)*(0,m._b)(e*e+r*r),o=(0,m.fv)(e,(0,m.Wn)(r))*(0,m.Xx)(r);return r*n<0&&(o-=m.pi*(0,m.Xx)(e)*(0,m.Xx)(r)),[o/n,2*(0,m.z4)((0,m.sQ)(i/a,1/n))-m.ou]},a}function rt(){return Ve(tt).scale(109.5).parallels([30,30])}$e.invert=function(e,t){return[e,2*(0,m.z4)((0,m.Qq)(t))-m.ou]};var nt=r(97492);function it(e,t){var r=(0,m.mC)(e),n=e===t?(0,m.O$)(e):(r-(0,m.mC)(t))/(t-e),i=r/n+e;if((0,m.Wn)(n)2?e[2]+90:90]):[(e=r())[0],e[1],e[2]-90]},r([0,0,90]).scale(159.155)}xt.invert=(0,yt.O)((function(e){return 2*(0,m.z4)(e)})),_t.invert=function(e,t){return[-t,2*(0,m.z4)((0,m.Qq)(e))-m.ou]}},83074:function(e,t,r){"use strict";r.d(t,{Z:function(){return i}});var n=r(39695);function i(e,t){var r=e[0]*n.uR,i=e[1]*n.uR,a=t[0]*n.uR,o=t[1]*n.uR,s=(0,n.mC)(i),l=(0,n.O$)(i),u=(0,n.mC)(o),c=(0,n.O$)(o),f=s*(0,n.mC)(r),d=s*(0,n.O$)(r),h=u*(0,n.mC)(a),p=u*(0,n.O$)(a),v=2*(0,n.ZR)((0,n._b)((0,n.Jy)(o-i)+s*u*(0,n.Jy)(a-r))),m=(0,n.O$)(v),g=v?function(e){var t=(0,n.O$)(e*=v)/m,r=(0,n.O$)(v-e)/m,i=r*f+t*h,a=r*d+t*p,o=r*l+t*c;return[(0,n.fv)(a,i)*n.RW,(0,n.fv)(o,(0,n._b)(i*i+a*a))*n.RW]}:function(){return[r*n.RW,i*n.RW]};return g.distance=v,g}},39695:function(e,t,r){"use strict";r.d(t,{BZ:function(){return l},Ho:function(){return n},Jy:function(){return M},Kh:function(){return k},O$:function(){return x},OR:function(){return w},Qq:function(){return m},RW:function(){return u},Wn:function(){return f},Xx:function(){return b},ZR:function(){return T},_b:function(){return _},aW:function(){return i},cM:function(){return g},fv:function(){return h},mC:function(){return p},mD:function(){return v},ou:function(){return o},pi:function(){return a},pu:function(){return s},sQ:function(){return y},uR:function(){return c},z4:function(){return d}});var n=1e-6,i=1e-12,a=Math.PI,o=a/2,s=a/4,l=2*a,u=180/a,c=a/180,f=Math.abs,d=Math.atan,h=Math.atan2,p=Math.cos,v=Math.ceil,m=Math.exp,g=(Math.floor,Math.log),y=Math.pow,x=Math.sin,b=Math.sign||function(e){return e>0?1:e<0?-1:0},_=Math.sqrt,w=Math.tan;function k(e){return e>1?0:e<-1?a:Math.acos(e)}function T(e){return e>1?o:e<-1?-o:Math.asin(e)}function M(e){return(e=x(e/2))*e}},73182:function(e,t,r){"use strict";function n(){}r.d(t,{Z:function(){return n}})},3559:function(e,t,r){"use strict";var n=r(73182),i=1/0,a=i,o=-i,s=o,l={point:function(e,t){eo&&(o=e),ts&&(s=t)},lineStart:n.Z,lineEnd:n.Z,polygonStart:n.Z,polygonEnd:n.Z,result:function(){var e=[[i,a],[o,s]];return o=s=-(a=i=1/0),e}};t.Z=l},67108:function(e,t,r){"use strict";r.d(t,{Z:function(){return i}});var n=r(39695);function i(e,t){return(0,n.Wn)(e[0]-t[0])=0?1:-1,C=E*S,L=C>a.pi,P=x*M;if(o.add((0,a.fv)(P*E*(0,a.O$)(C),b*A+P*(0,a.mC)(C))),c+=L?S+E*a.BZ:S,L^g>=r^k>=r){var O=(0,i.T5)((0,i.Og)(m),(0,i.Og)(w));(0,i.iJ)(O);var I=(0,i.T5)(u,O);(0,i.iJ)(I);var D=(L^S>=0?-1:1)*(0,a.ZR)(I[2]);(n>D||n===D&&(O[0]||O[1]))&&(f+=L^S>=0?1:-1)}}return(c<-a.Ho||c4*t&&g--){var w=o+h,k=s+v,T=u+m,M=(0,l._b)(w*w+k*k+T*T),A=(0,l.ZR)(T/=M),S=(0,l.Wn)((0,l.Wn)(T)-1)t||(0,l.Wn)((x*P+b*O)/_-.5)>.3||o*h+s*v+u*m2?e[2]%360*l.uR:0,V()):[C*l.RW,L*l.RW,P*l.RW]},j.angle=function(e){return arguments.length?(O=e%360*l.uR,V()):O*l.RW},j.reflectX=function(e){return arguments.length?(I=e?-1:1,V()):I<0},j.reflectY=function(e){return arguments.length?(D=e?-1:1,V()):D<0},j.precision=function(e){return arguments.length?(x=v(b,B=e*e),H()):(0,l._b)(B)},j.fitExtent=function(e,t){return(0,f.qg)(j,e,t)},j.fitSize=function(e,t){return(0,f.mF)(j,e,t)},j.fitWidth=function(e,t){return(0,f.V6)(j,e,t)},j.fitHeight=function(e,t){return(0,f.rf)(j,e,t)},function(){return t=e.apply(this,arguments),j.invert=t.invert&&U,V()}}},26867:function(e,t,r){"use strict";r.d(t,{K:function(){return a},Z:function(){return o}});var n=r(15002),i=r(39695);function a(e,t){var r=t*t,n=r*r;return[e*(.8707-.131979*r+n*(n*(.003971*r-.001529*n)-.013791)),t*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))]}function o(){return(0,n.Z)(a).scale(175.295)}a.invert=function(e,t){var r,n=t,a=25;do{var o=n*n,s=o*o;n-=r=(n*(1.007226+o*(.015085+s*(.028874*o-.044475-.005916*s)))-t)/(1.007226+o*(.045255+s*(.259866*o-.311325-.005916*11*s)))}while((0,i.Wn)(r)>i.Ho&&--a>0);return[e/(.8707+(o=n*n)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),n]}},57962:function(e,t,r){"use strict";r.d(t,{I:function(){return o},Z:function(){return s}});var n=r(39695),i=r(25382),a=r(15002);function o(e,t){return[(0,n.mC)(t)*(0,n.O$)(e),(0,n.O$)(t)]}function s(){return(0,a.Z)(o).scale(249.5).clipAngle(90+n.Ho)}o.invert=(0,i.O)(n.ZR)},49386:function(e,t,r){"use strict";r.d(t,{I:function(){return o},Z:function(){return c}});var n=r(96059),i=r(39695);function a(e,t){return[(0,i.Wn)(e)>i.pi?e+Math.round(-e/i.BZ)*i.BZ:e,t]}function o(e,t,r){return(e%=i.BZ)?t||r?(0,n.Z)(l(e),u(t,r)):l(e):t||r?u(t,r):a}function s(e){return function(t,r){return[(t+=e)>i.pi?t-i.BZ:t<-i.pi?t+i.BZ:t,r]}}function l(e){var t=s(e);return t.invert=s(-e),t}function u(e,t){var r=(0,i.mC)(e),n=(0,i.O$)(e),a=(0,i.mC)(t),o=(0,i.O$)(t);function s(e,t){var s=(0,i.mC)(t),l=(0,i.mC)(e)*s,u=(0,i.O$)(e)*s,c=(0,i.O$)(t),f=c*r+l*n;return[(0,i.fv)(u*a-f*o,l*r-c*n),(0,i.ZR)(f*a+u*o)]}return s.invert=function(e,t){var s=(0,i.mC)(t),l=(0,i.mC)(e)*s,u=(0,i.O$)(e)*s,c=(0,i.O$)(t),f=c*a-u*o;return[(0,i.fv)(u*a+c*o,l*r+f*n),(0,i.ZR)(f*r-l*n)]},s}function c(e){function t(t){return(t=e(t[0]*i.uR,t[1]*i.uR))[0]*=i.RW,t[1]*=i.RW,t}return e=o(e[0]*i.uR,e[1]*i.uR,e.length>2?e[2]*i.uR:0),t.invert=function(t){return(t=e.invert(t[0]*i.uR,t[1]*i.uR))[0]*=i.RW,t[1]*=i.RW,t},t}a.invert=a},72736:function(e,t,r){"use strict";function n(e,t){e&&a.hasOwnProperty(e.type)&&a[e.type](e,t)}r.d(t,{Z:function(){return l}});var i={Feature:function(e,t){n(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,i=-1,a=r.length;++i=0;)t+=r[n].value;else t=1;e.value=t}function l(e,t){var r,n,i,a,o,s=new d(e),l=+e.value&&(s.value=e.value),c=[s];for(null==t&&(t=u);r=c.pop();)if(l&&(r.value=+r.data.value),(i=t(r.data))&&(o=i.length))for(r.children=new Array(o),a=o-1;a>=0;--a)c.push(n=r.children[a]=new d(i[a])),n.parent=r,n.depth=r.depth+1;return s.eachBefore(f)}function u(e){return e.children}function c(e){e.data=e.data.data}function f(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function d(e){this.data=e,this.depth=this.height=0,this.parent=null}r.r(t),r.d(t,{cluster:function(){return o},hierarchy:function(){return l},pack:function(){return O},packEnclose:function(){return p},packSiblings:function(){return S},partition:function(){return N},stratify:function(){return q},tree:function(){return $},treemap:function(){return re},treemapBinary:function(){return ne},treemapDice:function(){return F},treemapResquarify:function(){return ae},treemapSlice:function(){return J},treemapSliceDice:function(){return ie},treemapSquarify:function(){return te}}),d.prototype=l.prototype={constructor:d,count:function(){return this.eachAfter(s)},each:function(e){var t,r,n,i,a=this,o=[a];do{for(t=o.reverse(),o=[];a=t.pop();)if(e(a),r=a.children)for(n=0,i=r.length;n=0;--r)i.push(t[r]);return this},sum:function(e){return this.eachAfter((function(t){for(var r=+e(t.data)||0,n=t.children,i=n&&n.length;--i>=0;)r+=n[i].value;t.value=r}))},sort:function(e){return this.eachBefore((function(t){t.children&&t.children.sort(e)}))},path:function(e){for(var t=this,r=function(e,t){if(e===t)return e;var r=e.ancestors(),n=t.ancestors(),i=null;for(e=r.pop(),t=n.pop();e===t;)i=e,e=r.pop(),t=n.pop();return i}(t,e),n=[t];t!==r;)t=t.parent,n.push(t);for(var i=n.length;e!==r;)n.splice(i,0,e),e=e.parent;return n},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){var e=[];return this.each((function(t){e.push(t)})),e},leaves:function(){var e=[];return this.eachBefore((function(t){t.children||e.push(t)})),e},links:function(){var e=this,t=[];return e.each((function(r){r!==e&&t.push({source:r.parent,target:r})})),t},copy:function(){return l(this).eachBefore(c)}};var h=Array.prototype.slice;function p(e){for(var t,r,n=0,i=(e=function(e){for(var t,r,n=e.length;n;)r=Math.random()*n--|0,t=e[n],e[n]=e[r],e[r]=t;return e}(h.call(e))).length,a=[];n0&&r*r>n*n+i*i}function y(e,t){for(var r=0;r(o*=o)?(n=(u+o-i)/(2*u),a=Math.sqrt(Math.max(0,o/u-n*n)),r.x=e.x-n*s-a*l,r.y=e.y-n*l+a*s):(n=(u+i-o)/(2*u),a=Math.sqrt(Math.max(0,i/u-n*n)),r.x=t.x+n*s-a*l,r.y=t.y+n*l+a*s)):(r.x=t.x+r.r,r.y=t.y)}function k(e,t){var r=e.r+t.r-1e-6,n=t.x-e.x,i=t.y-e.y;return r>0&&r*r>n*n+i*i}function T(e){var t=e._,r=e.next._,n=t.r+r.r,i=(t.x*r.r+r.x*t.r)/n,a=(t.y*r.r+r.y*t.r)/n;return i*i+a*a}function M(e){this._=e,this.next=null,this.previous=null}function A(e){if(!(i=e.length))return 0;var t,r,n,i,a,o,s,l,u,c,f;if((t=e[0]).x=0,t.y=0,!(i>1))return t.r;if(r=e[1],t.x=-r.r,r.x=t.r,r.y=0,!(i>2))return t.r+r.r;w(r,t,n=e[2]),t=new M(t),r=new M(r),n=new M(n),t.next=n.previous=r,r.next=t.previous=n,n.next=r.previous=t;e:for(s=3;s0)throw new Error("cycle");return a}return r.id=function(t){return arguments.length?(e=E(t),r):e},r.parentId=function(e){return arguments.length?(t=E(e),r):t},r}function W(e,t){return e.parent===t.parent?1:2}function G(e){var t=e.children;return t?t[0]:e.t}function Y(e){var t=e.children;return t?t[t.length-1]:e.t}function Z(e,t,r){var n=r/(t.i-e.i);t.c-=n,t.s+=r,e.c+=n,t.z+=r,t.m+=r}function X(e,t,r){return e.a.parent===t.parent?e.a:r}function K(e,t){this._=e,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=t}function $(){var e=W,t=1,r=1,n=null;function i(i){var l=function(e){for(var t,r,n,i,a,o=new K(e,0),s=[o];t=s.pop();)if(n=t._.children)for(t.children=new Array(a=n.length),i=a-1;i>=0;--i)s.push(r=t.children[i]=new K(n[i],i)),r.parent=t;return(o.parent=new K(null,0)).children=[o],o}(i);if(l.eachAfter(a),l.parent.m=-l.z,l.eachBefore(o),n)i.eachBefore(s);else{var u=i,c=i,f=i;i.eachBefore((function(e){e.xc.x&&(c=e),e.depth>f.depth&&(f=e)}));var d=u===c?1:e(u,c)/2,h=d-u.x,p=t/(c.x+d+h),v=r/(f.depth||1);i.eachBefore((function(e){e.x=(e.x+h)*p,e.y=e.depth*v}))}return i}function a(t){var r=t.children,n=t.parent.children,i=t.i?n[t.i-1]:null;if(r){!function(e){for(var t,r=0,n=0,i=e.children,a=i.length;--a>=0;)(t=i[a]).z+=r,t.m+=r,r+=t.s+(n+=t.c)}(t);var a=(r[0].z+r[r.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,r,n){if(r){for(var i,a=t,o=t,s=r,l=a.parent.children[0],u=a.m,c=o.m,f=s.m,d=l.m;s=Y(s),a=G(a),s&&a;)l=G(l),(o=Y(o)).a=t,(i=s.z+f-a.z-u+e(s._,a._))>0&&(Z(X(s,t,n),t,i),u+=i,c+=i),f+=s.m,u+=a.m,d+=l.m,c+=o.m;s&&!Y(o)&&(o.t=s,o.m+=f-c),a&&!G(l)&&(l.t=a,l.m+=u-d,n=t)}return n}(t,i,t.parent.A||n[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function s(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(n=!1,t=+e[0],r=+e[1],i):n?null:[t,r]},i.nodeSize=function(e){return arguments.length?(n=!0,t=+e[0],r=+e[1],i):n?[t,r]:null},i}function J(e,t,r,n,i){for(var a,o=e.children,s=-1,l=o.length,u=e.value&&(i-r)/e.value;++sd&&(d=s),m=c*c*v,(h=Math.max(d/m,m/f))>p){c-=s;break}p=h}g.push(o={value:c,dice:l1?t:1)},r}(Q);function re(){var e=te,t=!1,r=1,n=1,i=[0],a=C,o=C,s=C,l=C,u=C;function c(e){return e.x0=e.y0=0,e.x1=r,e.y1=n,e.eachBefore(f),i=[0],t&&e.eachBefore(z),e}function f(t){var r=i[t.depth],n=t.x0+r,c=t.y0+r,f=t.x1-r,d=t.y1-r;f=r-1){var c=s[t];return c.x0=i,c.y0=a,c.x1=o,void(c.y1=l)}for(var f=u[t],d=n/2+f,h=t+1,p=r-1;h>>1;u[v]l-a){var y=(i*g+o*m)/n;e(t,h,m,i,a,y,l),e(h,r,g,y,a,o,l)}else{var x=(a*g+l*m)/n;e(t,h,m,i,a,o,x),e(h,r,g,i,x,o,l)}}(0,l,e.value,t,r,n,i)}function ie(e,t,r,n,i){(1&e.depth?J:F)(e,t,r,n,i)}var ae=function e(t){function r(e,r,n,i,a){if((o=e._squarify)&&o.ratio===t)for(var o,s,l,u,c,f=-1,d=o.length,h=e.value;++f1?t:1)},r}(Q)},45879:function(e,t,r){"use strict";r.d(t,{h5:function(){return y}});var n=Math.PI,i=2*n,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(e,t){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(e,t){this._+="L"+(this._x1=+e)+","+(this._y1=+t)},quadraticCurveTo:function(e,t,r,n){this._+="Q"+ +e+","+ +t+","+(this._x1=+r)+","+(this._y1=+n)},bezierCurveTo:function(e,t,r,n,i,a){this._+="C"+ +e+","+ +t+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(e,t,r,i,o){e=+e,t=+t,r=+r,i=+i,o=+o;var s=this._x1,l=this._y1,u=r-e,c=i-t,f=s-e,d=l-t,h=f*f+d*d;if(o<0)throw new Error("negative radius: "+o);if(null===this._x1)this._+="M"+(this._x1=e)+","+(this._y1=t);else if(h>a)if(Math.abs(d*u-c*f)>a&&o){var p=r-s,v=i-l,m=u*u+c*c,g=p*p+v*v,y=Math.sqrt(m),x=Math.sqrt(h),b=o*Math.tan((n-Math.acos((m+h-g)/(2*y*x)))/2),_=b/x,w=b/y;Math.abs(_-1)>a&&(this._+="L"+(e+_*f)+","+(t+_*d)),this._+="A"+o+","+o+",0,0,"+ +(d*p>f*v)+","+(this._x1=e+w*u)+","+(this._y1=t+w*c)}else this._+="L"+(this._x1=e)+","+(this._y1=t)},arc:function(e,t,r,s,l,u){e=+e,t=+t,u=!!u;var c=(r=+r)*Math.cos(s),f=r*Math.sin(s),d=e+c,h=t+f,p=1^u,v=u?s-l:l-s;if(r<0)throw new Error("negative radius: "+r);null===this._x1?this._+="M"+d+","+h:(Math.abs(this._x1-d)>a||Math.abs(this._y1-h)>a)&&(this._+="L"+d+","+h),r&&(v<0&&(v=v%i+i),v>o?this._+="A"+r+","+r+",0,1,"+p+","+(e-c)+","+(t-f)+"A"+r+","+r+",0,1,"+p+","+(this._x1=d)+","+(this._y1=h):v>a&&(this._+="A"+r+","+r+",0,"+ +(v>=n)+","+p+","+(this._x1=e+r*Math.cos(l))+","+(this._y1=t+r*Math.sin(l))))},rect:function(e,t,r,n){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},toString:function(){return this._}};var u=l,c=Array.prototype.slice;function f(e){return function(){return e}}function d(e){return e[0]}function h(e){return e[1]}function p(e){return e.source}function v(e){return e.target}function m(e){var t=p,r=v,n=d,i=h,a=null;function o(){var o,s=c.call(arguments),l=t.apply(this,s),f=r.apply(this,s);if(a||(a=o=u()),e(a,+n.apply(this,(s[0]=l,s)),+i.apply(this,s),+n.apply(this,(s[0]=f,s)),+i.apply(this,s)),o)return a=null,o+""||null}return o.source=function(e){return arguments.length?(t=e,o):t},o.target=function(e){return arguments.length?(r=e,o):r},o.x=function(e){return arguments.length?(n="function"===typeof e?e:f(+e),o):n},o.y=function(e){return arguments.length?(i="function"===typeof e?e:f(+e),o):i},o.context=function(e){return arguments.length?(a=null==e?null:e,o):a},o}function g(e,t,r,n,i){e.moveTo(t,r),e.bezierCurveTo(t=(t+n)/2,r,t,i,n,i)}function y(){return m(g)}},84096:function(e,t,r){"use strict";r.d(t,{i$:function(){return p},Dq:function(){return d},g0:function(){return v}});var n=r(58176),i=r(48480),a=r(59879),o=r(82301),s=r(34823),l=r(79791);function u(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function c(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function f(e,t,r){return{y:e,m:t,d:r,H:0,M:0,S:0,L:0}}function d(e){var t=e.dateTime,r=e.date,s=e.time,l=e.periods,d=e.days,h=e.shortDays,p=e.months,v=e.shortMonths,g=w(l),y=k(l),x=w(d),b=k(d),_=w(h),Se=k(h),Ee=w(p),Ce=k(p),Le=w(v),Pe=k(v),Oe={a:function(e){return h[e.getDay()]},A:function(e){return d[e.getDay()]},b:function(e){return v[e.getMonth()]},B:function(e){return p[e.getMonth()]},c:null,d:q,e:q,f:X,H:W,I:G,j:Y,L:Z,m:K,M:$,p:function(e){return l[+(e.getHours()>=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:Me,s:Ae,S:J,u:Q,U:ee,V:te,w:re,W:ne,x:null,X:null,y:ie,Y:ae,Z:oe,"%":Te},Ie={a:function(e){return h[e.getUTCDay()]},A:function(e){return d[e.getUTCDay()]},b:function(e){return v[e.getUTCMonth()]},B:function(e){return p[e.getUTCMonth()]},c:null,d:se,e:se,f:de,H:le,I:ue,j:ce,L:fe,m:he,M:pe,p:function(e){return l[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:Me,s:Ae,S:ve,u:me,U:ge,V:ye,w:xe,W:be,x:null,X:null,y:_e,Y:we,Z:ke,"%":Te},De={a:function(e,t,r){var n=_.exec(t.slice(r));return n?(e.w=Se[n[0].toLowerCase()],r+n[0].length):-1},A:function(e,t,r){var n=x.exec(t.slice(r));return n?(e.w=b[n[0].toLowerCase()],r+n[0].length):-1},b:function(e,t,r){var n=Le.exec(t.slice(r));return n?(e.m=Pe[n[0].toLowerCase()],r+n[0].length):-1},B:function(e,t,r){var n=Ee.exec(t.slice(r));return n?(e.m=Ce[n[0].toLowerCase()],r+n[0].length):-1},c:function(e,r,n){return Fe(e,t,r,n)},d:D,e:D,f:j,H:z,I:z,j:R,L:B,m:I,M:F,p:function(e,t,r){var n=g.exec(t.slice(r));return n?(e.p=y[n[0].toLowerCase()],r+n[0].length):-1},q:O,Q:V,s:H,S:N,u:M,U:A,V:S,w:T,W:E,x:function(e,t,n){return Fe(e,r,t,n)},X:function(e,t,r){return Fe(e,s,t,r)},y:L,Y:C,Z:P,"%":U};function Re(e,t){return function(r){var n,i,a,o=[],s=-1,l=0,u=e.length;for(r instanceof Date||(r=new Date(+r));++s53)return null;"w"in d||(d.w=1),"Z"in d?(l=(s=c(f(d.y,0,1))).getUTCDay(),s=l>4||0===l?n.l6.ceil(s):(0,n.l6)(s),s=i.Z.offset(s,7*(d.V-1)),d.y=s.getUTCFullYear(),d.m=s.getUTCMonth(),d.d=s.getUTCDate()+(d.w+6)%7):(l=(s=u(f(d.y,0,1))).getDay(),s=l>4||0===l?a.wA.ceil(s):(0,a.wA)(s),s=o.Z.offset(s,7*(d.V-1)),d.y=s.getFullYear(),d.m=s.getMonth(),d.d=s.getDate()+(d.w+6)%7)}else("W"in d||"U"in d)&&("w"in d||(d.w="u"in d?d.u%7:"W"in d?1:0),l="Z"in d?c(f(d.y,0,1)).getUTCDay():u(f(d.y,0,1)).getDay(),d.m=0,d.d="W"in d?(d.w+6)%7+7*d.W-(l+5)%7:d.w+7*d.U-(l+6)%7);return"Z"in d?(d.H+=d.Z/100|0,d.M+=d.Z%100,c(d)):u(d)}}function Fe(e,t,r,n){for(var i,a,o=0,s=t.length,l=r.length;o=l)return-1;if(37===(i=t.charCodeAt(o++))){if(i=t.charAt(o++),!(a=De[i in m?t.charAt(o++):i])||(n=a(e,r,n))<0)return-1}else if(i!=r.charCodeAt(n++))return-1}return n}return Oe.x=Re(r,Oe),Oe.X=Re(s,Oe),Oe.c=Re(t,Oe),Ie.x=Re(r,Ie),Ie.X=Re(s,Ie),Ie.c=Re(t,Ie),{format:function(e){var t=Re(e+="",Oe);return t.toString=function(){return e},t},parse:function(e){var t=ze(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=Re(e+="",Ie);return t.toString=function(){return e},t},utcParse:function(e){var t=ze(e+="",!0);return t.toString=function(){return e},t}}}var h,p,v,m={"-":"",_:" ",0:"0"},g=/^\s*\d+/,y=/^%/,x=/[\\^$*+?|[\]().{}]/g;function b(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a68?1900:2e3),r+n[0].length):-1}function P(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function O(e,t,r){var n=g.exec(t.slice(r,r+1));return n?(e.q=3*n[0]-3,r+n[0].length):-1}function I(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function D(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function R(e,t,r){var n=g.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function z(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function F(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function N(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function B(e,t,r){var n=g.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function j(e,t,r){var n=g.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function U(e,t,r){var n=y.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function V(e,t,r){var n=g.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function H(e,t,r){var n=g.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function q(e,t){return b(e.getDate(),t,2)}function W(e,t){return b(e.getHours(),t,2)}function G(e,t){return b(e.getHours()%12||12,t,2)}function Y(e,t){return b(1+o.Z.count((0,s.Z)(e),e),t,3)}function Z(e,t){return b(e.getMilliseconds(),t,3)}function X(e,t){return Z(e,t)+"000"}function K(e,t){return b(e.getMonth()+1,t,2)}function $(e,t){return b(e.getMinutes(),t,2)}function J(e,t){return b(e.getSeconds(),t,2)}function Q(e){var t=e.getDay();return 0===t?7:t}function ee(e,t){return b(a.OM.count((0,s.Z)(e)-1,e),t,2)}function te(e,t){var r=e.getDay();return e=r>=4||0===r?(0,a.bL)(e):a.bL.ceil(e),b(a.bL.count((0,s.Z)(e),e)+(4===(0,s.Z)(e).getDay()),t,2)}function re(e){return e.getDay()}function ne(e,t){return b(a.wA.count((0,s.Z)(e)-1,e),t,2)}function ie(e,t){return b(e.getFullYear()%100,t,2)}function ae(e,t){return b(e.getFullYear()%1e4,t,4)}function oe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+b(t/60|0,"0",2)+b(t%60,"0",2)}function se(e,t){return b(e.getUTCDate(),t,2)}function le(e,t){return b(e.getUTCHours(),t,2)}function ue(e,t){return b(e.getUTCHours()%12||12,t,2)}function ce(e,t){return b(1+i.Z.count((0,l.Z)(e),e),t,3)}function fe(e,t){return b(e.getUTCMilliseconds(),t,3)}function de(e,t){return fe(e,t)+"000"}function he(e,t){return b(e.getUTCMonth()+1,t,2)}function pe(e,t){return b(e.getUTCMinutes(),t,2)}function ve(e,t){return b(e.getUTCSeconds(),t,2)}function me(e){var t=e.getUTCDay();return 0===t?7:t}function ge(e,t){return b(n.Ox.count((0,l.Z)(e)-1,e),t,2)}function ye(e,t){var r=e.getUTCDay();return e=r>=4||0===r?(0,n.hB)(e):n.hB.ceil(e),b(n.hB.count((0,l.Z)(e),e)+(4===(0,l.Z)(e).getUTCDay()),t,2)}function xe(e){return e.getUTCDay()}function be(e,t){return b(n.l6.count((0,l.Z)(e)-1,e),t,2)}function _e(e,t){return b(e.getUTCFullYear()%100,t,2)}function we(e,t){return b(e.getUTCFullYear()%1e4,t,4)}function ke(){return"+0000"}function Te(){return"%"}function Me(e){return+e}function Ae(e){return Math.floor(+e/1e3)}h=d({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=h.format,h.parse,v=h.utcFormat,h.utcParse},82301:function(e,t,r){"use strict";r.d(t,{a:function(){return o}});var n=r(30052),i=r(54263),a=(0,n.Z)((function(e){e.setHours(0,0,0,0)}),(function(e,t){e.setDate(e.getDate()+t)}),(function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*i.yB)/i.UD}),(function(e){return e.getDate()-1}));t.Z=a;var o=a.range},54263:function(e,t,r){"use strict";r.d(t,{UD:function(){return o},Y2:function(){return a},Ym:function(){return n},iM:function(){return s},yB:function(){return i}});var n=1e3,i=6e4,a=36e5,o=864e5,s=6048e5},81041:function(e,t,r){"use strict";r.r(t),r.d(t,{timeDay:function(){return g.Z},timeDays:function(){return g.a},timeFriday:function(){return y.mC},timeFridays:function(){return y.b$},timeHour:function(){return v},timeHours:function(){return m},timeInterval:function(){return n.Z},timeMillisecond:function(){return a},timeMilliseconds:function(){return o},timeMinute:function(){return d},timeMinutes:function(){return h},timeMonday:function(){return y.wA},timeMondays:function(){return y.bJ},timeMonth:function(){return b},timeMonths:function(){return _},timeSaturday:function(){return y.EY},timeSaturdays:function(){return y.Ff},timeSecond:function(){return u},timeSeconds:function(){return c},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 w.Z},timeYears:function(){return w.g},utcDay:function(){return C.Z},utcDays:function(){return C.y},utcFriday:function(){return L.QQ},utcFridays:function(){return L.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 L.l6},utcMondays:function(){return L.$3},utcMonth:function(){return O},utcMonths:function(){return I},utcSaturday:function(){return L.g4},utcSaturdays:function(){return L.Q_},utcSecond:function(){return u},utcSeconds:function(){return c},utcSunday:function(){return L.Ox},utcSundays:function(){return L.SU},utcThursday:function(){return L.hB},utcThursdays:function(){return L.xj},utcTuesday:function(){return L.J1},utcTuesdays:function(){return L.DK},utcWednesday:function(){return L.b3},utcWednesdays:function(){return L.uy},utcWeek:function(){return L.Ox},utcWeeks:function(){return L.SU},utcYear:function(){return D.Z},utcYears:function(){return D.D}});var n=r(30052),i=(0,n.Z)((function(){}),(function(e,t){e.setTime(+e+t)}),(function(e,t){return t-e}));i.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?(0,n.Z)((function(t){t.setTime(Math.floor(t/e)*e)}),(function(t,r){t.setTime(+t+r*e)}),(function(t,r){return(r-t)/e})):i:null};var a=i,o=i.range,s=r(54263),l=(0,n.Z)((function(e){e.setTime(e-e.getMilliseconds())}),(function(e,t){e.setTime(+e+t*s.Ym)}),(function(e,t){return(t-e)/s.Ym}),(function(e){return e.getUTCSeconds()})),u=l,c=l.range,f=(0,n.Z)((function(e){e.setTime(e-e.getMilliseconds()-e.getSeconds()*s.Ym)}),(function(e,t){e.setTime(+e+t*s.yB)}),(function(e,t){return(t-e)/s.yB}),(function(e){return e.getMinutes()})),d=f,h=f.range,p=(0,n.Z)((function(e){e.setTime(e-e.getMilliseconds()-e.getSeconds()*s.Ym-e.getMinutes()*s.yB)}),(function(e,t){e.setTime(+e+t*s.Y2)}),(function(e,t){return(t-e)/s.Y2}),(function(e){return e.getHours()})),v=p,m=p.range,g=r(82301),y=r(59879),x=(0,n.Z)((function(e){e.setDate(1),e.setHours(0,0,0,0)}),(function(e,t){e.setMonth(e.getMonth()+t)}),(function(e,t){return t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())}),(function(e){return e.getMonth()})),b=x,_=x.range,w=r(34823),k=(0,n.Z)((function(e){e.setUTCSeconds(0,0)}),(function(e,t){e.setTime(+e+t*s.yB)}),(function(e,t){return(t-e)/s.yB}),(function(e){return e.getUTCMinutes()})),T=k,M=k.range,A=(0,n.Z)((function(e){e.setUTCMinutes(0,0,0)}),(function(e,t){e.setTime(+e+t*s.Y2)}),(function(e,t){return(t-e)/s.Y2}),(function(e){return e.getUTCHours()})),S=A,E=A.range,C=r(48480),L=r(58176),P=(0,n.Z)((function(e){e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCMonth(e.getUTCMonth()+t)}),(function(e,t){return t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())}),(function(e){return e.getUTCMonth()})),O=P,I=P.range,D=r(79791)},30052:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var n=new Date,i=new Date;function a(e,t,r,o){function s(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return s.floor=function(t){return e(t=new Date(+t)),t},s.ceil=function(r){return e(r=new Date(r-1)),t(r,1),e(r),r},s.round=function(e){var t=s(e),r=s.ceil(e);return e-t0))return o;do{o.push(a=new Date(+r)),t(r,i),e(r)}while(a=t)for(;e(t),!r(t);)t.setTime(t-1)}),(function(e,n){if(e>=e)if(n<0)for(;++n<=0;)for(;t(e,-1),!r(e););else for(;--n>=0;)for(;t(e,1),!r(e););}))},r&&(s.count=function(t,a){return n.setTime(+t),i.setTime(+a),e(n),e(i),Math.floor(r(n,i))},s.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?s.filter(o?function(t){return o(t)%e===0}:function(t){return s.count(0,t)%e===0}):s:null}),s}},48480:function(e,t,r){"use strict";r.d(t,{y:function(){return o}});var n=r(30052),i=r(54263),a=(0,n.Z)((function(e){e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCDate(e.getUTCDate()+t)}),(function(e,t){return(t-e)/i.UD}),(function(e){return e.getUTCDate()-1}));t.Z=a;var o=a.range},58176:function(e,t,r){"use strict";r.d(t,{$3:function(){return p},DK:function(){return v},J1:function(){return l},Ox:function(){return o},QQ:function(){return f},Q_:function(){return x},SU:function(){return h},b3:function(){return u},fz:function(){return y},g4:function(){return d},hB:function(){return c},l6:function(){return s},uy:function(){return m},xj:function(){return g}});var n=r(30052),i=r(54263);function a(e){return(0,n.Z)((function(t){t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCDate(e.getUTCDate()+7*t)}),(function(e,t){return(t-e)/i.iM}))}var o=a(0),s=a(1),l=a(2),u=a(3),c=a(4),f=a(5),d=a(6),h=o.range,p=s.range,v=l.range,m=u.range,g=c.range,y=f.range,x=d.range},79791:function(e,t,r){"use strict";r.d(t,{D:function(){return a}});var n=r(30052),i=(0,n.Z)((function(e){e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t)}),(function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()}),(function(e){return e.getUTCFullYear()}));i.every=function(e){return isFinite(e=Math.floor(e))&&e>0?(0,n.Z)((function(t){t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,r){t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null},t.Z=i;var a=i.range},59879:function(e,t,r){"use strict";r.d(t,{$t:function(){return g},EY:function(){return d},Ff:function(){return x},Ld:function(){return m},OM:function(){return o},aU:function(){return v},b$:function(){return y},bJ:function(){return p},bL:function(){return c},mC:function(){return f},sy:function(){return l},vm:function(){return h},wA:function(){return s},zg:function(){return u}});var n=r(30052),i=r(54263);function a(e){return(0,n.Z)((function(t){t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),(function(e,t){e.setDate(e.getDate()+7*t)}),(function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*i.yB)/i.iM}))}var o=a(0),s=a(1),l=a(2),u=a(3),c=a(4),f=a(5),d=a(6),h=o.range,p=s.range,v=l.range,m=u.range,g=c.range,y=f.range,x=d.range},34823:function(e,t,r){"use strict";r.d(t,{g:function(){return a}});var n=r(30052),i=(0,n.Z)((function(e){e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,t){e.setFullYear(e.getFullYear()+t)}),(function(e,t){return t.getFullYear()-e.getFullYear()}),(function(e){return e.getFullYear()}));i.every=function(e){return isFinite(e=Math.floor(e))&&e>0?(0,n.Z)((function(t){t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,r){t.setFullYear(t.getFullYear()+r*e)})):null},t.Z=i;var a=i.range},17045:function(e,t,r){"use strict";var n=r(8709),i="function"===typeof Symbol&&"symbol"===typeof Symbol("foo"),a=Object.prototype.toString,o=Array.prototype.concat,s=Object.defineProperty,l=r(55622)(),u=s&&l,c=function(e,t,r,n){if(t in e)if(!0===n){if(e[t]===r)return}else if("function"!==typeof(i=n)||"[object Function]"!==a.call(i)||!n())return;var i;u?s(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},f=function(e,t){var r=arguments.length>2?arguments[2]:{},a=n(t);i&&(a=o.call(a,Object.getOwnPropertySymbols(t)));for(var s=0;ss*l){var h=(d-f)/s;o[c]=1e3*h}}return o}function i(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i0)return function(e,t){var r,n;for(r=new Array(e),n=0;n80*a){o=l=e[0],s=f=e[1];for(var b=a;bl&&(l=d),p>f&&(f=p);v=0!==(v=Math.max(l-o,f-s))?1/v:0}return i(y,x,a,o,s,v),x}function r(e,t,r,n,i){var a,o;if(i===A(e,t,r,n)>0)for(a=t;a=t;a-=n)o=k(a,e[a],e[a+1],o);return o&&g(o,o.next)&&(T(o),o=o.next),o}function n(e,t){if(!e)return e;t||(t=e);var r,n=e;do{if(r=!1,n.steiner||!g(n,n.next)&&0!==m(n.prev,n,n.next))n=n.next;else{if(T(n),(n=t=n.prev)===n.next)break;r=!0}}while(r||n!==t);return t}function i(e,t,r,u,c,f,h){if(e){!h&&f&&function(e,t,r,n){var i=e;do{null===i.z&&(i.z=d(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,function(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1)}(i)}(e,u,c,f);for(var p,v,m=e;e.prev!==e.next;)if(p=e.prev,v=e.next,f?o(e,u,c,f):a(e))t.push(p.i/r),t.push(e.i/r),t.push(v.i/r),T(e),e=v.next,m=v.next;else if((e=v)===m){h?1===h?i(e=s(n(e),t,r),t,r,u,c,f,2):2===h&&l(e,t,r,u,c,f):i(n(e),t,r,u,c,f,1);break}}}function a(e){var t=e.prev,r=e,n=e.next;if(m(t,r,n)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(p(t.x,t.y,r.x,r.y,n.x,n.y,i.x,i.y)&&m(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function o(e,t,r,n){var i=e.prev,a=e,o=e.next;if(m(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,c=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=d(s,l,t,r,n),h=d(u,c,t,r,n),v=e.prevZ,g=e.nextZ;v&&v.z>=f&&g&&g.z<=h;){if(v!==e.prev&&v!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,v.x,v.y)&&m(v.prev,v,v.next)>=0)return!1;if(v=v.prevZ,g!==e.prev&&g!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&m(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;v&&v.z>=f;){if(v!==e.prev&&v!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,v.x,v.y)&&m(v.prev,v,v.next)>=0)return!1;v=v.prevZ}for(;g&&g.z<=h;){if(g!==e.prev&&g!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&m(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function s(e,t,r){var i=e;do{var a=i.prev,o=i.next.next;!g(a,o)&&y(a,i,i.next,o)&&_(a,o)&&_(o,a)&&(t.push(a.i/r),t.push(i.i/r),t.push(o.i/r),T(i),T(i.next),i=e=o),i=i.next}while(i!==e);return n(i)}function l(e,t,r,a,o,s){var l=e;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&v(l,u)){var c=w(l,u);return l=n(l,l.next),c=n(c,c.next),i(l,t,r,a,o,s),void i(c,t,r,a,o,s)}u=u.next}l=l.next}while(l!==e)}function u(e,t){return e.x-t.x}function c(e,t){if(t=function(e,t){var r,n=t,i=e.x,a=e.y,o=-1/0;do{if(a<=n.y&&a>=n.next.y&&n.next.y!==n.y){var s=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>o){if(o=s,s===i){if(a===n.y)return n;if(a===n.next.y)return n.next}r=n.x=n.x&&n.x>=c&&i!==n.x&&p(ar.x||n.x===r.x&&f(r,n)))&&(r=n,h=l)),n=n.next}while(n!==u);return r}(e,t),t){var r=w(t,e);n(t,t.next),n(r,r.next)}}function f(e,t){return m(e.prev,e,t.prev)<0&&m(t.next,e,e.next)<0}function d(e,t,r,n,i){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function h(e){var t=e,r=e;do{(t.x=0&&(e-o)*(n-s)-(r-o)*(t-s)>=0&&(r-o)*(a-s)-(i-o)*(n-s)>=0}function v(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&y(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}(e,t)&&(_(e,t)&&_(t,e)&&function(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do{r.y>a!==r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==e);return n}(e,t)&&(m(e.prev,e,t.prev)||m(e,t.prev,t))||g(e,t)&&m(e.prev,e,e.next)>0&&m(t.prev,t,t.next)>0)}function m(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function g(e,t){return e.x===t.x&&e.y===t.y}function y(e,t,r,n){var i=b(m(e,t,r)),a=b(m(e,t,n)),o=b(m(r,n,e)),s=b(m(r,n,t));return i!==a&&o!==s||!(0!==i||!x(e,r,t))||!(0!==a||!x(e,n,t))||!(0!==o||!x(r,e,n))||!(0!==s||!x(r,t,n))}function x(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function b(e){return e>0?1:e<0?-1:0}function _(e,t){return m(e.prev,e,e.next)<0?m(e,t,e.next)>=0&&m(e,e.prev,t)>=0:m(e,t,e.prev)<0||m(e,e.next,t)<0}function w(e,t){var r=new M(e.i,e.x,e.y),n=new M(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function k(e,t,r,n){var i=new M(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function T(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function M(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function A(e,t,r,n){for(var i=0,a=t,o=r-n;a0&&(n+=e[i-1].length,r.holes.push(n))}return r}},2502:function(e,t,r){var n=r(68664);e.exports=function(e,t){var r,i=[],a=[],o=[],s={},l=[];function u(e){o[e]=!1,s.hasOwnProperty(e)&&Object.keys(s[e]).forEach((function(t){delete s[e][t],o[t]&&u(t)}))}function c(e){var t,n,i=!1;for(a.push(e),o[e]=!0,t=0;t=t}))}(t);for(var r,i=n(e).components.filter((function(e){return e.length>1})),a=1/0,o=0;o=55296&&y<=56319&&(w+=e[++r]),w=k?d.call(k,T,w,v):w,t?(h.value=w,p(m,v,h)):m[v]=w,++v;g=v}if(void 0===g)for(g=o(e.length),t&&(m=new t(g)),r=0;r0?1:-1}},56247:function(e,t,r){"use strict";var n=r(9953),i=Math.abs,a=Math.floor;e.exports=function(e){return isNaN(e)?0:0!==(e=Number(e))&&isFinite(e)?n(e)*a(i(e)):e}},35976:function(e,t,r){"use strict";var n=r(56247),i=Math.max;e.exports=function(e){return i(0,n(e))}},67260:function(e,t,r){"use strict";var n=r(78513),i=r(36672),a=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;e.exports=function(e,t){return function(r,u){var c,f=arguments[2],d=arguments[3];return r=Object(i(r)),n(u),c=s(r),d&&c.sort("function"===typeof d?a.call(d,r):void 0),"function"!==typeof e&&(e=c[e]),o.call(e,c,(function(e,n){return l.call(r,e)?o.call(u,f,r[e],e,r,n):t}))}}},95879:function(e,t,r){"use strict";e.exports=r(73583)()?Object.assign:r(34205)},73583:function(e){"use strict";e.exports=function(){var e,t=Object.assign;return"function"===typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},34205:function(e,t,r){"use strict";var n=r(68700),i=r(36672),a=Math.max;e.exports=function(e,t){var r,o,s,l=a(arguments.length,2);for(e=Object(i(e)),s=function(n){try{e[n]=t[n]}catch(i){r||(r=i)}},o=1;o-1}},87963:function(e){"use strict";var t=Object.prototype.toString,r=t.call("");e.exports=function(e){return"string"===typeof e||e&&"object"===typeof e&&(e instanceof String||t.call(e)===r)||!1}},43043:function(e){"use strict";var t=Object.create(null),r=Math.random;e.exports=function(){var e;do{e=r().toString(36).slice(2)}while(t[e]);return e}},32411:function(e,t,r){"use strict";var n,i=r(1496),a=r(66741),o=r(62072),s=r(8260),l=r(95426),u=Object.defineProperty;n=e.exports=function(e,t){if(!(this instanceof n))throw new TypeError("Constructor requires 'new'");l.call(this,e),t=t?a.call(t,"key+value")?"key+value":a.call(t,"key")?"key":"value":"value",u(this,"__kind__",o("",t))},i&&i(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:o((function(e){return"value"===this.__kind__?this.__list__[e]:"key+value"===this.__kind__?[e,this.__list__[e]]:e}))}),u(n.prototype,s.toStringTag,o("c","Array Iterator"))},27515:function(e,t,r){"use strict";var n=r(73051),i=r(78513),a=r(87963),o=r(66661),s=Array.isArray,l=Function.prototype.call,u=Array.prototype.some;e.exports=function(e,t){var r,c,f,d,h,p,v,m,g=arguments[2];if(s(e)||n(e)?r="array":a(e)?r="string":e=o(e),i(t),f=function(){d=!0},"array"!==r)if("string"!==r)for(c=e.next();!c.done;){if(l.call(t,g,c.value,f),d)return;c=e.next()}else for(p=e.length,h=0;h=55296&&m<=56319&&(v+=e[++h]),l.call(t,g,v,f),!d);++h);else u.call(e,(function(e){return l.call(t,g,e,f),d}))}},66661:function(e,t,r){"use strict";var n=r(73051),i=r(87963),a=r(32411),o=r(259),s=r(58095),l=r(8260).iterator;e.exports=function(e){return"function"===typeof s(e)[l]?e[l]():n(e)?new a(e):i(e)?new o(e):new a(e)}},95426:function(e,t,r){"use strict";var n,i=r(16134),a=r(95879),o=r(78513),s=r(36672),l=r(62072),u=r(55174),c=r(8260),f=Object.defineProperty,d=Object.defineProperties;e.exports=n=function(e,t){if(!(this instanceof n))throw new TypeError("Constructor requires 'new'");d(this,{__list__:l("w",s(e)),__context__:l("w",t),__nextIndex__:l("w",0)}),t&&(o(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))},delete n.prototype.constructor,d(n.prototype,a({_next:l((function(){var e;if(this.__list__)return this.__redo__&&void 0!==(e=this.__redo__.shift())?e:this.__nextIndex__=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach((function(t,r){t>=e&&(this.__redo__[r]=++t)}),this),this.__redo__.push(e)):f(this,"__redo__",l("c",[e])))})),_onDelete:l((function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(t=this.__redo__.indexOf(e))&&this.__redo__.splice(t,1),this.__redo__.forEach((function(t,r){t>e&&(this.__redo__[r]=--t)}),this)))})),_onClear:l((function(){this.__redo__&&i.call(this.__redo__),this.__nextIndex__=0}))}))),f(n.prototype,c.iterator,l((function(){return this})))},35940:function(e,t,r){"use strict";var n=r(73051),i=r(95296),a=r(87963),o=r(8260).iterator,s=Array.isArray;e.exports=function(e){return!!i(e)&&(!!s(e)||!!a(e)||!!n(e)||"function"===typeof e[o])}},259:function(e,t,r){"use strict";var n,i=r(1496),a=r(62072),o=r(8260),s=r(95426),l=Object.defineProperty;n=e.exports=function(e){if(!(this instanceof n))throw new TypeError("Constructor requires 'new'");e=String(e),s.call(this,e),l(this,"__length__",a("",e.length))},i&&i(n,s),delete n.prototype.constructor,n.prototype=Object.create(s.prototype,{_next:a((function(){if(this.__list__)return this.__nextIndex__=55296&&t<=56319?r+this.__list__[this.__nextIndex__++]:r}))}),l(n.prototype,o.toStringTag,a("c","String Iterator"))},58095:function(e,t,r){"use strict";var n=r(35940);e.exports=function(e){if(!n(e))throw new TypeError(e+" is not iterable");return e}},73523:function(e){"use strict";function t(e,t){if(void 0===e||null===e)throw new TypeError("Cannot convert first argument to object");for(var r=Object(e),n=1;n0&&o.length>i&&!o.warned){o.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=o.length,u=c,console&&console.warn&&console.warn(u)}return e}function c(){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(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=c.bind(n);return i.listener=r,n.wrapFn=i,i}function d(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"===typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(o=t[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[e];if(void 0===l)return!1;if("function"===typeof l)n(l,this,t);else{var u=l.length,c=p(l,u);for(r=0;r=0;a--)if(r[a]===t||r[a].listener===t){o=r[a].listener,i=a;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return d(this,e,!0)},a.prototype.rawListeners=function(e){return d(this,e,!1)},a.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):h.call(e,t)},a.prototype.listenerCount=h,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},60774:function(e){var t=function(){if("object"===typeof self&&self)return self;if("object"===typeof window&&window)return window;throw new Error("Unable to resolve global `this`")};e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return t()}try{return __global__||t()}finally{delete Object.prototype.__global__}}()},94908:function(e,t,r){"use strict";e.exports=r(51152)()?globalThis:r(60774)},51152:function(e){"use strict";e.exports=function(){return"object"===typeof globalThis&&!!globalThis&&globalThis.Array===Array}},92770:function(e,t,r){"use strict";var n=r(18546);e.exports=function(e){var t=typeof e;if("string"===t){var r=e;if(0===(e=+e)&&n(r))return!1}else if("number"!==t)return!1;return e-e<1}},30120:function(e,t,r){var n=r(90660);e.exports=function(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=0|+(r||0),Array.isArray(e)&&e[0]&&"number"===typeof e[0][0]){var i,a,o,s,l=e[0].length,u=e.length*l;t&&"string"!==typeof t||(t=new(n(t||"float32"))(u+r));var c=t.length-r;if(u!==c)throw new Error("source length "+u+" ("+l+"x"+e.length+") does not match destination length "+c);for(i=0,o=r;it[0]-o[0]/2&&(d=o[0]/2,h+=o[1]);return r}},32879:function(e){"use strict";function t(e,a){a||(a={}),("string"===typeof e||Array.isArray(e))&&(a.family=e);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||"",u=(e=[a.style||a.fontStyle||"",l,s].join(" ")+"px "+o,a.origin||"top");if(t.cache[o]&&s<=t.cache[o].em)return r(t.cache[o],u);var c=a.canvas||t.canvas,f=c.getContext("2d"),d={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"},h=Math.ceil(1.5*s);c.height=h,c.width=.5*h,f.font=e;var p="H",v={top:0};f.clearRect(0,0,h,h),f.textBaseline="top",f.fillStyle="black",f.fillText(p,0,0);var m=n(f.getImageData(0,0,h,h));f.clearRect(0,0,h,h),f.textBaseline="bottom",f.fillText(p,0,h);var g=n(f.getImageData(0,0,h,h));v.lineHeight=v.bottom=h-g+m,f.clearRect(0,0,h,h),f.textBaseline="alphabetic",f.fillText(p,0,h);var y=h-n(f.getImageData(0,0,h,h))-1+m;v.baseline=v.alphabetic=y,f.clearRect(0,0,h,h),f.textBaseline="middle",f.fillText(p,0,.5*h);var x=n(f.getImageData(0,0,h,h));v.median=v.middle=h-x-1+m-.5*h,f.clearRect(0,0,h,h),f.textBaseline="hanging",f.fillText(p,0,.5*h);var b=n(f.getImageData(0,0,h,h));v.hanging=h-b-1+m-.5*h,f.clearRect(0,0,h,h),f.textBaseline="ideographic",f.fillText(p,0,h);var _=n(f.getImageData(0,0,h,h));if(v.ideographic=h-_-1+m,d.upper&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.upper,0,0),v.upper=n(f.getImageData(0,0,h,h)),v.capHeight=v.baseline-v.upper),d.lower&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.lower,0,0),v.lower=n(f.getImageData(0,0,h,h)),v.xHeight=v.baseline-v.lower),d.tittle&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.tittle,0,0),v.tittle=n(f.getImageData(0,0,h,h))),d.ascent&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.ascent,0,0),v.ascent=n(f.getImageData(0,0,h,h))),d.descent&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.descent,0,0),v.descent=i(f.getImageData(0,0,h,h))),d.overshoot){f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.overshoot,0,0);var w=i(f.getImageData(0,0,h,h));v.overshoot=w-y}for(var k in v)v[k]/=s;return v.em=s,t.cache[o]=v,r(v,u)}function r(e,t){var r={};for(var n in"string"===typeof t&&(t=e[t]),e)"em"!==n&&(r[n]=e[n]-t);return r}function n(e){for(var t=e.height,r=e.data,n=3;n0;n-=4)if(0!==r[n])return Math.floor(.25*(n-3)/t)}e.exports=t,t.canvas=document.createElement("canvas"),t.cache={}},31353:function(e,t,r){"use strict";var n=r(85395),i=Object.prototype.toString,a=Object.prototype.hasOwnProperty;e.exports=function(e,t,r){if(!n(t))throw new TypeError("iterator must be a function");var o;arguments.length>=3&&(o=r),"[object Array]"===i.call(e)?function(e,t,r){for(var n=0,i=e.length;n1&&"boolean"!==typeof t)throw new o('"allowMissing" argument must be a boolean');if(null===M(/^%?[^%]*%?$/,e))throw new i("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=function(e){var t=T(e,0,1),r=T(e,-1);if("%"===t&&"%"!==r)throw new i("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==t)throw new i("invalid intrinsic syntax, expected opening `%`");var n=[];return k(e,A,(function(e,t,r,i){n[n.length]=r?k(i,S,"$1"):t||e})),n}(e),n=r.length>0?r[0]:"",a=E("%"+n+"%",t),s=a.name,u=a.value,c=!1,f=a.alias;f&&(n=f[0],w(r,_([0,1],f)));for(var d=1,h=!0;d=r.length){var y=l(u,p);u=(h=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:u[p]}else h=b(u,p),u=u[p];h&&!c&&(v[s]=u)}}return u}},85400:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],d=t[10],h=t[11],p=t[12],v=t[13],m=t[14],g=t[15];return e[0]=s*(d*g-h*m)-f*(l*g-u*m)+v*(l*h-u*d),e[1]=-(n*(d*g-h*m)-f*(i*g-a*m)+v*(i*h-a*d)),e[2]=n*(l*g-u*m)-s*(i*g-a*m)+v*(i*u-a*l),e[3]=-(n*(l*h-u*d)-s*(i*h-a*d)+f*(i*u-a*l)),e[4]=-(o*(d*g-h*m)-c*(l*g-u*m)+p*(l*h-u*d)),e[5]=r*(d*g-h*m)-c*(i*g-a*m)+p*(i*h-a*d),e[6]=-(r*(l*g-u*m)-o*(i*g-a*m)+p*(i*u-a*l)),e[7]=r*(l*h-u*d)-o*(i*h-a*d)+c*(i*u-a*l),e[8]=o*(f*g-h*v)-c*(s*g-u*v)+p*(s*h-u*f),e[9]=-(r*(f*g-h*v)-c*(n*g-a*v)+p*(n*h-a*f)),e[10]=r*(s*g-u*v)-o*(n*g-a*v)+p*(n*u-a*s),e[11]=-(r*(s*h-u*f)-o*(n*h-a*f)+c*(n*u-a*s)),e[12]=-(o*(f*m-d*v)-c*(s*m-l*v)+p*(s*d-l*f)),e[13]=r*(f*m-d*v)-c*(n*m-i*v)+p*(n*d-i*f),e[14]=-(r*(s*m-l*v)-o*(n*m-i*v)+p*(n*l-i*s)),e[15]=r*(s*d-l*f)-o*(n*d-i*f)+c*(n*l-i*s),e}},42331:function(e){e.exports=function(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},31042:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},11902:function(e){e.exports=function(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},89887:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],d=e[11],h=e[12],p=e[13],v=e[14],m=e[15];return(t*o-r*a)*(f*m-d*v)-(t*s-n*a)*(c*m-d*p)+(t*l-i*a)*(c*v-f*p)+(r*s-n*o)*(u*m-d*h)-(r*l-i*o)*(u*v-f*h)+(n*l-i*s)*(u*p-c*h)}},27812:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,d=i*o,h=i*s,p=i*l,v=a*o,m=a*s,g=a*l;return e[0]=1-f-p,e[1]=c+g,e[2]=d-m,e[3]=0,e[4]=c-g,e[5]=1-u-p,e[6]=h+v,e[7]=0,e[8]=d+m,e[9]=h-v,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},34045:function(e){e.exports=function(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(o*=u=1/u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}},45973:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,d=n*u,h=i*l,p=i*u,v=a*u,m=o*s,g=o*l,y=o*u;return e[0]=1-(h+v),e[1]=f+y,e[2]=d-g,e[3]=0,e[4]=f-y,e[5]=1-(c+v),e[6]=p+m,e[7]=0,e[8]=d+g,e[9]=p-m,e[10]=1-(c+h),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}},81472:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},14669:function(e){e.exports=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}},75262:function(e){e.exports=function(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},331:function(e){e.exports=function(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},11049:function(e){e.exports=function(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},75195:function(e){e.exports=function(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=2*a*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*a*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}},71551:function(e){e.exports=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},79576:function(e,t,r){e.exports={create:r(11902),clone:r(42331),copy:r(31042),identity:r(71551),transpose:r(88654),invert:r(95874),adjoint:r(85400),determinant:r(89887),multiply:r(91362),translate:r(31283),scale:r(10789),rotate:r(65074),rotateX:r(35545),rotateY:r(94918),rotateZ:r(15692),fromRotation:r(34045),fromRotationTranslation:r(45973),fromScaling:r(81472),fromTranslation:r(14669),fromXRotation:r(75262),fromYRotation:r(331),fromZRotation:r(11049),fromQuat:r(27812),frustum:r(75195),perspective:r(7864),perspectiveFromFieldOfView:r(35279),ortho:r(60378),lookAt:r(65551),str:r(6726)}},95874:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],d=t[10],h=t[11],p=t[12],v=t[13],m=t[14],g=t[15],y=r*s-n*o,x=r*l-i*o,b=r*u-a*o,_=n*l-i*s,w=n*u-a*s,k=i*u-a*l,T=c*v-f*p,M=c*m-d*p,A=c*g-h*p,S=f*m-d*v,E=f*g-h*v,C=d*g-h*m,L=y*C-x*E+b*S+_*A-w*M+k*T;return L?(L=1/L,e[0]=(s*C-l*E+u*S)*L,e[1]=(i*E-n*C-a*S)*L,e[2]=(v*k-m*w+g*_)*L,e[3]=(d*w-f*k-h*_)*L,e[4]=(l*A-o*C-u*M)*L,e[5]=(r*C-i*A+a*M)*L,e[6]=(m*b-p*k-g*x)*L,e[7]=(c*k-d*b+h*x)*L,e[8]=(o*E-s*A+u*T)*L,e[9]=(n*A-r*E-a*T)*L,e[10]=(p*w-v*b+g*y)*L,e[11]=(f*b-c*w-h*y)*L,e[12]=(s*M-o*S-l*T)*L,e[13]=(r*S-n*M+i*T)*L,e[14]=(v*x-p*_-m*y)*L,e[15]=(c*_-f*x+d*y)*L,e):null}},65551:function(e,t,r){var n=r(71551);e.exports=function(e,t,r,i){var a,o,s,l,u,c,f,d,h,p,v=t[0],m=t[1],g=t[2],y=i[0],x=i[1],b=i[2],_=r[0],w=r[1],k=r[2];return Math.abs(v-_)<1e-6&&Math.abs(m-w)<1e-6&&Math.abs(g-k)<1e-6?n(e):(f=v-_,d=m-w,h=g-k,p=1/Math.sqrt(f*f+d*d+h*h),a=x*(h*=p)-b*(d*=p),o=b*(f*=p)-y*h,s=y*d-x*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=d*s-h*o,u=h*a-f*s,c=f*o-d*a,(p=Math.sqrt(l*l+u*u+c*c))?(l*=p=1/p,u*=p,c*=p):(l=0,u=0,c=0),e[0]=a,e[1]=l,e[2]=f,e[3]=0,e[4]=o,e[5]=u,e[6]=d,e[7]=0,e[8]=s,e[9]=c,e[10]=h,e[11]=0,e[12]=-(a*v+o*m+s*g),e[13]=-(l*v+u*m+c*g),e[14]=-(f*v+d*m+h*g),e[15]=1,e)}},91362:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],v=t[12],m=t[13],g=t[14],y=t[15],x=r[0],b=r[1],_=r[2],w=r[3];return e[0]=x*n+b*s+_*f+w*v,e[1]=x*i+b*l+_*d+w*m,e[2]=x*a+b*u+_*h+w*g,e[3]=x*o+b*c+_*p+w*y,x=r[4],b=r[5],_=r[6],w=r[7],e[4]=x*n+b*s+_*f+w*v,e[5]=x*i+b*l+_*d+w*m,e[6]=x*a+b*u+_*h+w*g,e[7]=x*o+b*c+_*p+w*y,x=r[8],b=r[9],_=r[10],w=r[11],e[8]=x*n+b*s+_*f+w*v,e[9]=x*i+b*l+_*d+w*m,e[10]=x*a+b*u+_*h+w*g,e[11]=x*o+b*c+_*p+w*y,x=r[12],b=r[13],_=r[14],w=r[15],e[12]=x*n+b*s+_*f+w*v,e[13]=x*i+b*l+_*d+w*m,e[14]=x*a+b*u+_*h+w*g,e[15]=x*o+b*c+_*p+w*y,e}},60378:function(e){e.exports=function(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}},7864:function(e){e.exports=function(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}},35279:function(e){e.exports=function(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-(o-s)*l*.5,e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}},65074:function(e){e.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S,E=n[0],C=n[1],L=n[2],P=Math.sqrt(E*E+C*C+L*L);return Math.abs(P)<1e-6?null:(E*=P=1/P,C*=P,L*=P,i=Math.sin(r),a=Math.cos(r),o=1-a,s=t[0],l=t[1],u=t[2],c=t[3],f=t[4],d=t[5],h=t[6],p=t[7],v=t[8],m=t[9],g=t[10],y=t[11],x=E*E*o+a,b=C*E*o+L*i,_=L*E*o-C*i,w=E*C*o-L*i,k=C*C*o+a,T=L*C*o+E*i,M=E*L*o+C*i,A=C*L*o-E*i,S=L*L*o+a,e[0]=s*x+f*b+v*_,e[1]=l*x+d*b+m*_,e[2]=u*x+h*b+g*_,e[3]=c*x+p*b+y*_,e[4]=s*w+f*k+v*T,e[5]=l*w+d*k+m*T,e[6]=u*w+h*k+g*T,e[7]=c*w+p*k+y*T,e[8]=s*M+f*A+v*S,e[9]=l*M+d*A+m*S,e[10]=u*M+h*A+g*S,e[11]=c*M+p*A+y*S,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}},35545:function(e){e.exports=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+d*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=d*i-l*n,e}},94918:function(e){e.exports=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],d=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-d*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+d*i,e}},15692:function(e){e.exports=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+d*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=d*i-l*n,e}},10789:function(e){e.exports=function(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},6726:function(e){e.exports=function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}},31283:function(e){e.exports=function(e,t,r){var n,i,a,o,s,l,u,c,f,d,h,p,v=r[0],m=r[1],g=r[2];return t===e?(e[12]=t[0]*v+t[4]*m+t[8]*g+t[12],e[13]=t[1]*v+t[5]*m+t[9]*g+t[13],e[14]=t[2]*v+t[6]*m+t[10]*g+t[14],e[15]=t[3]*v+t[7]*m+t[11]*g+t[15]):(n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],e[0]=n,e[1]=i,e[2]=a,e[3]=o,e[4]=s,e[5]=l,e[6]=u,e[7]=c,e[8]=f,e[9]=d,e[10]=h,e[11]=p,e[12]=n*v+s*m+f*g+t[12],e[13]=i*v+l*m+d*g+t[13],e[14]=a*v+u*m+h*g+t[14],e[15]=o*v+c*m+p*g+t[15]),e}},88654:function(e){e.exports=function(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}},42505:function(e,t,r){"use strict";var n=r(72791),i=r(71299),a=r(98580),o=r(12018),s=r(83522),l=r(25075),u=r(68016),c=r(58404),f=r(18863),d=r(10973),h=r(25677),p=r(75686),v=r(53545),m=r(56131),g=r(32879),y=r(30120),x=r(13547).nextPow2,b=new s,_=!1;if(document.body){var w=document.body.appendChild(document.createElement("div"));w.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(w).fontStretch&&(_=!0),document.body.removeChild(w)}var k=function(e){!function(e){return"function"===typeof e&&e._gl&&e.prop&&e.texture&&e.buffer}(e)?this.gl=o(e):(e={regl:e},this.gl=e.regl._gl),this.shader=b.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=e.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(),b.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(d(e)?e:{})};k.prototype.createShader=function(){var e=this.regl,t=e({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:e.prop("count"),offset:e.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:e.this("sizeBuffer")},width:{offset:0,stride:8,buffer:e.this("sizeBuffer")},char:e.this("charBuffer"),position:e.this("position")},uniforms:{atlasSize:function(e,t){return[t.atlas.width,t.atlas.height]},atlasDim:function(e,t){return[t.atlas.cols,t.atlas.rows]},atlas:function(e,t){return t.atlas.texture},charStep:function(e,t){return t.atlas.step},em:function(e,t){return t.atlas.em},color:e.prop("color"),opacity:e.prop("opacity"),viewport:e.this("viewportArray"),scale:e.this("scale"),align:e.prop("align"),baseline:e.prop("baseline"),translate:e.this("translate"),positionOffset:e.prop("positionOffset")},primitive:"points",viewport:e.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:e,draw:t,atlas:{}}},k.prototype.update=function(e){var t=this;if("string"===typeof e)e={text:e};else if(!e)return;null!=(e=i(e,{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(e.opacity)?this.opacity=e.opacity.map((function(e){return parseFloat(e)})):this.opacity=parseFloat(e.opacity)),null!=e.viewport&&(this.viewport=f(e.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!=e.kerning&&(this.kerning=e.kerning),null!=e.offset&&("number"===typeof e.offset&&(e.offset=[e.offset,0]),this.positionOffset=y(e.offset)),e.direction&&(this.direction=e.direction),e.range&&(this.range=e.range,this.scale=[1/(e.range[2]-e.range[0]),1/(e.range[3]-e.range[1])],this.translate=[-e.range[0],-e.range[1]]),e.scale&&(this.scale=e.scale),e.translate&&(this.translate=e.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||e.font||(e.font=k.baseFontSize+"px sans-serif");var r,a=!1,o=!1;if(e.font&&(Array.isArray(e.font)?e.font:[e.font]).forEach((function(e,r){if("string"===typeof e)try{e=n.parse(e)}catch(f){e=n.parse(k.baseFontSize+"px "+e)}else e=n.parse(n.stringify(e));var i=n.stringify({size:k.baseFontSize,family:e.family,stretch:_?e.stretch:void 0,variant:e.variant,weight:e.weight,style:e.style}),s=h(e.size),l=Math.round(s[0]*p(s[1]));if(l!==t.fontSize[r]&&(o=!0,t.fontSize[r]=l),(!t.font[r]||i!=t.font[r].baseString)&&(a=!0,t.font[r]=k.fonts[i],!t.font[r])){var u=e.family.join(", "),c=[e.style];e.style!=e.variant&&c.push(e.variant),e.variant!=e.weight&&c.push(e.weight),_&&e.weight!=e.stretch&&c.push(e.stretch),t.font[r]={baseString:i,family:u,weight:e.weight,stretch:e.stretch,style:e.style,variant:e.variant,width:{},kerning:{},metrics:g(u,{origin:"top",fontSize:k.baseFontSize,fontStyle:c.join(" ")})},k.fonts[i]=t.font[r]}})),(a||o)&&this.font.forEach((function(r,i){var a=n.stringify({size:t.fontSize[i],family:r.family,stretch:_?r.stretch:void 0,variant:r.variant,weight:r.weight,style:r.style});if(t.fontAtlas[i]=t.shader.atlas[a],!t.fontAtlas[i]){var o=r.metrics;t.shader.atlas[a]=t.fontAtlas[i]={fontString:a,step:2*Math.ceil(t.fontSize[i]*o.bottom*.5),em:t.fontSize[i],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:t.regl.texture()}}null==e.text&&(e.text=t.text)})),"string"===typeof e.text&&e.position&&e.position.length>2){for(var s=Array(.5*e.position.length),d=0;d2){for(var w=!e.position[0].length,T=c.mallocFloat(2*this.count),M=0,A=0;M1?t.align[r]:t.align[0]:t.align;if("number"===typeof n)return n;switch(n){case"right":case"end":return-e;case"center":case"centre":case"middle":return.5*-e}return 0}))),null==this.baseline&&null==e.baseline&&(e.baseline=0),null!=e.baseline&&(this.baseline=e.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(e,r){var n=(t.font[r]||t.font[0]).metrics,i=0;return i+=.5*n.bottom,i+="number"===typeof e?e-n.baseline:-n[e],i*=-1}))),null!=e.color)if(e.color||(e.color="transparent"),"string"!==typeof e.color&&isNaN(e.color)){var q;if("number"===typeof e.color[0]&&e.color.length>this.counts.length){var W=e.color.length;q=c.mallocUint8(W);for(var G=(e.color.subarray||e.color.slice).bind(e.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 $=0;$1?this.counts[$]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[$]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*$,4*$+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[$]:this.opacity,baseline:null!=this.baselineOffset[$]?this.baselineOffset[$]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[$]?this.alignOffset[$]:this.alignOffset[0]:0,atlas:this.fontAtlas[$]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*$,2*$+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={},e.exports=k},12018:function(e,t,r){"use strict";var n=r(71299);function i(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*r.g.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*r.g.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function a(e){return"function"===typeof e.getContext&&"width"in e&&"height"in e}function o(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}e.exports=function(e){var t;if(e?"string"===typeof e&&(e={container:e}):e={},(e=a(e)||"string"===typeof(t=e).nodeName&&"function"===typeof t.appendChild&&"function"===typeof t.getBoundingClientRect?{container:e}:function(e){return"function"===typeof e.drawArrays||"function"===typeof e.drawElements}(e)?{gl:e}:n(e,{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||(e.pixelRatio=r.g.pixelRatio||1),e.gl)return e.gl;if(e.canvas&&(e.container=e.canvas.parentNode),e.container){if("string"===typeof e.container){var s=document.querySelector(e.container);if(!s)throw Error("Element "+e.container+" is not found");e.container=s}a(e.container)?(e.canvas=e.container,e.container=e.canvas.parentNode):e.canvas||(e.canvas=o(),e.container.appendChild(e.canvas),i(e))}else if(!e.canvas){if("undefined"===typeof document)throw Error("Not DOM environment. Use headless-gl.");e.container=document.body||document.documentElement,e.canvas=o(),e.container.appendChild(e.canvas),i(e)}return e.gl||["webgl","experimental-webgl","webgl-experimental"].some((function(r){try{e.gl=e.canvas.getContext(r,e.attrs)}catch(t){}return e.gl})),e.gl}},56068:function(e){e.exports=function(e){"string"===typeof e&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n>1,c=-7,f=r?i-1:0,d=r?-1:1,h=e[t+f];for(f+=d,a=h&(1<<-c)-1,h>>=-c,c+=s;c>0;a=256*a+e[t+f],f+=d,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+e[t+f],f+=d,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,n),a-=u}return(h?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:a-1,p=n?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+f>=1?d/l:d*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+h]=255&s,h+=p,s/=256,i-=8);for(o=o<0;e[r+h]=255&o,h+=p,o/=256,u-=8);e[r+h-p]|=128*v}},42018:function(e){"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},47216:function(e,t,r){"use strict";var n=r(84543)(),i=r(6614)("Object.prototype.toString"),a=function(e){return!(n&&e&&"object"===typeof e&&Symbol.toStringTag in e)&&"[object Arguments]"===i(e)},o=function(e){return!!a(e)||null!==e&&"object"===typeof e&&"number"===typeof e.length&&e.length>=0&&"[object Array]"!==i(e)&&"[object Function]"===i(e.callee)},s=function(){return a(arguments)}();a.isLegacyArguments=o,e.exports=s?a:o},54404:function(e){e.exports=!0},85395:function e(t){"use strict";var r,n,i=Function.prototype.toString,a="object"===typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"===typeof a&&"function"===typeof Object.defineProperty)try{r=Object.defineProperty({},"length",{get:function(){throw n}}),n={},a((function(){throw 42}),null,r)}catch(e){e!==n&&(a=null)}else a=null;var o=/^\s*class\b/,s=function(e){try{var t=i.call(e);return o.test(t)}catch(r){return!1}},l=function(e){try{return!s(e)&&(i.call(e),!0)}catch(t){return!1}},u=Object.prototype.toString,c="function"===typeof Symbol&&!!Symbol.toStringTag,f=!(0 in[,]),d=function(){return!1};if("object"===typeof document){var h=document.all;u.call(h)===u.call(document.all)&&(d=function(e){if((f||!e)&&("undefined"===typeof e||"object"===typeof e))try{var t=u.call(e);return("[object HTMLAllCollection]"===t||"[object HTML document.all class]"===t||"[object HTMLCollection]"===t||"[object Object]"===t)&&null==e("")}catch(r){}return!1})}t.exports=a?function(e){if(d(e))return!0;if(!e)return!1;if("function"!==typeof e&&"object"!==typeof e)return!1;try{a(e,null,r)}catch(t){if(t!==n)return!1}return!s(e)&&l(e)}:function(e){if(d(e))return!0;if(!e)return!1;if("function"!==typeof e&&"object"!==typeof e)return!1;if(c)return l(e);if(s(e))return!1;var t=u.call(e);return!("[object Function]"!==t&&"[object GeneratorFunction]"!==t&&!/^\[object HTML/.test(t))&&l(e)}},65481:function(e,t,r){"use strict";var n,i=Object.prototype.toString,a=Function.prototype.toString,o=/^\s*(?:function)?\*/,s=r(84543)(),l=Object.getPrototypeOf;e.exports=function(e){if("function"!==typeof e)return!1;if(o.test(a.call(e)))return!0;if(!s)return"[object GeneratorFunction]"===i.call(e);if(!l)return!1;if("undefined"===typeof n){var t=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(e){}}();n=!!t&&l(t)}return l(e)===n}},62683:function(e){"use strict";e.exports="undefined"!==typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))},64274:function(e){"use strict";e.exports=function(e){return e!==e}},15567:function(e,t,r){"use strict";var n=r(68222),i=r(17045),a=r(64274),o=r(14922),s=r(22442),l=n(o(),Number);i(l,{getPolyfill:o,implementation:a,shim:s}),e.exports=l},14922:function(e,t,r){"use strict";var n=r(64274);e.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:n}},22442:function(e,t,r){"use strict";var n=r(17045),i=r(14922);e.exports=function(){var e=i();return n(Number,{isNaN:e},{isNaN:function(){return Number.isNaN!==e}}),e}},64941:function(e){"use strict";e.exports=function(e){var t=typeof e;return null!==e&&("object"===t||"function"===t)}},10973:function(e){"use strict";var t=Object.prototype.toString;e.exports=function(e){var r;return"[object Object]"===t.call(e)&&(null===(r=Object.getPrototypeOf(e))||r===Object.getPrototypeOf({}))}},18546:function(e){"use strict";e.exports=function(e){for(var t,r=e.length,n=0;n13)&&32!==t&&133!==t&&160!==t&&5760!==t&&6158!==t&&(t<8192||t>8205)&&8232!==t&&8233!==t&&8239!==t&&8287!==t&&8288!==t&&12288!==t&&65279!==t)return!1;return!0}},89546:function(e){"use strict";e.exports=function(e){return"string"===typeof e&&(e=e.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(e)&&/[\dz]$/i.test(e)&&e.length>4))}},9187:function(e,t,r){"use strict";var n=r(31353),i=r(72077),a=r(6614),o=a("Object.prototype.toString"),s=r(84543)(),l=r(40383),u="undefined"===typeof globalThis?r.g:globalThis,c=i(),f=a("Array.prototype.indexOf",!0)||function(e,t){for(var r=0;r-1}return!!l&&function(e){var t=!1;return n(h,(function(r,n){if(!t)try{t=r.call(e)===n}catch(i){}})),t}(e)}},44517:function(e){e.exports=function(){"use strict";var e,t,r;function n(n,i){if(e)if(t){var a="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",o={};e(o),(r=i(o)).workerUrl=window.URL.createObjectURL(new Blob([a],{type:"text/javascript"}))}else t=i;else e=i}return n(["exports"],(function(e){function t(e,t){return e(t={exports:{}},t.exports),t.exports}var r="1.10.1",n=i;function i(e,t,r,n){this.cx=3*e,this.bx=3*(r-e)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*t,this.by=3*(n-t)-this.cy,this.ay=1-this.cy-this.by,this.p1x=e,this.p1y=n,this.p2x=r,this.p2y=n}i.prototype.sampleCurveX=function(e){return((this.ax*e+this.bx)*e+this.cx)*e},i.prototype.sampleCurveY=function(e){return((this.ay*e+this.by)*e+this.cy)*e},i.prototype.sampleCurveDerivativeX=function(e){return(3*this.ax*e+2*this.bx)*e+this.cx},i.prototype.solveCurveX=function(e,t){var r,n,i,a,o;for("undefined"===typeof t&&(t=1e-6),i=e,o=0;o<8;o++){if(a=this.sampleCurveX(i)-e,Math.abs(a)(n=1))return n;for(;ra?r=i:n=i,i=.5*(n-r)+r}return i},i.prototype.solve=function(e,t){return this.sampleCurveY(this.solveCurveX(e,t))};var a=o;function o(e,t){this.x=e,this.y=t}function s(e,t){if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var r=0;r=1)return 1;var t=e*e,r=t*e;return 4*(e<.5?r:3*(e-t)+r-.75)}function u(e,t,r,i){var a=new n(e,t,r,i);return function(e){return a.solve(e)}}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(e){return this.clone()._add(e)},sub:function(e){return this.clone()._sub(e)},multByPoint:function(e){return this.clone()._multByPoint(e)},divByPoint:function(e){return this.clone()._divByPoint(e)},mult:function(e){return this.clone()._mult(e)},div:function(e){return this.clone()._div(e)},rotate:function(e){return this.clone()._rotate(e)},rotateAround:function(e,t){return this.clone()._rotateAround(e,t)},matMult:function(e){return this.clone()._matMult(e)},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(e){return this.x===e.x&&this.y===e.y},dist:function(e){return Math.sqrt(this.distSqr(e))},distSqr:function(e){var t=e.x-this.x,r=e.y-this.y;return t*t+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith:function(e){return this.angleWithSep(e.x,e.y)},angleWithSep:function(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult:function(e){var t=e[0]*this.x+e[1]*this.y,r=e[2]*this.x+e[3]*this.y;return this.x=t,this.y=r,this},_add:function(e){return this.x+=e.x,this.y+=e.y,this},_sub:function(e){return this.x-=e.x,this.y-=e.y,this},_mult:function(e){return this.x*=e,this.y*=e,this},_div:function(e){return this.x/=e,this.y/=e,this},_multByPoint:function(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint:function(e){return this.x/=e.x,this.y/=e.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var e=this.y;return this.y=this.x,this.x=-e,this},_rotate:function(e){var t=Math.cos(e),r=Math.sin(e),n=t*this.x-r*this.y,i=r*this.x+t*this.y;return this.x=n,this.y=i,this},_rotateAround:function(e,t){var r=Math.cos(e),n=Math.sin(e),i=t.x+r*(this.x-t.x)-n*(this.y-t.y),a=t.y+n*(this.x-t.x)+r*(this.y-t.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(e){return e instanceof o?e:Array.isArray(e)?new o(e[0],e[1]):e};var c=u(.25,.1,.25,1);function f(e,t,r){return Math.min(r,Math.max(t,e))}function d(e,t,r){var n=r-t,i=((e-t)%n+n)%n+t;return i===t?r:i}function h(e,t,r){if(!e.length)return r(null,[]);var n=e.length,i=new Array(e.length),a=null;e.forEach((function(e,o){t(e,(function(e,t){e&&(a=e),i[o]=t,0===--n&&r(a,i)}))}))}function p(e){var t=[];for(var r in e)t.push(e[r]);return t}function v(e,t){var r=[];for(var n in e)n in t||r.push(n);return r}function m(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];for(var n=0,i=t;n>t/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,e)}return e()}function _(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function w(e,t){e.forEach((function(e){t[e]&&(t[e]=t[e].bind(t))}))}function k(e,t){return-1!==e.indexOf(t,e.length-t.length)}function T(e,t,r){var n={};for(var i in e)n[i]=t.call(r||this,e[i],i,e);return n}function M(e,t,r){var n={};for(var i in e)t.call(r||this,e[i],i,e)&&(n[i]=e[i]);return n}function A(e){return Array.isArray(e)?e.map(A):"object"===typeof e&&e?T(e,A):e}function S(e,t){for(var r=0;r=0)return!0;return!1}var E={};function C(e){E[e]||("undefined"!==typeof console&&console.warn(e),E[e]=!0)}function L(e,t,r){return(r.y-e.y)*(t.x-e.x)>(t.y-e.y)*(r.x-e.x)}function P(e){for(var t=0,r=0,n=e.length,i=n-1,a=void 0,o=void 0;r@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,r={};if(e.replace(t,(function(e,t,n,i){var a=n||i;return r[t]=!a||a.toLowerCase(),""})),r["max-age"]){var n=parseInt(r["max-age"],10);isNaN(n)?delete r["max-age"]:r["max-age"]=n}return r}var R=null;function z(e){if(null==R){var t=e.navigator?e.navigator.userAgent:null;R=!!e.safari||!(!t||!(/\b(iPad|iPhone|iPod)\b/.test(t)||t.match("Safari")&&!t.match("Chrome")))}return R}function F(e){try{var t=self[e];return t.setItem("_mapbox_test_",1),t.removeItem("_mapbox_test_"),!0}catch(r){return!1}}function N(e){return self.btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(function(e,t){return String.fromCharCode(Number("0x"+t))})))}function B(e){return decodeURIComponent(self.atob(e).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join(""))}var j,U,V,H,q=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),W=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,G=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,Y={now:q,frame:function(e){var t=W(e);return{cancel:function(){return G(t)}}},getImageData:function(e,t){void 0===t&&(t=0);var r=self.document.createElement("canvas"),n=r.getContext("2d");if(!n)throw new Error("failed to create canvas 2d context");return r.width=e.width,r.height=e.height,n.drawImage(e,0,0,e.width,e.height),n.getImageData(-t,-t,e.width+2*t,e.height+2*t)},resolveURL:function(e){return j||(j=self.document.createElement("a")),j.href=e,j.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)}},Z={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,$=!1;function J(e){!K&&H&&($?Q(e):V=e)}function Q(e){var t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t);try{if(e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,H),e.isContextLost())return;X.supported=!0}catch(r){}e.deleteTexture(t),K=!0}self.document&&((H=self.document.createElement("img")).onload=function(){V&&Q(V),V=null,$=!0},H.onerror=function(){K=!0,V=null},H.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");var ee="01";function te(){for(var e="1",t="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",r="",n=0;n<10;n++)r+=t[Math.floor(62*Math.random())];var i=432e5;return{token:[e,ee,r].join(""),tokenExpiresAt:Date.now()+i}}var re=function(e,t){this._transformRequestFn=e,this._customAccessToken=t,this._createSkuToken()};function ne(e){return 0===e.indexOf("mapbox:")}re.prototype._createSkuToken=function(){var e=te();this._skuToken=e.token,this._skuTokenExpiresAt=e.tokenExpiresAt},re.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},re.prototype.transformRequest=function(e,t){return this._transformRequestFn&&this._transformRequestFn(e,t)||{url:e}},re.prototype.normalizeStyleURL=function(e,t){if(!ne(e))return e;var r=ue(e);return r.path="/styles/v1"+r.path,this._makeAPIURL(r,this._customAccessToken||t)},re.prototype.normalizeGlyphsURL=function(e,t){if(!ne(e))return e;var r=ue(e);return r.path="/fonts/v1"+r.path,this._makeAPIURL(r,this._customAccessToken||t)},re.prototype.normalizeSourceURL=function(e,t){if(!ne(e))return e;var r=ue(e);return r.path="/v4/"+r.authority+".json",r.params.push("secure"),this._makeAPIURL(r,this._customAccessToken||t)},re.prototype.normalizeSpriteURL=function(e,t,r,n){var i=ue(e);return ne(e)?(i.path="/styles/v1"+i.path+"/sprite"+t+r,this._makeAPIURL(i,this._customAccessToken||n)):(i.path+=""+t+r,ce(i))},re.prototype.normalizeTileURL=function(e,t){if(this._isSkuTokenExpired()&&this._createSkuToken(),e&&!ne(e))return e;var r=ue(e),n=/(\.(png|jpg)\d*)(?=$)/,i=/^.+\/v4\//,a=Y.devicePixelRatio>=2||512===t?"@2x":"",o=X.supported?".webp":"$1";r.path=r.path.replace(n,""+a+o),r.path=r.path.replace(i,"/"),r.path="/v4"+r.path;var s=this._customAccessToken||se(r.params)||Z.ACCESS_TOKEN;return Z.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&r.params.push("sku="+this._skuToken),this._makeAPIURL(r,s)},re.prototype.canonicalizeTileURL=function(e,t){var r="/v4/",n=/\.[\w]+$/,i=ue(e);if(!i.path.match(/(^\/v4\/)/)||!i.path.match(n))return e;var a="mapbox://tiles/";a+=i.path.replace(r,"");var o=i.params;return t&&(o=o.filter((function(e){return!e.match(/^access_token=/)}))),o.length&&(a+="?"+o.join("&")),a},re.prototype.canonicalizeTileset=function(e,t){for(var r=!!t&&ne(t),n=[],i=0,a=e.tiles||[];i=1&&self.localStorage.setItem(t,JSON.stringify(this.eventData))}catch(n){C("Unable to write to LocalStorage")}},he.prototype.processRequests=function(e){},he.prototype.postEvent=function(e,t,n,i){var a=this;if(Z.EVENTS_URL){var o=ue(Z.EVENTS_URL);o.params.push("access_token="+(i||Z.ACCESS_TOKEN||""));var s={event:this.type,created:new Date(e).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:ee,userId:this.anonId},l=t?m(s,t):s,u={url:ce(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([l])};this.pendingRequest=Ze(u,(function(e){a.pendingRequest=null,n(e),a.saveEventData(),a.processRequests(i)}))}},he.prototype.queueRequest=function(e,t){this.queue.push(e),this.processRequests(t)};var pe,ve,me=function(e){function t(){e.call(this,"map.load"),this.success={},this.skuToken=""}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.postMapLoadEvent=function(e,t,r,n){this.skuToken=r,(Z.EVENTS_URL&&n||Z.ACCESS_TOKEN&&Array.isArray(e)&&e.some((function(e){return ne(e)||ae(e)})))&&this.queueRequest({id:t,timestamp:Date.now()},n)},t.prototype.processRequests=function(e){var t=this;if(!this.pendingRequest&&0!==this.queue.length){var r=this.queue.shift(),n=r.id,i=r.timestamp;n&&this.success[n]||(this.anonId||this.fetchEventData(),_(this.anonId)||(this.anonId=b()),this.postEvent(i,{skuToken:this.skuToken},(function(e){e||n&&(t.success[n]=!0)}),e))}},t}(he),ge=function(e){function t(t){e.call(this,"appUserTurnstile"),this._customAccessToken=t}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.postTurnstileEvent=function(e,t){Z.EVENTS_URL&&Z.ACCESS_TOKEN&&Array.isArray(e)&&e.some((function(e){return ne(e)||ae(e)}))&&this.queueRequest(Date.now(),t)},t.prototype.processRequests=function(e){var t=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var r=de(Z.ACCESS_TOKEN),n=r?r.u:Z.ACCESS_TOKEN,i=n!==this.eventData.tokenU;_(this.anonId)||(this.anonId=b(),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(e){e||(t.eventData.lastSuccess=a,t.eventData.tokenU=n)}),e)}},t}(he),ye=new ge,xe=ye.postTurnstileEvent.bind(ye),be=new me,_e=be.postMapLoadEvent.bind(be),we="mapbox-tiles",ke=500,Te=50,Me=42e4;function Ae(){self.caches&&!pe&&(pe=self.caches.open(we))}function Se(e,t){if(void 0===ve)try{new Response(new ReadableStream),ve=!0}catch(r){ve=!1}ve?t(e.body):e.blob().then(t)}function Ee(e,t,r){if(Ae(),pe){var n={status:t.status,statusText:t.statusText,headers:new self.Headers};t.headers.forEach((function(e,t){return n.headers.set(t,e)}));var i=D(t.headers.get("Cache-Control")||"");i["no-store"]||(i["max-age"]&&n.headers.set("Expires",new Date(r+1e3*i["max-age"]).toUTCString()),new Date(n.headers.get("Expires")).getTime()-rDate.now()&&!r["no-cache"]}var Oe,Ie=1/0;function De(e){++Ie>Te&&(e.getActor().send("enforceCacheSizeLimit",ke),Ie=0)}function Re(e){Ae(),pe&&pe.then((function(t){t.keys().then((function(r){for(var n=0;n=200&&r.status<300||0===r.status)&&null!==r.response){var n=r.response;if("json"===e.type)try{n=JSON.parse(r.response)}catch(i){return t(i)}t(null,n,r.getResponseHeader("Cache-Control"),r.getResponseHeader("Expires"))}else t(new je(r.statusText,r.status,e.url))},r.send(e.body),{cancel:function(){return r.abort()}}}var We=function(e,t){if(!Ve(e.url)){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty("signal"))return He(e,t);if(I()&&self.worker&&self.worker.actor){var r=!0;return self.worker.actor.send("getResource",e,t,void 0,r)}}return qe(e,t)},Ge=function(e,t){return We(m(e,{type:"json"}),t)},Ye=function(e,t){return We(m(e,{type:"arrayBuffer"}),t)},Ze=function(e,t){return We(m(e,{method:"POST"}),t)};function Xe(e){var t=self.document.createElement("a");return t.href=e,t.protocol===self.document.location.protocol&&t.host===self.document.location.host}var Ke,$e,Je="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Qe(e,t,r,n){var i=new self.Image,a=self.URL;i.onload=function(){t(null,i),a.revokeObjectURL(i.src)},i.onerror=function(){return t(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(e)],{type:"image/png"});i.cacheControl=r,i.expires=n,i.src=e.byteLength?a.createObjectURL(o):Je}function et(e,t){var r=new self.Blob([new Uint8Array(e)],{type:"image/png"});self.createImageBitmap(r).then((function(e){t(null,e)})).catch((function(e){t(new Error("Could not load image because of "+e.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))}))}Ke=[],$e=0;var tt=function e(t,r){if(X.supported&&(t.headers||(t.headers={}),t.headers.accept="image/webp,*/*"),$e>=Z.MAX_PARALLEL_IMAGE_REQUESTS){var n={requestParameters:t,callback:r,cancelled:!1,cancel:function(){this.cancelled=!0}};return Ke.push(n),n}$e++;var i=!1,a=function(){if(!i)for(i=!0,$e--;Ke.length&&$e0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},st.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this};var lt={$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"}}},ut=function(e,t,r,n){this.message=(e?e+": ":"")+r,n&&(this.identifier=n),null!==t&&void 0!==t&&t.__line__&&(this.line=t.__line__)};function ct(e){var t=e.key,r=e.value;return r?[new ut(t,r,"constants have been deprecated as of v8")]:[]}function ft(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];for(var n=0,i=t;n":"value"===e.itemType.kind?"array":"array<"+t+">"}return e.kind}var Ct=[mt,gt,yt,xt,bt,Mt,_t,St(wt),At];function Lt(e,t){if("error"===t.kind)return null;if("array"===e.kind){if("array"===t.kind&&(0===t.N&&"value"===t.itemType.kind||!Lt(e.itemType,t.itemType))&&("number"!==typeof e.N||e.N===t.N))return null}else{if(e.kind===t.kind)return null;if("value"===e.kind)for(var r=0,n=Ct;r255?255:e}function i(e){return e<0?0:e>1?1:e}function a(e){return"%"===e[e.length-1]?n(parseFloat(e)/100*255):n(parseInt(e))}function o(e){return"%"===e[e.length-1]?i(parseFloat(e)/100):i(parseFloat(e))}function s(e,t,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?e+(t-e)*r*6:2*r<1?t:3*r<2?e+(t-e)*(2/3-r)*6:e}function l(e){var t,i=e.replace(/ /g,"").toLowerCase();if(i in r)return r[i].slice();if("#"===i[0])return 4===i.length?(t=parseInt(i.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===i.length&&(t=parseInt(i.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;var l=i.indexOf("("),u=i.indexOf(")");if(-1!==l&&u+1===i.length){var c=i.substr(0,l),f=i.substr(l+1,u-(l+1)).split(","),d=1;switch(c){case"rgba":if(4!==f.length)return null;d=o(f.pop());case"rgb":return 3!==f.length?null:[a(f[0]),a(f[1]),a(f[2]),d];case"hsla":if(4!==f.length)return null;d=o(f.pop());case"hsl":if(3!==f.length)return null;var h=(parseFloat(f[0])%360+360)%360/360,p=o(f[1]),v=o(f[2]),m=v<=.5?v*(p+1):v+p-v*p,g=2*v-m;return[n(255*s(g,m,h+1/3)),n(255*s(g,m,h)),n(255*s(g,m,h-1/3)),d];default:return null}}return null}try{t.parseCSSColor=l}catch(u){}})),Dt=It.parseCSSColor,Rt=function(e,t,r,n){void 0===n&&(n=1),this.r=e,this.g=t,this.b=r,this.a=n};Rt.parse=function(e){if(e){if(e instanceof Rt)return e;if("string"===typeof e){var t=Dt(e);if(t)return new Rt(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3])}}},Rt.prototype.toString=function(){var e=this.toArray(),t=e[0],r=e[1],n=e[2],i=e[3];return"rgba("+Math.round(t)+","+Math.round(r)+","+Math.round(n)+","+i+")"},Rt.prototype.toArray=function(){var e=this,t=e.r,r=e.g,n=e.b,i=e.a;return 0===i?[0,0,0,0]:[255*t/i,255*r/i,255*n/i,i]},Rt.black=new Rt(0,0,0,1),Rt.white=new Rt(1,1,1,1),Rt.transparent=new Rt(0,0,0,0),Rt.red=new Rt(1,0,0,1);var zt=function(e,t,r){this.sensitivity=e?t?"variant":"case":t?"accent":"base",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};zt.prototype.compare=function(e,t){return this.collator.compare(e,t)},zt.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Ft=function(e,t,r,n,i){this.text=e,this.image=t,this.scale=r,this.fontStack=n,this.textColor=i},Nt=function(e){this.sections=e};Nt.fromString=function(e){return new Nt([new Ft(e,null,null,null,null)])},Nt.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(e){return 0!==e.text.length||e.image&&0!==e.image.name.length}))},Nt.factory=function(e){return e instanceof Nt?e:Nt.fromString(e)},Nt.prototype.toString=function(){return 0===this.sections.length?"":this.sections.map((function(e){return e.text})).join("")},Nt.prototype.serialize=function(){for(var e=["format"],t=0,r=this.sections;t=0&&e<=255&&"number"===typeof t&&t>=0&&t<=255&&"number"===typeof r&&r>=0&&r<=255?"undefined"===typeof n||"number"===typeof n&&n>=0&&n<=1?null:"Invalid rgba value ["+[e,t,r,n].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+("number"===typeof n?[e,t,r,n]:[e,t,r]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function Ut(e){if(null===e)return!0;if("string"===typeof e)return!0;if("boolean"===typeof e)return!0;if("number"===typeof e)return!0;if(e instanceof Rt)return!0;if(e instanceof zt)return!0;if(e instanceof Nt)return!0;if(e instanceof Bt)return!0;if(Array.isArray(e)){for(var t=0,r=e;t2){var s=e[1];if("string"!==typeof s||!(s in Gt)||"object"===s)return t.error('The item type argument of "array" must be one of string, number, boolean',1);a=Gt[s],n++}else a=wt;if(e.length>3){if(null!==e[2]&&("number"!==typeof e[2]||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to "array" must be a positive integer literal',2);o=e[2],n++}r=St(a,o)}else r=Gt[i];for(var l=[];n1)&&t.push(n)}}return t.concat(this.args.map((function(e){return e.serialize()})))};var Zt=function(e){this.type=Mt,this.sections=e};Zt.parse=function(e,t){if(e.length<2)return t.error("Expected at least one argument.");var r=e[1];if(!Array.isArray(r)&&"object"===typeof r)return t.error("First argument must be an image or text section.");for(var n=[],i=!1,a=1;a<=e.length-1;++a){var o=e[a];if(i&&"object"===typeof o&&!Array.isArray(o)){i=!1;var s=null;if(o["font-scale"]&&!(s=t.parse(o["font-scale"],1,gt)))return null;var l=null;if(o["text-font"]&&!(l=t.parse(o["text-font"],1,St(yt))))return null;var u=null;if(o["text-color"]&&!(u=t.parse(o["text-color"],1,bt)))return null;var c=n[n.length-1];c.scale=s,c.font=l,c.textColor=u}else{var f=t.parse(e[a],1,wt);if(!f)return null;var d=f.type.kind;if("string"!==d&&"value"!==d&&"null"!==d&&"resolvedImage"!==d)return t.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,n.push({content:f,scale:null,font:null,textColor:null})}}return new Zt(n)},Zt.prototype.evaluate=function(e){var t=function(t){var r=t.content.evaluate(e);return Vt(r)===At?new Ft("",r,null,null,null):new Ft(Ht(r),null,t.scale?t.scale.evaluate(e):null,t.font?t.font.evaluate(e).join(","):null,t.textColor?t.textColor.evaluate(e):null)};return new Nt(this.sections.map(t))},Zt.prototype.eachChild=function(e){for(var t=0,r=this.sections;t-1),r},Xt.prototype.eachChild=function(e){e(this.input)},Xt.prototype.outputDefined=function(){return!1},Xt.prototype.serialize=function(){return["image",this.input.serialize()]};var Kt={"to-boolean":xt,"to-color":bt,"to-number":gt,"to-string":yt},$t=function(e,t){this.type=e,this.args=t};$t.parse=function(e,t){if(e.length<2)return t.error("Expected at least one argument.");var r=e[0];if(("to-boolean"===r||"to-string"===r)&&2!==e.length)return t.error("Expected one argument.");for(var n=Kt[r],i=[],a=1;a4?"Invalid rbga value "+JSON.stringify(t)+": expected an array containing either three or four numeric values.":jt(t[0],t[1],t[2],t[3])))return new Rt(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new Wt(r||"Could not parse color from value '"+("string"===typeof t?t:String(JSON.stringify(t)))+"'")}if("number"===this.type.kind){for(var o=null,s=0,l=this.args;s=t[2])&&!(e[1]<=t[1])&&!(e[3]>=t[3])}function lr(e,t){var r=ar(e[0]),n=or(e[1]),i=Math.pow(2,t.z);return[Math.round(r*i*nr),Math.round(n*i*nr)]}function ur(e,t,r){var n=e[0]-t[0],i=e[1]-t[1],a=e[0]-r[0],o=e[1]-r[1];return n*o-a*i===0&&n*a<=0&&i*o<=0}function cr(e,t,r){return t[1]>e[1]!==r[1]>e[1]&&e[0]<(r[0]-t[0])*(e[1]-t[1])/(r[1]-t[1])+t[0]}function fr(e,t){for(var r=!1,n=0,i=t.length;n0&&f<0||c<0&&f>0}function vr(e,t,r,n){var i=[t[0]-e[0],t[1]-e[1]];return 0!==hr([n[0]-r[0],n[1]-r[1]],i)&&!(!pr(e,t,r,n)||!pr(r,n,e,t))}function mr(e,t,r){for(var n=0,i=r;nr[2]){var i=.5*n,a=e[0]-r[0]>i?-n:r[0]-e[0]>i?n:0;0===a&&(a=e[0]-r[2]>i?-n:r[2]-e[0]>i?n:0),e[0]+=a}ir(t,e)}function wr(e){e[0]=e[1]=1/0,e[2]=e[3]=-1/0}function kr(e,t,r,n){for(var i=Math.pow(2,n.z)*nr,a=[n.x*nr,n.y*nr],o=[],s=0,l=e;s=0)return!1;var r=!0;return e.eachChild((function(e){r&&!Lr(e,t)&&(r=!1)})),r}Sr.parse=function(e,t){if(2!==e.length)return t.error("'within' expression requires exactly one argument, but found "+(e.length-1)+" instead.");if(Ut(e[1])){var r=e[1];if("FeatureCollection"===r.type)for(var n=0;nt))throw new Wt("Input is not a number.");o=s-1}return 0}Or.prototype.parse=function(e,t,r,n,i){return void 0===i&&(i={}),t?this.concat(t,r,n)._parse(e,i):this._parse(e,i)},Or.prototype._parse=function(e,t){function r(e,t,r){return"assert"===r?new Yt(t,[e]):"coerce"===r?new $t(t,[e]):e}if(null!==e&&"string"!==typeof e&&"boolean"!==typeof e&&"number"!==typeof e||(e=["literal",e]),Array.isArray(e)){if(0===e.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var n=e[0];if("string"!==typeof n)return this.error("Expression name must be a string, but found "+typeof n+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var i=this.registry[n];if(i){var a=i.parse(e,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=r(a,o,t.typeAnnotation||"coerce");else a=r(a,o,t.typeAnnotation||"assert")}if(!(a instanceof qt)&&"resolvedImage"!==a.type.kind&&Ir(a)){var l=new Qt;try{a=new qt(a.type,a.evaluate(l))}catch(u){return this.error(u.message),null}}return a}return this.error('Unknown expression "'+n+'". If you wanted a literal array, use ["literal", [...]].',0)}return"undefined"===typeof e?this.error("'undefined' value invalid. Use null instead."):"object"===typeof e?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof e+" instead.")},Or.prototype.concat=function(e,t,r){var n="number"===typeof e?this.path.concat(e):this.path,i=r?this.scope.concat(r):this.scope;return new Or(this.registry,n,t||null,i,this.errors)},Or.prototype.error=function(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];var n=""+this.key+t.map((function(e){return"["+e+"]"})).join("");this.errors.push(new pt(n,e))},Or.prototype.checkSubtype=function(e,t){var r=Lt(e,t);return r&&this.error(r),r};var Rr=function(e,t,r){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(var n=0,i=r;n=o)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',l);var c=t.parse(s,u,i);if(!c)return null;i=i||c.type,n.push([o,c])}return new Rr(i,r,n)},Rr.prototype.evaluate=function(e){var t=this.labels,r=this.outputs;if(1===t.length)return r[0].evaluate(e);var n=this.input.evaluate(e);if(n<=t[0])return r[0].evaluate(e);var i=t.length;return n>=t[i-1]?r[i-1].evaluate(e):r[Dr(t,n)].evaluate(e)},Rr.prototype.eachChild=function(e){e(this.input);for(var t=0,r=this.outputs;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e};var Br=Object.freeze({__proto__:null,number:zr,color:Fr,array:Nr}),jr=.95047,Ur=1,Vr=1.08883,Hr=4/29,qr=6/29,Wr=3*qr*qr,Gr=qr*qr*qr,Yr=Math.PI/180,Zr=180/Math.PI;function Xr(e){return e>Gr?Math.pow(e,1/3):e/Wr+Hr}function Kr(e){return e>qr?e*e*e:Wr*(e-Hr)}function $r(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Jr(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function Qr(e){var t=Jr(e.r),r=Jr(e.g),n=Jr(e.b),i=Xr((.4124564*t+.3575761*r+.1804375*n)/jr),a=Xr((.2126729*t+.7151522*r+.072175*n)/Ur);return{l:116*a-16,a:500*(i-a),b:200*(a-Xr((.0193339*t+.119192*r+.9503041*n)/Vr)),alpha:e.a}}function en(e){var t=(e.l+16)/116,r=isNaN(e.a)?t:t+e.a/500,n=isNaN(e.b)?t:t-e.b/200;return t=Ur*Kr(t),r=jr*Kr(r),n=Vr*Kr(n),new Rt($r(3.2404542*r-1.5371385*t-.4985314*n),$r(-.969266*r+1.8760108*t+.041556*n),$r(.0556434*r-.2040259*t+1.0572252*n),e.alpha)}function tn(e,t,r){return{l:zr(e.l,t.l,r),a:zr(e.a,t.a,r),b:zr(e.b,t.b,r),alpha:zr(e.alpha,t.alpha,r)}}function rn(e){var t=Qr(e),r=t.l,n=t.a,i=t.b,a=Math.atan2(i,n)*Zr;return{h:a<0?a+360:a,c:Math.sqrt(n*n+i*i),l:r,alpha:e.a}}function nn(e){var t=e.h*Yr,r=e.c;return en({l:e.l,a:Math.cos(t)*r,b:Math.sin(t)*r,alpha:e.alpha})}function an(e,t,r){var n=t-e;return e+r*(n>180||n<-180?n-360*Math.round(n/360):n)}function on(e,t,r){return{h:an(e.h,t.h,r),c:zr(e.c,t.c,r),l:zr(e.l,t.l,r),alpha:zr(e.alpha,t.alpha,r)}}var sn={forward:Qr,reverse:en,interpolate:tn},ln={forward:rn,reverse:nn,interpolate:on},un=Object.freeze({__proto__:null,lab:sn,hcl:ln}),cn=function(e,t,r,n,i){this.type=e,this.operator=t,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var a=0,o=i;a1})))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);n={name:"cubic-bezier",controlPoints:s}}if(e.length-1<4)return t.error("Expected at least 4 arguments, but found only "+(e.length-1)+".");if((e.length-1)%2!==0)return t.error("Expected an even number of arguments.");if(!(i=t.parse(i,2,gt)))return null;var l=[],u=null;"interpolate-hcl"===r||"interpolate-lab"===r?u=bt:t.expectedType&&"value"!==t.expectedType.kind&&(u=t.expectedType);for(var c=0;c=f)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',h);var v=t.parse(d,p,u);if(!v)return null;u=u||v.type,l.push([f,v])}return"number"===u.kind||"color"===u.kind||"array"===u.kind&&"number"===u.itemType.kind&&"number"===typeof u.N?new cn(u,r,n,i,l):t.error("Type "+Et(u)+" is not interpolatable.")},cn.prototype.evaluate=function(e){var t=this.labels,r=this.outputs;if(1===t.length)return r[0].evaluate(e);var n=this.input.evaluate(e);if(n<=t[0])return r[0].evaluate(e);var i=t.length;if(n>=t[i-1])return r[i-1].evaluate(e);var a=Dr(t,n),o=t[a],s=t[a+1],l=cn.interpolationFactor(this.interpolation,n,o,s),u=r[a].evaluate(e),c=r[a+1].evaluate(e);return"interpolate"===this.operator?Br[this.type.kind.toLowerCase()](u,c,l):"interpolate-hcl"===this.operator?ln.reverse(ln.interpolate(ln.forward(u),ln.forward(c),l)):sn.reverse(sn.interpolate(sn.forward(u),sn.forward(c),l))},cn.prototype.eachChild=function(e){e(this.input);for(var t=0,r=this.outputs;t=r.length)throw new Wt("Array index out of bounds: "+t+" > "+(r.length-1)+".");if(t!==Math.floor(t))throw new Wt("Array index must be an integer, but found "+t+" instead.");return r[t]},pn.prototype.eachChild=function(e){e(this.index),e(this.input)},pn.prototype.outputDefined=function(){return!1},pn.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var vn=function(e,t){this.type=xt,this.needle=e,this.haystack=t};vn.parse=function(e,t){if(3!==e.length)return t.error("Expected 2 arguments, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1,wt),n=t.parse(e[2],2,wt);return r&&n?Pt(r.type,[xt,yt,gt,mt,wt])?new vn(r,n):t.error("Expected first argument to be of type boolean, string, number or null, but found "+Et(r.type)+" instead"):null},vn.prototype.evaluate=function(e){var t=this.needle.evaluate(e),r=this.haystack.evaluate(e);if(!r)return!1;if(!Ot(t,["boolean","string","number","null"]))throw new Wt("Expected first argument to be of type boolean, string, number or null, but found "+Et(Vt(t))+" instead.");if(!Ot(r,["string","array"]))throw new Wt("Expected second argument to be of type array or string, but found "+Et(Vt(r))+" instead.");return r.indexOf(t)>=0},vn.prototype.eachChild=function(e){e(this.needle),e(this.haystack)},vn.prototype.outputDefined=function(){return!0},vn.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var mn=function(e,t,r){this.type=gt,this.needle=e,this.haystack=t,this.fromIndex=r};mn.parse=function(e,t){if(e.length<=2||e.length>=5)return t.error("Expected 3 or 4 arguments, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1,wt),n=t.parse(e[2],2,wt);if(!r||!n)return null;if(!Pt(r.type,[xt,yt,gt,mt,wt]))return t.error("Expected first argument to be of type boolean, string, number or null, but found "+Et(r.type)+" instead");if(4===e.length){var i=t.parse(e[3],3,gt);return i?new mn(r,n,i):null}return new mn(r,n)},mn.prototype.evaluate=function(e){var t=this.needle.evaluate(e),r=this.haystack.evaluate(e);if(!Ot(t,["boolean","string","number","null"]))throw new Wt("Expected first argument to be of type boolean, string, number or null, but found "+Et(Vt(t))+" instead.");if(!Ot(r,["string","array"]))throw new Wt("Expected second argument to be of type array or string, but found "+Et(Vt(r))+" instead.");if(this.fromIndex){var n=this.fromIndex.evaluate(e);return r.indexOf(t,n)}return r.indexOf(t)},mn.prototype.eachChild=function(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)},mn.prototype.outputDefined=function(){return!1},mn.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var gn=function(e,t,r,n,i,a){this.inputType=e,this.type=t,this.input=r,this.cases=n,this.outputs=i,this.otherwise=a};gn.parse=function(e,t){if(e.length<5)return t.error("Expected at least 4 arguments, but found only "+(e.length-1)+".");if(e.length%2!==1)return t.error("Expected an even number of arguments.");var r,n;t.expectedType&&"value"!==t.expectedType.kind&&(n=t.expectedType);for(var i={},a=[],o=2;oNumber.MAX_SAFE_INTEGER)return u.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if("number"===typeof d&&Math.floor(d)!==d)return u.error("Numeric branch labels must be integer values.");if(r){if(u.checkSubtype(r,Vt(d)))return null}else r=Vt(d);if("undefined"!==typeof i[String(d)])return u.error("Branch labels must be unique.");i[String(d)]=a.length}var h=t.parse(l,o,n);if(!h)return null;n=n||h.type,a.push(h)}var p=t.parse(e[1],1,wt);if(!p)return null;var v=t.parse(e[e.length-1],e.length-1,n);return v?"value"!==p.type.kind&&t.concat(1).checkSubtype(r,p.type)?null:new gn(r,n,p,i,a,v):null},gn.prototype.evaluate=function(e){var t=this.input.evaluate(e);return(Vt(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)},gn.prototype.eachChild=function(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)},gn.prototype.outputDefined=function(){return this.outputs.every((function(e){return e.outputDefined()}))&&this.otherwise.outputDefined()},gn.prototype.serialize=function(){for(var e=this,t=["match",this.input.serialize()],r=[],n={},i=0,a=Object.keys(this.cases).sort();ir}function Mn(e,t,r){return t<=r}function An(e,t,r){return t>=r}function Sn(e,t,r,n){return 0===n.compare(t,r)}function En(e,t,r,n){return!Sn(e,t,r,n)}function Cn(e,t,r,n){return n.compare(t,r)<0}function Ln(e,t,r,n){return n.compare(t,r)>0}function Pn(e,t,r,n){return n.compare(t,r)<=0}function On(e,t,r,n){return n.compare(t,r)>=0}function In(e,t,r){var n="=="!==e&&"!="!==e;return function(){function i(e,t,r){this.type=xt,this.lhs=e,this.rhs=t,this.collator=r,this.hasUntypedArgument="value"===e.type.kind||"value"===t.type.kind}return i.parse=function(e,t){if(3!==e.length&&4!==e.length)return t.error("Expected two or three arguments.");var r=e[0],a=t.parse(e[1],1,wt);if(!a)return null;if(!bn(r,a.type))return t.concat(1).error('"'+r+"\" comparisons are not supported for type '"+Et(a.type)+"'.");var o=t.parse(e[2],2,wt);if(!o)return null;if(!bn(r,o.type))return t.concat(2).error('"'+r+"\" comparisons are not supported for type '"+Et(o.type)+"'.");if(a.type.kind!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return t.error("Cannot compare types '"+Et(a.type)+"' and '"+Et(o.type)+"'.");n&&("value"===a.type.kind&&"value"!==o.type.kind?a=new Yt(o.type,[a]):"value"!==a.type.kind&&"value"===o.type.kind&&(o=new Yt(a.type,[o])));var s=null;if(4===e.length){if("string"!==a.type.kind&&"string"!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return t.error("Cannot use collator to compare non-string types.");if(!(s=t.parse(e[3],3,Tt)))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(n&&this.hasUntypedArgument){var s=Vt(a),l=Vt(o);if(s.kind!==l.kind||"string"!==s.kind&&"number"!==s.kind)throw new Wt('Expected arguments for "'+e+'" to be (string, string) or (number, number), but found ('+s.kind+", "+l.kind+") instead.")}if(this.collator&&!n&&this.hasUntypedArgument){var u=Vt(a),c=Vt(o);if("string"!==u.kind||"string"!==c.kind)return t(i,a,o)}return this.collator?r(i,a,o,this.collator.evaluate(i)):t(i,a,o)},i.prototype.eachChild=function(e){e(this.lhs),e(this.rhs),this.collator&&e(this.collator)},i.prototype.outputDefined=function(){return!0},i.prototype.serialize=function(){var t=[e];return this.eachChild((function(e){t.push(e.serialize())})),t},i}()}xn.parse=function(e,t){if(e.length<=2||e.length>=5)return t.error("Expected 3 or 4 arguments, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1,wt),n=t.parse(e[2],2,gt);if(!r||!n)return null;if(!Pt(r.type,[St(wt),yt,wt]))return t.error("Expected first argument to be of type array or string, but found "+Et(r.type)+" instead");if(4===e.length){var i=t.parse(e[3],3,gt);return i?new xn(r.type,r,n,i):null}return new xn(r.type,r,n)},xn.prototype.evaluate=function(e){var t=this.input.evaluate(e),r=this.beginIndex.evaluate(e);if(!Ot(t,["string","array"]))throw new Wt("Expected first argument to be of type array or string, but found "+Et(Vt(t))+" instead.");if(this.endIndex){var n=this.endIndex.evaluate(e);return t.slice(r,n)}return t.slice(r)},xn.prototype.eachChild=function(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)},xn.prototype.outputDefined=function(){return!1},xn.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};var Dn=In("==",_n,Sn),Rn=In("!=",wn,En),zn=In("<",kn,Cn),Fn=In(">",Tn,Ln),Nn=In("<=",Mn,Pn),Bn=In(">=",An,On),jn=function(e,t,r,n,i){this.type=yt,this.number=e,this.locale=t,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i};jn.parse=function(e,t){if(3!==e.length)return t.error("Expected two arguments.");var r=t.parse(e[1],1,gt);if(!r)return null;var n=e[2];if("object"!==typeof n||Array.isArray(n))return t.error("NumberFormat options argument must be an object.");var i=null;if(n.locale&&!(i=t.parse(n.locale,1,yt)))return null;var a=null;if(n.currency&&!(a=t.parse(n.currency,1,yt)))return null;var o=null;if(n["min-fraction-digits"]&&!(o=t.parse(n["min-fraction-digits"],1,gt)))return null;var s=null;return n["max-fraction-digits"]&&!(s=t.parse(n["max-fraction-digits"],1,gt))?null:new jn(r,i,a,o,s)},jn.prototype.evaluate=function(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))},jn.prototype.eachChild=function(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)},jn.prototype.outputDefined=function(){return!1},jn.prototype.serialize=function(){var e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]};var Un=function(e){this.type=gt,this.input=e};Un.parse=function(e,t){if(2!==e.length)return t.error("Expected 1 argument, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1);return r?"array"!==r.type.kind&&"string"!==r.type.kind&&"value"!==r.type.kind?t.error("Expected argument of type string or array, but found "+Et(r.type)+" instead."):new Un(r):null},Un.prototype.evaluate=function(e){var t=this.input.evaluate(e);if("string"===typeof t)return t.length;if(Array.isArray(t))return t.length;throw new Wt("Expected value to be of type string or array, but found "+Et(Vt(t))+" instead.")},Un.prototype.eachChild=function(e){e(this.input)},Un.prototype.outputDefined=function(){return!1},Un.prototype.serialize=function(){var e=["length"];return this.eachChild((function(t){e.push(t.serialize())})),e};var Vn={"==":Dn,"!=":Rn,">":Fn,"<":zn,">=":Bn,"<=":Nn,array:Yt,at:pn,boolean:Yt,case:yn,coalesce:dn,collator:rr,format:Zt,image:Xt,in:vn,"index-of":mn,interpolate:cn,"interpolate-hcl":cn,"interpolate-lab":cn,length:Un,let:hn,literal:qt,match:gn,number:Yt,"number-format":jn,object:Yt,slice:xn,step:Rr,string:Yt,"to-boolean":$t,"to-color":$t,"to-number":$t,"to-string":$t,var:Pr,within:Sr};function Hn(e,t){var r=t[0],n=t[1],i=t[2],a=t[3];r=r.evaluate(e),n=n.evaluate(e),i=i.evaluate(e);var o=a?a.evaluate(e):1,s=jt(r,n,i,o);if(s)throw new Wt(s);return new Rt(r/255*o,n/255*o,i/255*o,o)}function qn(e,t){return e in t}function Wn(e,t){var r=t[e];return"undefined"===typeof r?null:r}function Gn(e,t,r,n){for(;r<=n;){var i=r+n>>1;if(t[i]===e)return!0;t[i]>e?n=i-1:r=i+1}return!1}function Yn(e){return{type:e}}function Zn(e){return{result:"success",value:e}}function Xn(e){return{result:"error",value:e}}function Kn(e){return"data-driven"===e["property-type"]||"cross-faded-data-driven"===e["property-type"]}function $n(e){return!!e.expression&&e.expression.parameters.indexOf("zoom")>-1}function Jn(e){return!!e.expression&&e.expression.interpolated}function Qn(e){return e instanceof Number?"number":e instanceof String?"string":e instanceof Boolean?"boolean":Array.isArray(e)?"array":null===e?"null":typeof e}function ei(e){return"object"===typeof e&&null!==e&&!Array.isArray(e)}function ti(e){return e}function ri(e,t){var r,n,i,a="color"===t.type,o=e.stops&&"object"===typeof e.stops[0][0],s=o||void 0!==e.property,l=o||!s,u=e.type||(Jn(t)?"exponential":"interval");if(a&&((e=ft({},e)).stops&&(e.stops=e.stops.map((function(e){return[e[0],Rt.parse(e[1])]}))),e.default?e.default=Rt.parse(e.default):e.default=Rt.parse(t.default)),e.colorSpace&&"rgb"!==e.colorSpace&&!un[e.colorSpace])throw new Error("Unknown color space: "+e.colorSpace);if("exponential"===u)r=oi;else if("interval"===u)r=ai;else if("categorical"===u){r=ii,n=Object.create(null);for(var c=0,f=e.stops;c=e.stops[n-1][0])return e.stops[n-1][1];var i=Dr(e.stops.map((function(e){return e[0]})),r);return e.stops[i][1]}function oi(e,t,r){var n=void 0!==e.base?e.base:1;if("number"!==Qn(r))return ni(e.default,t.default);var i=e.stops.length;if(1===i)return e.stops[0][1];if(r<=e.stops[0][0])return e.stops[0][1];if(r>=e.stops[i-1][0])return e.stops[i-1][1];var a=Dr(e.stops.map((function(e){return e[0]})),r),o=li(r,n,e.stops[a][0],e.stops[a+1][0]),s=e.stops[a][1],l=e.stops[a+1][1],u=Br[t.type]||ti;if(e.colorSpace&&"rgb"!==e.colorSpace){var c=un[e.colorSpace];u=function(e,t){return c.reverse(c.interpolate(c.forward(e),c.forward(t),o))}}return"function"===typeof s.evaluate?{evaluate:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var r=s.evaluate.apply(void 0,e),n=l.evaluate.apply(void 0,e);if(void 0!==r&&void 0!==n)return u(r,n,o)}}:u(s,l,o)}function si(e,t,r){return"color"===t.type?r=Rt.parse(r):"formatted"===t.type?r=Nt.fromString(r.toString()):"resolvedImage"===t.type?r=Bt.fromString(r.toString()):Qn(r)===t.type||"enum"===t.type&&t.values[r]||(r=void 0),ni(r,e.default,t.default)}function li(e,t,r,n){var i=n-r,a=e-r;return 0===i?0:1===t?a/i:(Math.pow(t,a)-1)/(Math.pow(t,i)-1)}er.register(Vn,{error:[kt,[yt],function(e,t){var r=t[0];throw new Wt(r.evaluate(e))}],typeof:[yt,[wt],function(e,t){return Et(Vt(t[0].evaluate(e)))}],"to-rgba":[St(gt,4),[bt],function(e,t){return t[0].evaluate(e).toArray()}],rgb:[bt,[gt,gt,gt],Hn],rgba:[bt,[gt,gt,gt,gt],Hn],has:{type:xt,overloads:[[[yt],function(e,t){return qn(t[0].evaluate(e),e.properties())}],[[yt,_t],function(e,t){var r=t[0],n=t[1];return qn(r.evaluate(e),n.evaluate(e))}]]},get:{type:wt,overloads:[[[yt],function(e,t){return Wn(t[0].evaluate(e),e.properties())}],[[yt,_t],function(e,t){var r=t[0],n=t[1];return Wn(r.evaluate(e),n.evaluate(e))}]]},"feature-state":[wt,[yt],function(e,t){return Wn(t[0].evaluate(e),e.featureState||{})}],properties:[_t,[],function(e){return e.properties()}],"geometry-type":[yt,[],function(e){return e.geometryType()}],id:[wt,[],function(e){return e.id()}],zoom:[gt,[],function(e){return e.globals.zoom}],"heatmap-density":[gt,[],function(e){return e.globals.heatmapDensity||0}],"line-progress":[gt,[],function(e){return e.globals.lineProgress||0}],accumulated:[wt,[],function(e){return void 0===e.globals.accumulated?null:e.globals.accumulated}],"+":[gt,Yn(gt),function(e,t){for(var r=0,n=0,i=t;n":[xt,[yt,wt],function(e,t){var r=t[0],n=t[1],i=e.properties()[r.value],a=n.value;return typeof i===typeof a&&i>a}],"filter-id->":[xt,[wt],function(e,t){var r=t[0],n=e.id(),i=r.value;return typeof n===typeof i&&n>i}],"filter-<=":[xt,[yt,wt],function(e,t){var r=t[0],n=t[1],i=e.properties()[r.value],a=n.value;return typeof i===typeof a&&i<=a}],"filter-id-<=":[xt,[wt],function(e,t){var r=t[0],n=e.id(),i=r.value;return typeof n===typeof i&&n<=i}],"filter->=":[xt,[yt,wt],function(e,t){var r=t[0],n=t[1],i=e.properties()[r.value],a=n.value;return typeof i===typeof a&&i>=a}],"filter-id->=":[xt,[wt],function(e,t){var r=t[0],n=e.id(),i=r.value;return typeof n===typeof i&&n>=i}],"filter-has":[xt,[wt],function(e,t){return t[0].value in e.properties()}],"filter-has-id":[xt,[],function(e){return null!==e.id()&&void 0!==e.id()}],"filter-type-in":[xt,[St(yt)],function(e,t){return t[0].value.indexOf(e.geometryType())>=0}],"filter-id-in":[xt,[St(wt)],function(e,t){return t[0].value.indexOf(e.id())>=0}],"filter-in-small":[xt,[yt,St(wt)],function(e,t){var r=t[0];return t[1].value.indexOf(e.properties()[r.value])>=0}],"filter-in-large":[xt,[yt,St(wt)],function(e,t){var r=t[0],n=t[1];return Gn(e.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:xt,overloads:[[[xt,xt],function(e,t){var r=t[0],n=t[1];return r.evaluate(e)&&n.evaluate(e)}],[Yn(xt),function(e,t){for(var r=0,n=t;r0&&"string"===typeof e[0]&&e[0]in Vn}function fi(e,t){var r=new Or(Vn,[],t?yi(t):void 0),n=r.parse(e,void 0,void 0,void 0,t&&"string"===t.type?{typeAnnotation:"coerce"}:void 0);return n?Zn(new ui(n,t)):Xn(r.errors)}ui.prototype.evaluateWithoutErrorHandling=function(e,t,r,n,i,a){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)},ui.prototype.evaluate=function(e,t,r,n,i,a){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,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 Wt("Expected value to be one of "+Object.keys(this._enumValues).map((function(e){return JSON.stringify(e)})).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 di=function(e,t){this.kind=e,this._styleExpression=t,this.isStateDependent="constant"!==e&&!Cr(t.expression)};di.prototype.evaluateWithoutErrorHandling=function(e,t,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(e,t,r,n,i,a)},di.prototype.evaluate=function(e,t,r,n,i,a){return this._styleExpression.evaluate(e,t,r,n,i,a)};var hi=function(e,t,r,n){this.kind=e,this.zoomStops=r,this._styleExpression=t,this.isStateDependent="camera"!==e&&!Cr(t.expression),this.interpolationType=n};function pi(e,t){if("error"===(e=fi(e,t)).result)return e;var r=e.value.expression,n=Er(r);if(!n&&!Kn(t))return Xn([new pt("","data expressions not supported")]);var i=Lr(r,["zoom"]);if(!i&&!$n(t))return Xn([new pt("","zoom expressions not supported")]);var a=gi(r);if(!a&&!i)return Xn([new pt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(a instanceof pt)return Xn([a]);if(a instanceof cn&&!Jn(t))return Xn([new pt("",'"interpolate" expressions cannot be used with this property')]);if(!a)return Zn(new di(n?"constant":"source",e.value));var o=a instanceof cn?a.interpolation:void 0;return Zn(new hi(n?"camera":"composite",e.value,a.labels,o))}hi.prototype.evaluateWithoutErrorHandling=function(e,t,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(e,t,r,n,i,a)},hi.prototype.evaluate=function(e,t,r,n,i,a){return this._styleExpression.evaluate(e,t,r,n,i,a)},hi.prototype.interpolationFactor=function(e,t,r){return this.interpolationType?cn.interpolationFactor(this.interpolationType,e,t,r):0};var vi=function(e,t){this._parameters=e,this._specification=t,ft(this,ri(this._parameters,this._specification))};function mi(e,t){if(ei(e))return new vi(e,t);if(ci(e)){var r=pi(e,t);if("error"===r.result)throw new Error(r.value.map((function(e){return e.key+": "+e.message})).join(", "));return r.value}var n=e;return"string"===typeof e&&"color"===t.type&&(n=Rt.parse(e)),{kind:"constant",evaluate:function(){return n}}}function gi(e){var t=null;if(e instanceof hn)t=gi(e.result);else if(e instanceof dn)for(var r=0,n=e.args;rn.maximum?[new ut(t,r,r+" is greater than the maximum value "+n.maximum)]:[]}function ki(e){var t,r,n,i=e.valueSpec,a=dt(e.value.type),o={},s="categorical"!==a&&void 0===e.value.property,l=!s,u="array"===Qn(e.value.stops)&&"array"===Qn(e.value.stops[0])&&"object"===Qn(e.value.stops[0][0]),c=bi({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:f,default:p}});return"identity"===a&&s&&c.push(new ut(e.key,e.value,'missing required property "property"')),"identity"===a||e.value.stops||c.push(new ut(e.key,e.value,'missing required property "stops"')),"exponential"===a&&e.valueSpec.expression&&!Jn(e.valueSpec)&&c.push(new ut(e.key,e.value,"exponential functions not supported")),e.styleSpec.$version>=8&&(l&&!Kn(e.valueSpec)?c.push(new ut(e.key,e.value,"property functions not supported")):s&&!$n(e.valueSpec)&&c.push(new ut(e.key,e.value,"zoom functions not supported"))),"categorical"!==a&&!u||void 0!==e.value.property||c.push(new ut(e.key,e.value,'"property" property is required')),c;function f(e){if("identity"===a)return[new ut(e.key,e.value,'identity function may not have a "stops" property')];var t=[],r=e.value;return t=t.concat(_i({key:e.key,value:r,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:d})),"array"===Qn(r)&&0===r.length&&t.push(new ut(e.key,r,"array must have at least one stop")),t}function d(e){var t=[],a=e.value,s=e.key;if("array"!==Qn(a))return[new ut(s,a,"array expected, "+Qn(a)+" found")];if(2!==a.length)return[new ut(s,a,"array length 2 expected, length "+a.length+" found")];if(u){if("object"!==Qn(a[0]))return[new ut(s,a,"object expected, "+Qn(a[0])+" found")];if(void 0===a[0].zoom)return[new ut(s,a,"object stop key must have zoom")];if(void 0===a[0].value)return[new ut(s,a,"object stop key must have value")];if(n&&n>dt(a[0].zoom))return[new ut(s,a[0].zoom,"stop zoom values must appear in ascending order")];dt(a[0].zoom)!==n&&(n=dt(a[0].zoom),r=void 0,o={}),t=t.concat(bi({key:s+"[0]",value:a[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:wi,value:h}}))}else t=t.concat(h({key:s+"[0]",value:a[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec},a));return ci(ht(a[1]))?t.concat([new ut(s+"[1]",a[1],"expressions are not allowed in function stops.")]):t.concat(Qi({key:s+"[1]",value:a[1],valueSpec:i,style:e.style,styleSpec:e.styleSpec}))}function h(e,n){var s=Qn(e.value),l=dt(e.value),u=null!==e.value?e.value:n;if(t){if(s!==t)return[new ut(e.key,u,s+" stop domain type must match previous stop domain type "+t)]}else t=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new ut(e.key,u,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==a){var c="number expected, "+s+" found";return Kn(i)&&void 0===a&&(c+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ut(e.key,u,c)]}return"categorical"!==a||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==a&&"number"===s&&void 0!==r&&l=2&&"$id"!==e[1]&&"$type"!==e[1];case"in":return e.length>=3&&("string"!==typeof e[1]||Array.isArray(e[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==e.length||Array.isArray(e[1])||Array.isArray(e[2]);case"any":case"all":for(var t=0,r=e.slice(1);tt?1:0}function Oi(e){if(!Array.isArray(e))return!1;if("within"===e[0])return!0;for(var t=1;t"===t||"<="===t||">="===t?Di(e[1],e[2],t):"any"===t?Ri(e.slice(1)):"all"===t?["all"].concat(e.slice(1).map(Ii)):"none"===t?["all"].concat(e.slice(1).map(Ii).map(Ni)):"in"===t?zi(e[1],e.slice(2)):"!in"===t?Ni(zi(e[1],e.slice(2))):"has"===t?Fi(e[1]):"!has"===t?Ni(Fi(e[1])):"within"!==t||e}function Di(e,t,r){switch(e){case"$type":return["filter-type-"+r,t];case"$id":return["filter-id-"+r,t];default:return["filter-"+r,e,t]}}function Ri(e){return["any"].concat(e.map(Ii))}function zi(e,t){if(0===t.length)return!1;switch(e){case"$type":return["filter-type-in",["literal",t]];case"$id":return["filter-id-in",["literal",t]];default:return t.length>200&&!t.some((function(e){return typeof e!==typeof t[0]}))?["filter-in-large",e,["literal",t.sort(Pi)]]:["filter-in-small",e,["literal",t]]}}function Fi(e){switch(e){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",e]}}function Ni(e){return["!",e]}function Bi(e){return Ei(ht(e.value))?Ti(ft({},e,{expressionContext:"filter",valueSpec:{value:"boolean"}})):ji(e)}function ji(e){var t=e.value,r=e.key;if("array"!==Qn(t))return[new ut(r,t,"array expected, "+Qn(t)+" found")];var n,i=e.styleSpec,a=[];if(t.length<1)return[new ut(r,t,"filter array must have at least 1 element")];switch(a=a.concat(Si({key:r+"[0]",value:t[0],valueSpec:i.filter_operator,style:e.style,styleSpec:e.styleSpec})),dt(t[0])){case"<":case"<=":case">":case">=":t.length>=2&&"$type"===dt(t[1])&&a.push(new ut(r,t,'"$type" cannot be use with operator "'+t[0]+'"'));case"==":case"!=":3!==t.length&&a.push(new ut(r,t,'filter array for operator "'+t[0]+'" must have 3 elements'));case"in":case"!in":t.length>=2&&"string"!==(n=Qn(t[1]))&&a.push(new ut(r+"[1]",t[1],"string expected, "+n+" found"));for(var o=2;o=c[h+0]&&n>=c[h+1])?(o[d]=!0,a.push(u[d])):o[d]=!1}}},fa.prototype._forEachCell=function(e,t,r,n,i,a,o,s){for(var l=this._convertToCellCoord(e),u=this._convertToCellCoord(t),c=this._convertToCellCoord(r),f=this._convertToCellCoord(n),d=l;d<=c;d++)for(var h=u;h<=f;h++){var p=this.d*h+d;if((!s||s(this._convertFromCellCoord(d),this._convertFromCellCoord(h),this._convertFromCellCoord(d+1),this._convertFromCellCoord(h+1)))&&i.call(this,e,t,r,n,p,a,o,s))return}},fa.prototype._convertFromCellCoord=function(e){return(e-this.padding)/this.scale},fa.prototype._convertToCellCoord=function(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding))},fa.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var e=this.cells,t=ca+this.cells.length+1+1,r=0,n=0;n=0)){var f=e[c];u[c]=pa[l].shallow.indexOf(c)>=0?f:xa(f,t)}e instanceof Error&&(u.message=e.message)}if(u.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==l&&(u.$name=l),u}throw new Error("can't serialize object of type "+typeof e)}function ba(e){if(null===e||void 0===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||e instanceof Boolean||e instanceof Number||e instanceof String||e instanceof Date||e instanceof RegExp||ga(e)||ya(e)||ArrayBuffer.isView(e)||e instanceof da)return e;if(Array.isArray(e))return e.map(ba);if("object"===typeof e){var t=e.$name||"Object",r=pa[t].klass;if(!r)throw new Error("can't deserialize unregistered class "+t);if(r.deserialize)return r.deserialize(e);for(var n=Object.create(r.prototype),i=0,a=Object.keys(e);i=0?s:ba(s)}}return n}throw new Error("can't deserialize object of type "+typeof e)}var _a=function(){this.first=!0};_a.prototype.update=function(e,t){var r=Math.floor(e);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=e,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=t):this.lastFloorZoom=128&&e<=255},Arabic:function(e){return e>=1536&&e<=1791},"Arabic Supplement":function(e){return e>=1872&&e<=1919},"Arabic Extended-A":function(e){return e>=2208&&e<=2303},"Hangul Jamo":function(e){return e>=4352&&e<=4607},"Unified Canadian Aboriginal Syllabics":function(e){return e>=5120&&e<=5759},Khmer:function(e){return e>=6016&&e<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(e){return e>=6320&&e<=6399},"General Punctuation":function(e){return e>=8192&&e<=8303},"Letterlike Symbols":function(e){return e>=8448&&e<=8527},"Number Forms":function(e){return e>=8528&&e<=8591},"Miscellaneous Technical":function(e){return e>=8960&&e<=9215},"Control Pictures":function(e){return e>=9216&&e<=9279},"Optical Character Recognition":function(e){return e>=9280&&e<=9311},"Enclosed Alphanumerics":function(e){return e>=9312&&e<=9471},"Geometric Shapes":function(e){return e>=9632&&e<=9727},"Miscellaneous Symbols":function(e){return e>=9728&&e<=9983},"Miscellaneous Symbols and Arrows":function(e){return e>=11008&&e<=11263},"CJK Radicals Supplement":function(e){return e>=11904&&e<=12031},"Kangxi Radicals":function(e){return e>=12032&&e<=12255},"Ideographic Description Characters":function(e){return e>=12272&&e<=12287},"CJK Symbols and Punctuation":function(e){return e>=12288&&e<=12351},Hiragana:function(e){return e>=12352&&e<=12447},Katakana:function(e){return e>=12448&&e<=12543},Bopomofo:function(e){return e>=12544&&e<=12591},"Hangul Compatibility Jamo":function(e){return e>=12592&&e<=12687},Kanbun:function(e){return e>=12688&&e<=12703},"Bopomofo Extended":function(e){return e>=12704&&e<=12735},"CJK Strokes":function(e){return e>=12736&&e<=12783},"Katakana Phonetic Extensions":function(e){return e>=12784&&e<=12799},"Enclosed CJK Letters and Months":function(e){return e>=12800&&e<=13055},"CJK Compatibility":function(e){return e>=13056&&e<=13311},"CJK Unified Ideographs Extension A":function(e){return e>=13312&&e<=19903},"Yijing Hexagram Symbols":function(e){return e>=19904&&e<=19967},"CJK Unified Ideographs":function(e){return e>=19968&&e<=40959},"Yi Syllables":function(e){return e>=40960&&e<=42127},"Yi Radicals":function(e){return e>=42128&&e<=42191},"Hangul Jamo Extended-A":function(e){return e>=43360&&e<=43391},"Hangul Syllables":function(e){return e>=44032&&e<=55215},"Hangul Jamo Extended-B":function(e){return e>=55216&&e<=55295},"Private Use Area":function(e){return e>=57344&&e<=63743},"CJK Compatibility Ideographs":function(e){return e>=63744&&e<=64255},"Arabic Presentation Forms-A":function(e){return e>=64336&&e<=65023},"Vertical Forms":function(e){return e>=65040&&e<=65055},"CJK Compatibility Forms":function(e){return e>=65072&&e<=65103},"Small Form Variants":function(e){return e>=65104&&e<=65135},"Arabic Presentation Forms-B":function(e){return e>=65136&&e<=65279},"Halfwidth and Fullwidth Forms":function(e){return e>=65280&&e<=65519}};function ka(e){for(var t=0,r=e;t=65097&&e<=65103)||!!wa["CJK Compatibility Ideographs"](e)||!!wa["CJK Compatibility"](e)||!!wa["CJK Radicals Supplement"](e)||!!wa["CJK Strokes"](e)||!(!wa["CJK Symbols and Punctuation"](e)||e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||!!wa["CJK Unified Ideographs Extension A"](e)||!!wa["CJK Unified Ideographs"](e)||!!wa["Enclosed CJK Letters and Months"](e)||!!wa["Hangul Compatibility Jamo"](e)||!!wa["Hangul Jamo Extended-A"](e)||!!wa["Hangul Jamo Extended-B"](e)||!!wa["Hangul Jamo"](e)||!!wa["Hangul Syllables"](e)||!!wa.Hiragana(e)||!!wa["Ideographic Description Characters"](e)||!!wa.Kanbun(e)||!!wa["Kangxi Radicals"](e)||!!wa["Katakana Phonetic Extensions"](e)||!(!wa.Katakana(e)||12540===e)||!(!wa["Halfwidth and Fullwidth Forms"](e)||65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||!(!wa["Small Form Variants"](e)||e>=65112&&e<=65118||e>=65123&&e<=65126)||!!wa["Unified Canadian Aboriginal Syllabics"](e)||!!wa["Unified Canadian Aboriginal Syllabics Extended"](e)||!!wa["Vertical Forms"](e)||!!wa["Yijing Hexagram Symbols"](e)||!!wa["Yi Syllables"](e)||!!wa["Yi Radicals"](e))}function Ea(e){return!(!wa["Latin-1 Supplement"](e)||167!==e&&169!==e&&174!==e&&177!==e&&188!==e&&189!==e&&190!==e&&215!==e&&247!==e)||!(!wa["General Punctuation"](e)||8214!==e&&8224!==e&&8225!==e&&8240!==e&&8241!==e&&8251!==e&&8252!==e&&8258!==e&&8263!==e&&8264!==e&&8265!==e&&8273!==e)||!!wa["Letterlike Symbols"](e)||!!wa["Number Forms"](e)||!(!wa["Miscellaneous Technical"](e)||!(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215))||!(!wa["Control Pictures"](e)||9251===e)||!!wa["Optical Character Recognition"](e)||!!wa["Enclosed Alphanumerics"](e)||!!wa["Geometric Shapes"](e)||!(!wa["Miscellaneous Symbols"](e)||e>=9754&&e<=9759)||!(!wa["Miscellaneous Symbols and Arrows"](e)||!(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243))||!!wa["CJK Symbols and Punctuation"](e)||!!wa.Katakana(e)||!!wa["Private Use Area"](e)||!!wa["CJK Compatibility Forms"](e)||!!wa["Small Form Variants"](e)||!!wa["Halfwidth and Fullwidth Forms"](e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e}function Ca(e){return!(Sa(e)||Ea(e))}function La(e){return wa.Arabic(e)||wa["Arabic Supplement"](e)||wa["Arabic Extended-A"](e)||wa["Arabic Presentation Forms-A"](e)||wa["Arabic Presentation Forms-B"](e)}function Pa(e){return e>=1424&&e<=2303||wa["Arabic Presentation Forms-A"](e)||wa["Arabic Presentation Forms-B"](e)}function Oa(e,t){return!(!t&&Pa(e))&&!(e>=2304&&e<=3583||e>=3840&&e<=4255||wa.Khmer(e))}function Ia(e){for(var t=0,r=e;t-1&&(Fa=Ra.error),za&&za(e)};function ja(){Ua.fire(new at("pluginStateChange",{pluginStatus:Fa,pluginURL:Na}))}var Ua=new st,Va=function(){return Fa},Ha=function(e){return e({pluginStatus:Fa,pluginURL:Na}),Ua.on("pluginStateChange",e),e},qa=function(e,t,r){if(void 0===r&&(r=!1),Fa===Ra.deferred||Fa===Ra.loading||Fa===Ra.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Na=Y.resolveURL(e),Fa=Ra.deferred,za=t,ja(),r||Wa()},Wa=function(){if(Fa!==Ra.deferred||!Na)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Fa=Ra.loading,ja(),Na&&Ye({url:Na},(function(e){e?Ba(e):(Fa=Ra.loaded,ja())}))},Ga={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Fa===Ra.loaded||null!=Ga.applyArabicShaping},isLoading:function(){return Fa===Ra.loading},setState:function(e){Fa=e.pluginStatus,Na=e.pluginURL},isParsed:function(){return null!=Ga.applyArabicShaping&&null!=Ga.processBidirectionalText&&null!=Ga.processStyledBidirectionalText},getPluginURL:function(){return Na}},Ya=function(){Ga.isLoading()||Ga.isLoaded()||"deferred"!==Va()||Wa()},Za=function(e,t){this.zoom=e,t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.zoomHistory=t.zoomHistory,this.transition=t.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new _a,this.transition={})};Za.prototype.isSupportedScript=function(e){return Da(e,Ga.isLoaded())},Za.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Za.prototype.getCrossfadeParameters=function(){var e=this.zoom,t=e-Math.floor(e),r=this.crossFadingFactor();return e>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:t+(1-t)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*t}};var Xa=function(e,t){this.property=e,this.value=t,this.expression=mi(void 0===t?e.specification.default:t,e.specification)};Xa.prototype.isDataDriven=function(){return"source"===this.expression.kind||"composite"===this.expression.kind},Xa.prototype.possiblyEvaluate=function(e,t,r){return this.property.possiblyEvaluate(this,e,t,r)};var Ka=function(e){this.property=e,this.value=new Xa(e,void 0)};Ka.prototype.transitioned=function(e,t){return new Ja(this.property,this.value,t,m({},e.transition,this.transition),e.now)},Ka.prototype.untransitioned=function(){return new Ja(this.property,this.value,null,{},0)};var $a=function(e){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues)};$a.prototype.getValue=function(e){return A(this._values[e].value.value)},$a.prototype.setValue=function(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Ka(this._values[e].property)),this._values[e].value=new Xa(this._values[e].property,null===t?void 0:A(t))},$a.prototype.getTransition=function(e){return A(this._values[e].transition)},$a.prototype.setTransition=function(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Ka(this._values[e].property)),this._values[e].transition=A(t)||void 0},$a.prototype.serialize=function(){for(var e={},t=0,r=Object.keys(this._values);tthis.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(nn.zoomHistory.lastIntegerZoom?{from:e,to:t}:{from:r,to:t}},t.prototype.interpolate=function(e){return e},t}(io),oo=function(e){this.specification=e};oo.prototype.possiblyEvaluate=function(e,t,r,n){if(void 0!==e.value){if("constant"===e.expression.kind){var i=e.expression.evaluate(t,null,{},r,n);return this._calculate(i,i,i,t)}return this._calculate(e.expression.evaluate(new Za(Math.floor(t.zoom-1),t)),e.expression.evaluate(new Za(Math.floor(t.zoom),t)),e.expression.evaluate(new Za(Math.floor(t.zoom+1),t)),t)}},oo.prototype._calculate=function(e,t,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:e,to:t}:{from:r,to:t}},oo.prototype.interpolate=function(e){return e};var so=function(e){this.specification=e};so.prototype.possiblyEvaluate=function(e,t,r,n){return!!e.expression.evaluate(t,null,{},r,n)},so.prototype.interpolate=function(){return!1};var lo=function(e){for(var t in this.properties=e,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],e){var r=e[t];r.specification.overridable&&this.overridableProperties.push(t);var n=this.defaultPropertyValues[t]=new Xa(r,void 0),i=this.defaultTransitionablePropertyValues[t]=new Ka(r);this.defaultTransitioningPropertyValues[t]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[t]=n.possiblyEvaluate({})}};va("DataDrivenProperty",io),va("DataConstantProperty",no),va("CrossFadedDataDrivenProperty",ao),va("CrossFadedProperty",oo),va("ColorRampProperty",so);var uo="-transition",co=function(e){function t(t,r){if(e.call(this),this.id=t.id,this.type=t.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},"custom"!==t.type&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,"background"!==t.type&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter),r.layout&&(this._unevaluatedLayout=new eo(r.layout)),r.paint)){for(var n in this._transitionablePaint=new $a(r.paint),t.paint)this.setPaintProperty(n,t.paint[n],{validate:!1});for(var i in t.layout)this.setLayoutProperty(i,t.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new ro(r.paint)}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},t.prototype.getLayoutProperty=function(e){return"visibility"===e?this.visibility:this._unevaluatedLayout.getValue(e)},t.prototype.setLayoutProperty=function(e,t,r){if(void 0===r&&(r={}),null!==t&&void 0!==t){var n="layers."+this.id+".layout."+e;if(this._validate(sa,n,e,t,r))return}"visibility"!==e?this._unevaluatedLayout.setValue(e,t):this.visibility=t},t.prototype.getPaintProperty=function(e){return k(e,uo)?this._transitionablePaint.getTransition(e.slice(0,-uo.length)):this._transitionablePaint.getValue(e)},t.prototype.setPaintProperty=function(e,t,r){if(void 0===r&&(r={}),null!==t&&void 0!==t){var n="layers."+this.id+".paint."+e;if(this._validate(oa,n,e,t,r))return!1}if(k(e,uo))return this._transitionablePaint.setTransition(e.slice(0,-uo.length),t||void 0),!1;var i=this._transitionablePaint._values[e],a="cross-faded-data-driven"===i.property.specification["property-type"],o=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(e,t),this._handleSpecialPaintPropertyUpdate(e);var l=this._transitionablePaint._values[e].value;return l.isDataDriven()||o||a||this._handleOverridablePaintPropertyUpdate(e,s,l)},t.prototype._handleSpecialPaintPropertyUpdate=function(e){},t.prototype._handleOverridablePaintPropertyUpdate=function(e,t,r){return!1},t.prototype.isHidden=function(e){return!!(this.minzoom&&e=this.maxzoom)||"none"===this.visibility},t.prototype.updateTransitions=function(e){this._transitioningPaint=this._transitionablePaint.transitioned(e,this._transitioningPaint)},t.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},t.prototype.recalculate=function(e,t){e.getCrossfadeParameters&&(this._crossfadeParameters=e.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(e,void 0,t)),this.paint=this._transitioningPaint.possiblyEvaluate(e,void 0,t)},t.prototype.serialize=function(){var e={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&&(e.layout=e.layout||{},e.layout.visibility=this.visibility),M(e,(function(e,t){return void 0!==e&&!("layout"===t&&!Object.keys(e).length)&&!("paint"===t&&!Object.keys(e).length)}))},t.prototype._validate=function(e,t,r,n,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&la(this,e.call(ia,{key:t,layerType:this.type,objectKey:r,value:n,styleSpec:lt,style:{glyphs:!0,sprite:!0}}))},t.prototype.is3D=function(){return!1},t.prototype.isTileClipped=function(){return!1},t.prototype.hasOffscreenPass=function(){return!1},t.prototype.resize=function(){},t.prototype.isStateDependent=function(){for(var e in this.paint._values){var t=this.paint.get(e);if(t instanceof to&&Kn(t.property.specification)&&("source"===t.value.kind||"composite"===t.value.kind)&&t.value.isStateDependent)return!0}return!1},t}(st),fo={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},ho=function(e,t){this._structArray=e,this._pos1=t*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},po=128,vo=5,mo=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function go(e,t){void 0===t&&(t=1);var r=0,n=0;return{members:e.map((function(e){var i=yo(e.type),a=r=xo(r,Math.max(t,i)),o=e.components||1;return n=Math.max(n,i),r+=i*o,{name:e.name,type:e.type,components:o,offset:a}})),size:xo(r,Math.max(n,t)),alignment:t}}function yo(e){return fo[e].BYTES_PER_ELEMENT}function xo(e,t){return Math.ceil(e/t)*t}mo.serialize=function(e,t){return e._trim(),t&&(e.isTransferred=!0,t.push(e.arrayBuffer)),{length:e.length,arrayBuffer:e.arrayBuffer}},mo.deserialize=function(e){var t=Object.create(this.prototype);return t.arrayBuffer=e.arrayBuffer,t.length=e.length,t.capacity=e.arrayBuffer.byteLength/t.bytesPerElement,t._refreshViews(),t},mo.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},mo.prototype.clear=function(){this.length=0},mo.prototype.resize=function(e){this.reserve(e),this.length=e},mo.prototype.reserve=function(e){if(e>this.capacity){this.capacity=Math.max(e,Math.floor(this.capacity*vo),po),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var t=this.uint8;this._refreshViews(),t&&this.uint8.set(t)}},mo.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};var bo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t){var r=this.length;return this.resize(r+1),this.emplace(r,e,t)},t.prototype.emplace=function(e,t,r){var n=2*e;return this.int16[n+0]=t,this.int16[n+1]=r,e},t}(mo);bo.prototype.bytesPerElement=4,va("StructArrayLayout2i4",bo);var _o=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,e,t,r,n)},t.prototype.emplace=function(e,t,r,n,i){var a=4*e;return this.int16[a+0]=t,this.int16[a+1]=r,this.int16[a+2]=n,this.int16[a+3]=i,e},t}(mo);_o.prototype.bytesPerElement=8,va("StructArrayLayout4i8",_o);var wo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,e,t,r,n,i,a)},t.prototype.emplace=function(e,t,r,n,i,a,o){var s=6*e;return this.int16[s+0]=t,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,e},t}(mo);wo.prototype.bytesPerElement=12,va("StructArrayLayout2i4i12",wo);var ko=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,e,t,r,n,i,a)},t.prototype.emplace=function(e,t,r,n,i,a,o){var s=4*e,l=8*e;return this.int16[s+0]=t,this.int16[s+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=i,this.uint8[l+6]=a,this.uint8[l+7]=o,e},t}(mo);ko.prototype.bytesPerElement=8,va("StructArrayLayout2i4ub8",ko);var To=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u){var c=this.length;return this.resize(c+1),this.emplace(c,e,t,r,n,i,a,o,s,l,u)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c){var f=9*e,d=18*e;return this.uint16[f+0]=t,this.uint16[f+1]=r,this.uint16[f+2]=n,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[d+16]=u,this.uint8[d+17]=c,e},t}(mo);To.prototype.bytesPerElement=18,va("StructArrayLayout8ui2ub18",To);var Mo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u,c,f){var d=this.length;return this.resize(d+1),this.emplace(d,e,t,r,n,i,a,o,s,l,u,c,f)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c,f,d){var h=12*e;return this.int16[h+0]=t,this.int16[h+1]=r,this.int16[h+2]=n,this.int16[h+3]=i,this.uint16[h+4]=a,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.int16[h+8]=u,this.int16[h+9]=c,this.int16[h+10]=f,this.int16[h+11]=d,e},t}(mo);Mo.prototype.bytesPerElement=24,va("StructArrayLayout4i4ui4i24",Mo);var Ao=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=3*e;return this.float32[i+0]=t,this.float32[i+1]=r,this.float32[i+2]=n,e},t}(mo);Ao.prototype.bytesPerElement=12,va("StructArrayLayout3f12",Ao);var So=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e){var t=this.length;return this.resize(t+1),this.emplace(t,e)},t.prototype.emplace=function(e,t){var r=1*e;return this.uint32[r+0]=t,e},t}(mo);So.prototype.bytesPerElement=4,va("StructArrayLayout1ul4",So);var Eo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.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)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l){var u=this.length;return this.resize(u+1),this.emplace(u,e,t,r,n,i,a,o,s,l)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u){var c=10*e,f=5*e;return this.int16[c+0]=t,this.int16[c+1]=r,this.int16[c+2]=n,this.int16[c+3]=i,this.int16[c+4]=a,this.int16[c+5]=o,this.uint32[f+3]=s,this.uint16[c+8]=l,this.uint16[c+9]=u,e},t}(mo);Eo.prototype.bytesPerElement=20,va("StructArrayLayout6i1ul2ui20",Eo);var Co=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,e,t,r,n,i,a)},t.prototype.emplace=function(e,t,r,n,i,a,o){var s=6*e;return this.int16[s+0]=t,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,e},t}(mo);Co.prototype.bytesPerElement=12,va("StructArrayLayout2i2i2i12",Co);var Lo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i){var a=this.length;return this.resize(a+1),this.emplace(a,e,t,r,n,i)},t.prototype.emplace=function(e,t,r,n,i,a){var o=4*e,s=8*e;return this.float32[o+0]=t,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=i,this.int16[s+7]=a,e},t}(mo);Lo.prototype.bytesPerElement=16,va("StructArrayLayout2f1f2i16",Lo);var Po=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,e,t,r,n)},t.prototype.emplace=function(e,t,r,n,i){var a=12*e,o=3*e;return this.uint8[a+0]=t,this.uint8[a+1]=r,this.float32[o+1]=n,this.float32[o+2]=i,e},t}(mo);Po.prototype.bytesPerElement=12,va("StructArrayLayout2ub2f12",Po);var Oo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=3*e;return this.uint16[i+0]=t,this.uint16[i+1]=r,this.uint16[i+2]=n,e},t}(mo);Oo.prototype.bytesPerElement=6,va("StructArrayLayout3ui6",Oo);var Io=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.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)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m){var g=this.length;return this.resize(g+1),this.emplace(g,e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g){var y=24*e,x=12*e,b=48*e;return this.int16[y+0]=t,this.int16[y+1]=r,this.uint16[y+2]=n,this.uint16[y+3]=i,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=u,this.uint16[y+12]=c,this.float32[x+7]=f,this.float32[x+8]=d,this.uint8[b+36]=h,this.uint8[b+37]=p,this.uint8[b+38]=v,this.uint32[x+10]=m,this.int16[y+22]=g,e},t}(mo);Io.prototype.bytesPerElement=48,va("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Io);var Do=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.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)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S){var E=this.length;return this.resize(E+1),this.emplace(E,e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S,E){var C=34*e,L=17*e;return this.int16[C+0]=t,this.int16[C+1]=r,this.int16[C+2]=n,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]=u,this.uint16[C+9]=c,this.uint16[C+10]=f,this.uint16[C+11]=d,this.uint16[C+12]=h,this.uint16[C+13]=p,this.uint16[C+14]=v,this.uint16[C+15]=m,this.uint16[C+16]=g,this.uint16[C+17]=y,this.uint16[C+18]=x,this.uint16[C+19]=b,this.uint16[C+20]=_,this.uint16[C+21]=w,this.uint16[C+22]=k,this.uint32[L+12]=T,this.float32[L+13]=M,this.float32[L+14]=A,this.float32[L+15]=S,this.float32[L+16]=E,e},t}(mo);Do.prototype.bytesPerElement=68,va("StructArrayLayout8i15ui1ul4f68",Do);var Ro=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e){var t=this.length;return this.resize(t+1),this.emplace(t,e)},t.prototype.emplace=function(e,t){var r=1*e;return this.float32[r+0]=t,e},t}(mo);Ro.prototype.bytesPerElement=4,va("StructArrayLayout1f4",Ro);var zo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=3*e;return this.int16[i+0]=t,this.int16[i+1]=r,this.int16[i+2]=n,e},t}(mo);zo.prototype.bytesPerElement=6,va("StructArrayLayout3i6",zo);var Fo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=2*e,a=4*e;return this.uint32[i+0]=t,this.uint16[a+2]=r,this.uint16[a+3]=n,e},t}(mo);Fo.prototype.bytesPerElement=8,va("StructArrayLayout1ul2ui8",Fo);var No=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t){var r=this.length;return this.resize(r+1),this.emplace(r,e,t)},t.prototype.emplace=function(e,t,r){var n=2*e;return this.uint16[n+0]=t,this.uint16[n+1]=r,e},t}(mo);No.prototype.bytesPerElement=4,va("StructArrayLayout2ui4",No);var Bo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e){var t=this.length;return this.resize(t+1),this.emplace(t,e)},t.prototype.emplace=function(e,t){var r=1*e;return this.uint16[r+0]=t,e},t}(mo);Bo.prototype.bytesPerElement=2,va("StructArrayLayout1ui2",Bo);var jo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t){var r=this.length;return this.resize(r+1),this.emplace(r,e,t)},t.prototype.emplace=function(e,t,r){var n=2*e;return this.float32[n+0]=t,this.float32[n+1]=r,e},t}(mo);jo.prototype.bytesPerElement=8,va("StructArrayLayout2f8",jo);var Uo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,e,t,r,n)},t.prototype.emplace=function(e,t,r,n,i){var a=4*e;return this.float32[a+0]=t,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,e},t}(mo);Uo.prototype.bytesPerElement=16,va("StructArrayLayout4f16",Uo);var Vo=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={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 r.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},r.x1.get=function(){return this._structArray.int16[this._pos2+2]},r.y1.get=function(){return this._structArray.int16[this._pos2+3]},r.x2.get=function(){return this._structArray.int16[this._pos2+4]},r.y2.get=function(){return this._structArray.int16[this._pos2+5]},r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(t.prototype,r),t}(ho);Vo.prototype.size=20;var Ho=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new Vo(this,e)},t}(Eo);va("CollisionBoxArray",Ho);var qo=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={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 r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},r.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},r.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},r.segment.get=function(){return this._structArray.uint16[this._pos2+10]},r.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},r.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},r.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},r.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},r.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},r.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},r.placedOrientation.set=function(e){this._structArray.uint8[this._pos1+37]=e},r.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},r.hidden.set=function(e){this._structArray.uint8[this._pos1+38]=e},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},r.crossTileID.set=function(e){this._structArray.uint32[this._pos4+10]=e},r.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(t.prototype,r),t}(ho);qo.prototype.size=48;var Wo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new qo(this,e)},t}(Io);va("PlacedSymbolArray",Wo);var Go=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={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 r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},r.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},r.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},r.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},r.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},r.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},r.key.get=function(){return this._structArray.uint16[this._pos2+8]},r.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},r.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},r.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},r.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},r.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},r.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},r.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},r.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},r.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},r.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},r.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},r.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},r.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},r.crossTileID.set=function(e){this._structArray.uint32[this._pos4+12]=e},r.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},r.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},r.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},r.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(t.prototype,r),t}(ho);Go.prototype.size=68;var Yo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new Go(this,e)},t}(Do);va("SymbolInstanceArray",Yo);var Zo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getoffsetX=function(e){return this.float32[1*e+0]},t}(Ro);va("GlyphOffsetArray",Zo);var Xo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getx=function(e){return this.int16[3*e+0]},t.prototype.gety=function(e){return this.int16[3*e+1]},t.prototype.gettileUnitDistanceFromAnchor=function(e){return this.int16[3*e+2]},t}(zo);va("SymbolLineVertexArray",Xo);var Ko=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(t.prototype,r),t}(ho);Ko.prototype.size=8;var $o=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new Ko(this,e)},t}(Fo);va("FeatureIndexArray",$o);var Jo=go([{name:"a_pos",components:2,type:"Int16"}],4).members,Qo=function(e){void 0===e&&(e=[]),this.segments=e};function es(e,t){return 256*(e=f(Math.floor(e),0,255))+(t=f(Math.floor(t),0,255))}Qo.prototype.prepareSegment=function(e,t,r,n){var i=this.segments[this.segments.length-1];return e>Qo.MAX_VERTEX_ARRAY_LENGTH&&C("Max vertices per segment is "+Qo.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+e),(!i||i.vertexLength+e>Qo.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:t.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i},Qo.prototype.get=function(){return this.segments},Qo.prototype.destroy=function(){for(var e=0,t=this.segments;e>>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,r){case 3:l^=(255&e.charCodeAt(u+2))<<16;case 2:l^=(255&e.charCodeAt(u+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&e.charCodeAt(u)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=e.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}e.exports=t})),ns=t((function(e){function t(e,t){for(var r,n=e.length,i=t^n,a=0;n>=4;)r=1540483477*(65535&(r=255&e.charCodeAt(a)|(255&e.charCodeAt(++a))<<8|(255&e.charCodeAt(++a))<<16|(255&e.charCodeAt(++a))<<24))+((1540483477*(r>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++a;switch(n){case 3:i^=(255&e.charCodeAt(a+2))<<16;case 2:i^=(255&e.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&e.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}e.exports=t})),is=rs,as=rs,os=ns;is.murmur3=as,is.murmur2=os;var ss=function(){this.ids=[],this.positions=[],this.indexed=!1};ss.prototype.add=function(e,t,r,n){this.ids.push(us(e)),this.positions.push(t,r,n)},ss.prototype.getPositions=function(e){for(var t=us(e),r=0,n=this.ids.length-1;r>1;this.ids[i]>=t?n=i:r=i+1}for(var a=[];this.ids[r]===t;){var o=this.positions[3*r],s=this.positions[3*r+1],l=this.positions[3*r+2];a.push({index:o,start:s,end:l}),r++}return a},ss.serialize=function(e,t){var r=new Float64Array(e.ids),n=new Uint32Array(e.positions);return cs(r,n,0,r.length-1),t&&t.push(r.buffer,n.buffer),{ids:r,positions:n}},ss.deserialize=function(e){var t=new ss;return t.ids=e.ids,t.positions=e.positions,t.indexed=!0,t};var ls=Math.pow(2,53)-1;function us(e){var t=+e;return!isNaN(t)&&t<=ls?t:is(String(e))}function cs(e,t,r,n){for(;r>1],a=r-1,o=n+1;;){do{a++}while(e[a]i);if(a>=o)break;fs(e,a,o),fs(t,3*a,3*o),fs(t,3*a+1,3*o+1),fs(t,3*a+2,3*o+2)}o-rDs.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 r}function zs(e,t,r,n,i){e.emplaceBack(2*t+(n+1)/2,2*r+(i+1)/2)}var Fs=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((function(e){return e.id})),this.index=e.index,this.hasPattern=!1,this.layoutVertexArray=new bo,this.indexArray=new Oo,this.segments=new Qo,this.programConfigurations=new Es(Jo,e.layers,e.zoom),this.stateDependentLayerIds=this.layers.filter((function(e){return e.isStateDependent()})).map((function(e){return e.id}))};function Ns(e,t){for(var r=0;r=3)for(var a=0;a1){if(Hs(e,t))return!0;for(var n=0;n1?e.distSqr(r):e.distSqr(r.sub(t)._mult(i)._add(t))}function Ys(e,t){for(var r,n,i,a=!1,o=0;ot.y!==i.y>t.y&&t.x<(i.x-n.x)*(t.y-n.y)/(i.y-n.y)+n.x&&(a=!a);return a}function Zs(e,t){for(var r=!1,n=0,i=e.length-1;nt.y!==o.y>t.y&&t.x<(o.x-a.x)*(t.y-a.y)/(o.y-a.y)+a.x&&(r=!r)}return r}function Xs(e,t,r,n,i){for(var o=0,s=e;o=l.x&&i>=l.y)return!0}var u=[new a(t,r),new a(t,i),new a(n,i),new a(n,r)];if(e.length>2)for(var c=0,f=u;ci.x&&t.x>i.x||e.yi.y&&t.y>i.y)return!1;var a=L(e,t,r[0]);return a!==L(e,t,r[1])||a!==L(e,t,r[2])||a!==L(e,t,r[3])}function $s(e,t,r){var n=t.paint.get(e).value;return"constant"===n.kind?n.value:r.programConfigurations.get(t.id).getMaxValue(e)}function Js(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Qs(e,t,r,n,i){if(!t[0]&&!t[1])return e;var o=a.convert(t)._mult(i);"viewport"===r&&o._rotate(-n);for(var s=[],l=0;l=Os||c<0||c>=Os)){var f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,e.sortKey),d=f.vertexLength;zs(this.layoutVertexArray,u,c,-1,-1),zs(this.layoutVertexArray,u,c,1,-1),zs(this.layoutVertexArray,u,c,1,1),zs(this.layoutVertexArray,u,c,-1,1),this.indexArray.emplaceBack(d,d+1,d+2),this.indexArray.emplaceBack(d,d+3,d+2),f.vertexLength+=4,f.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,r,{},n)},va("CircleBucket",Fs,{omit:["layers"]});var el=new lo({"circle-sort-key":new io(lt.layout_circle["circle-sort-key"])}),tl={paint:new lo({"circle-radius":new io(lt.paint_circle["circle-radius"]),"circle-color":new io(lt.paint_circle["circle-color"]),"circle-blur":new io(lt.paint_circle["circle-blur"]),"circle-opacity":new io(lt.paint_circle["circle-opacity"]),"circle-translate":new no(lt.paint_circle["circle-translate"]),"circle-translate-anchor":new no(lt.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new no(lt.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new no(lt.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new io(lt.paint_circle["circle-stroke-width"]),"circle-stroke-color":new io(lt.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new io(lt.paint_circle["circle-stroke-opacity"])}),layout:el},rl="undefined"!==typeof Float32Array?Float32Array:Array;function nl(){var e=new rl(4);return rl!=Float32Array&&(e[1]=0,e[2]=0),e[0]=1,e[3]=1,e}function il(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=Math.sin(r),l=Math.cos(r);return e[0]=n*l+a*s,e[1]=i*l+o*s,e[2]=n*-s+a*l,e[3]=i*-s+o*l,e}function al(){var e=new rl(9);return rl!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function ol(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=-r,e[4]=n,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e}function sl(){var e=new rl(16);return rl!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function ll(e){var t=new rl(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function ul(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function cl(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],d=t[10],h=t[11],p=t[12],v=t[13],m=t[14],g=t[15],y=r*s-n*o,x=r*l-i*o,b=r*u-a*o,_=n*l-i*s,w=n*u-a*s,k=i*u-a*l,T=c*v-f*p,M=c*m-d*p,A=c*g-h*p,S=f*m-d*v,E=f*g-h*v,C=d*g-h*m,L=y*C-x*E+b*S+_*A-w*M+k*T;return L?(L=1/L,e[0]=(s*C-l*E+u*S)*L,e[1]=(i*E-n*C-a*S)*L,e[2]=(v*k-m*w+g*_)*L,e[3]=(d*w-f*k-h*_)*L,e[4]=(l*A-o*C-u*M)*L,e[5]=(r*C-i*A+a*M)*L,e[6]=(m*b-p*k-g*x)*L,e[7]=(c*k-d*b+h*x)*L,e[8]=(o*E-s*A+u*T)*L,e[9]=(n*A-r*E-a*T)*L,e[10]=(p*w-v*b+g*y)*L,e[11]=(f*b-c*w-h*y)*L,e[12]=(s*M-o*S-l*T)*L,e[13]=(r*S-n*M+i*T)*L,e[14]=(v*x-p*_-m*y)*L,e[15]=(c*_-f*x+d*y)*L,e):null}function fl(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],v=t[12],m=t[13],g=t[14],y=t[15],x=r[0],b=r[1],_=r[2],w=r[3];return e[0]=x*n+b*s+_*f+w*v,e[1]=x*i+b*l+_*d+w*m,e[2]=x*a+b*u+_*h+w*g,e[3]=x*o+b*c+_*p+w*y,x=r[4],b=r[5],_=r[6],w=r[7],e[4]=x*n+b*s+_*f+w*v,e[5]=x*i+b*l+_*d+w*m,e[6]=x*a+b*u+_*h+w*g,e[7]=x*o+b*c+_*p+w*y,x=r[8],b=r[9],_=r[10],w=r[11],e[8]=x*n+b*s+_*f+w*v,e[9]=x*i+b*l+_*d+w*m,e[10]=x*a+b*u+_*h+w*g,e[11]=x*o+b*c+_*p+w*y,x=r[12],b=r[13],_=r[14],w=r[15],e[12]=x*n+b*s+_*f+w*v,e[13]=x*i+b*l+_*d+w*m,e[14]=x*a+b*u+_*h+w*g,e[15]=x*o+b*c+_*p+w*y,e}function dl(e,t,r){var n,i,a,o,s,l,u,c,f,d,h,p,v=r[0],m=r[1],g=r[2];return t===e?(e[12]=t[0]*v+t[4]*m+t[8]*g+t[12],e[13]=t[1]*v+t[5]*m+t[9]*g+t[13],e[14]=t[2]*v+t[6]*m+t[10]*g+t[14],e[15]=t[3]*v+t[7]*m+t[11]*g+t[15]):(n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],e[0]=n,e[1]=i,e[2]=a,e[3]=o,e[4]=s,e[5]=l,e[6]=u,e[7]=c,e[8]=f,e[9]=d,e[10]=h,e[11]=p,e[12]=n*v+s*m+f*g+t[12],e[13]=i*v+l*m+d*g+t[13],e[14]=a*v+u*m+h*g+t[14],e[15]=o*v+c*m+p*g+t[15]),e}function hl(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function pl(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+d*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=d*i-l*n,e}function vl(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+d*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=d*i-l*n,e}function ml(e,t,r,n,i){var a,o=1/Math.tan(t/2);return e[0]=o/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=i&&i!==1/0?(a=1/(n-i),e[10]=(i+n)*a,e[14]=2*i*n*a):(e[10]=-1,e[14]=-2*n),e}function gl(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}Math.hypot||(Math.hypot=function(){for(var e=arguments,t=0,r=arguments.length;r--;)t+=e[r]*e[r];return Math.sqrt(t)});var yl=fl;function xl(){var e=new rl(3);return rl!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function bl(e){var t=new rl(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function _l(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e}function wl(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e}function kl(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e}function Tl(e,t){var r=t[0],n=t[1],i=t[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a,e}function Ml(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Al(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2];return e[0]=i*l-a*s,e[1]=a*o-n*l,e[2]=n*s-i*o,e}function Sl(e,t,r){var n=t[0],i=t[1],a=t[2];return e[0]=n*r[0]+i*r[3]+a*r[6],e[1]=n*r[1]+i*r[4]+a*r[7],e[2]=n*r[2]+i*r[5]+a*r[8],e}var El=wl;function Cl(){var e=new rl(4);return rl!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function Ll(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e}function Pl(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function Ol(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3];return e[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,e[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,e[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,e[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,e}function Il(){var e=new rl(2);return rl!=Float32Array&&(e[0]=0,e[1]=0),e}function Dl(e){var t=e[0],r=e[1];return t*t+r*r}xl(),Cl();var Rl=Dl,zl=(Il(),function(e){function t(t){e.call(this,t,tl)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new Fs(e)},t.prototype.queryRadius=function(e){var t=e;return $s("circle-radius",this,t)+$s("circle-stroke-width",this,t)+Js(this.paint.get("circle-translate"))},t.prototype.queryIntersectsFeature=function(e,t,r,n,i,a,o,s){for(var l=Qs(e,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),a.angle,o),u=this.paint.get("circle-radius").evaluate(t,r)+this.paint.get("circle-stroke-width").evaluate(t,r),c="map"===this.paint.get("circle-pitch-alignment"),f=c?l:Nl(l,s),d=c?u*o:u,h=0,p=n;he.width||i.height>e.height||r.x>e.width-i.width||r.y>e.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>t.width||i.height>t.height||n.x>t.width-i.width||n.y>t.height-i.height)throw new RangeError("out of range destination coordinates for image copy");for(var o=e.data,s=t.data,l=0;l80*r){n=a=e[0],i=o=e[1];for(var p=r;pa&&(a=s),l>o&&(o=l);u=0!==(u=Math.max(a-n,o-i))?1/u:0}return ru(d,h,r,n,i,u),h}function eu(e,t,r,n,i){var a,o;if(i===Lu(e,t,r,n)>0)for(a=t;a=t;a-=n)o=Su(a,e[a],e[a+1],o);return o&&xu(o,o.next)&&(Eu(o),o=o.next),o}function tu(e,t){if(!e)return e;t||(t=e);var r,n=e;do{if(r=!1,n.steiner||!xu(n,n.next)&&0!==yu(n.prev,n,n.next))n=n.next;else{if(Eu(n),(n=t=n.prev)===n.next)break;r=!0}}while(r||n!==t);return t}function ru(e,t,r,n,i,a,o){if(e){!o&&a&&du(e,n,i,a);for(var s,l,u=e;e.prev!==e.next;)if(s=e.prev,l=e.next,a?iu(e,n,i,a):nu(e))t.push(s.i/r),t.push(e.i/r),t.push(l.i/r),Eu(e),e=l.next,u=l.next;else if((e=l)===u){o?1===o?ru(e=au(tu(e),t,r),t,r,n,i,a,2):2===o&&ou(e,t,r,n,i,a):ru(tu(e),t,r,n,i,a,1);break}}}function nu(e){var t=e.prev,r=e,n=e.next;if(yu(t,r,n)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(mu(t.x,t.y,r.x,r.y,n.x,n.y,i.x,i.y)&&yu(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function iu(e,t,r,n){var i=e.prev,a=e,o=e.next;if(yu(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,c=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=pu(s,l,t,r,n),d=pu(u,c,t,r,n),h=e.prevZ,p=e.nextZ;h&&h.z>=f&&p&&p.z<=d;){if(h!==e.prev&&h!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,h.x,h.y)&&yu(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,p!==e.prev&&p!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yu(p.prev,p,p.next)>=0)return!1;p=p.nextZ}for(;h&&h.z>=f;){if(h!==e.prev&&h!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,h.x,h.y)&&yu(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;p&&p.z<=d;){if(p!==e.prev&&p!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yu(p.prev,p,p.next)>=0)return!1;p=p.nextZ}return!0}function au(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!xu(i,a)&&bu(i,n,n.next,a)&&Tu(i,a)&&Tu(a,i)&&(t.push(i.i/r),t.push(n.i/r),t.push(a.i/r),Eu(n),Eu(n.next),n=e=a),n=n.next}while(n!==e);return tu(n)}function ou(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&gu(o,s)){var l=Au(o,s);return o=tu(o,o.next),l=tu(l,l.next),ru(o,t,r,n,i,a),void ru(l,t,r,n,i,a)}s=s.next}o=o.next}while(o!==e)}function su(e,t,r,n){var i,a,o,s=[];for(i=0,a=t.length;i=n.next.y&&n.next.y!==n.y){var s=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>o){if(o=s,s===i){if(a===n.y)return n;if(a===n.next.y)return n.next}r=n.x=n.x&&n.x>=c&&i!==n.x&&mu(ar.x||n.x===r.x&&fu(r,n)))&&(r=n,d=l)),n=n.next}while(n!==u);return r}function fu(e,t){return yu(e.prev,e,t.prev)<0&&yu(t.next,e,e.next)<0}function du(e,t,r,n){var i=e;do{null===i.z&&(i.z=pu(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,hu(i)}function hu(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1);return e}function pu(e,t,r,n,i){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function vu(e){var t=e,r=e;do{(t.x=0&&(e-o)*(n-s)-(r-o)*(t-s)>=0&&(r-o)*(a-s)-(i-o)*(n-s)>=0}function gu(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!ku(e,t)&&(Tu(e,t)&&Tu(t,e)&&Mu(e,t)&&(yu(e.prev,e,t.prev)||yu(e,t.prev,t))||xu(e,t)&&yu(e.prev,e,e.next)>0&&yu(t.prev,t,t.next)>0)}function yu(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function xu(e,t){return e.x===t.x&&e.y===t.y}function bu(e,t,r,n){var i=wu(yu(e,t,r)),a=wu(yu(e,t,n)),o=wu(yu(r,n,e)),s=wu(yu(r,n,t));return i!==a&&o!==s||!(0!==i||!_u(e,r,t))||!(0!==a||!_u(e,n,t))||!(0!==o||!_u(r,e,n))||!(0!==s||!_u(r,t,n))}function _u(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function wu(e){return e>0?1:e<0?-1:0}function ku(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&bu(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function Tu(e,t){return yu(e.prev,e,e.next)<0?yu(e,t,e.next)>=0&&yu(e,e.prev,t)>=0:yu(e,t,e.prev)<0||yu(e,e.next,t)<0}function Mu(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do{r.y>a!==r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==e);return n}function Au(e,t){var r=new Cu(e.i,e.x,e.y),n=new Cu(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function Su(e,t,r,n){var i=new Cu(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function Eu(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Cu(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Lu(e,t,r,n){for(var i=0,a=t,o=r-n;ar;){if(n-r>600){var a=n-r+1,o=t-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),u=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);Ou(e,t,Math.max(r,Math.floor(t-o*l/a+u)),Math.min(n,Math.floor(t+(a-o)*l/a+u)),i)}var c=e[t],f=r,d=n;for(Iu(e,r,t),i(e[n],c)>0&&Iu(e,r,n);f0;)d--}0===i(e[r],c)?Iu(e,r,d):Iu(e,++d,n),d<=t&&(r=d+1),t<=d&&(n=d-1)}}function Iu(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function Du(e,t){return et?1:0}function Ru(e,t){var r=e.length;if(r<=1)return[e];for(var n,i,a=[],o=0;o1)for(var l=0;l0&&(n+=e[i-1].length,r.holes.push(n))}return r},$l.default=Jl;var Bu=500,ju=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((function(e){return e.id})),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new bo,this.indexArray=new Oo,this.indexArray2=new No,this.programConfigurations=new Es(Kl,e.layers,e.zoom),this.segments=new Qo,this.segments2=new Qo,this.stateDependentLayerIds=this.layers.filter((function(e){return e.isStateDependent()})).map((function(e){return e.id}))};ju.prototype.populate=function(e,t,r){this.hasPattern=Fu("fill",this.layers,t);for(var n=this.layers[0].layout.get("fill-sort-key"),i=[],a=0,o=e;a>3}if(i--,1===n||2===n)o+=e.readSVarint(),s+=e.readSVarint(),1===n&&(t&&l.push(t),t=[]),t.push(new a(o,s));else{if(7!==n)throw new Error("unknown command "+n);t&&t.push(t[0].clone())}}return t&&l.push(t),l},Gu.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,n=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,u=-1/0;e.pos>3}if(n--,1===r||2===r)(i+=e.readSVarint())s&&(s=i),(a+=e.readSVarint())u&&(u=a);else if(7!==r)throw new Error("unknown command "+r)}return[o,l,s,u]},Gu.prototype.toGeoJSON=function(e,t,r){var n,i,a=this.extent*Math.pow(2,r),o=this.extent*e,s=this.extent*t,l=this.loadGeometry(),u=Gu.types[this.type];function c(e){for(var t=0;t>3;t=1===n?e.readString():2===n?e.readFloat():3===n?e.readDouble():4===n?e.readVarint64():5===n?e.readVarint():6===n?e.readSVarint():7===n?e.readBoolean():null}return t}function tc(e,t){this.layers=e.readFields(rc,{},t)}function rc(e,t,r){if(3===e){var n=new $u(r,r.readVarint()+r.pos);n.length&&(t[n.name]=n)}}Ju.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new Wu(this._pbf,t,this.extent,this._keys,this._values)};var nc={VectorTile:tc,VectorTileFeature:Wu,VectorTileLayer:$u},ic=nc.VectorTileFeature.types,ac=500,oc=Math.pow(2,13);function sc(e,t,r,n,i,a,o,s){e.emplaceBack(t,r,2*Math.floor(n*oc)+o,i*oc*2,a*oc*2,Math.round(s))}var lc=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((function(e){return e.id})),this.index=e.index,this.hasPattern=!1,this.layoutVertexArray=new wo,this.indexArray=new Oo,this.programConfigurations=new Es(qu,e.layers,e.zoom),this.segments=new Qo,this.stateDependentLayerIds=this.layers.filter((function(e){return e.isStateDependent()})).map((function(e){return e.id}))};function uc(e,t){return e.x===t.x&&(e.x<0||e.x>Os)||e.y===t.y&&(e.y<0||e.y>Os)}function cc(e){return e.every((function(e){return e.x<0}))||e.every((function(e){return e.x>Os}))||e.every((function(e){return e.y<0}))||e.every((function(e){return e.y>Os}))}lc.prototype.populate=function(e,t,r){this.features=[],this.hasPattern=Fu("fill-extrusion",this.layers,t);for(var n=0,i=e;n=1){var y=p[m-1];if(!uc(g,y)){f.vertexLength+4>Qo.MAX_VERTEX_ARRAY_LENGTH&&(f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=g.sub(y)._perp()._unit(),b=y.dist(g);v+b>32768&&(v=0),sc(this.layoutVertexArray,g.x,g.y,x.x,x.y,0,0,v),sc(this.layoutVertexArray,g.x,g.y,x.x,x.y,0,1,v),v+=b,sc(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,v),sc(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,v);var _=f.vertexLength;this.indexArray.emplaceBack(_,_+2,_+1),this.indexArray.emplaceBack(_+1,_+2,_+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"===ic[e.type]){for(var w=[],k=[],T=f.vertexLength,M=0,A=s;M=2&&e[l-1].equals(e[l-2]);)l--;for(var u=0;u0;if(k&&g>u){var M=c.dist(h);if(M>2*f){var A=c.sub(c.sub(h)._mult(f/M)._round());this.updateDistance(h,A),this.addCurrentVertex(A,v,0,0,d),h=A}}var S=h&&p,E=S?r:s?"butt":n;if(S&&"round"===E&&(_i&&(E="bevel"),"bevel"===E&&(_>2&&(E="flipbevel"),_100)y=m.mult(-1);else{var C=_*v.add(m).mag()/v.sub(m).mag();y._perp()._mult(C*(T?-1:1))}this.addCurrentVertex(c,y,0,0,d),this.addCurrentVertex(c,y.mult(-1),0,0,d)}else if("bevel"===E||"fakeround"===E){var L=-Math.sqrt(_*_-1),P=T?L:0,O=T?0:L;if(h&&this.addCurrentVertex(c,v,P,O,d),"fakeround"===E)for(var I=Math.round(180*w/Math.PI/kc),D=1;D2*f){var j=c.add(p.sub(c)._mult(f/B)._round());this.updateDistance(c,j),this.addCurrentVertex(j,m,0,0,d),c=j}}}}},Sc.prototype.addCurrentVertex=function(e,t,r,n,i,a){void 0===a&&(a=!1);var o=t.x+t.y*r,s=t.y-t.x*r,l=-t.x+t.y*n,u=-t.y-t.x*n;this.addHalfVertex(e,o,s,a,!1,r,i),this.addHalfVertex(e,l,u,a,!0,-n,i),this.distance>Ac/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(e,t,r,n,i,a))},Sc.prototype.addHalfVertex=function(e,t,r,n,i,a,o){var s=e.x,l=e.y,u=this.scaledDistance*Mc;this.layoutVertexArray.emplaceBack((s<<1)+(n?1:0),(l<<1)+(i?1:0),Math.round(bc*t)+128,Math.round(bc*r)+128,1+(0===a?0:a<0?-1:1)|(63&u)<<2,u>>6);var c=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,c),o.primitiveLength++),i?this.e2=c:this.e1=c},Sc.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(Ac-1):this.distance},Sc.prototype.updateDistance=function(e,t){this.distance+=e.dist(t),this.updateScaledDistance()},va("LineBucket",Sc,{omit:["layers","patternFeatures"]});var Ec=new lo({"line-cap":new no(lt.layout_line["line-cap"]),"line-join":new io(lt.layout_line["line-join"]),"line-miter-limit":new no(lt.layout_line["line-miter-limit"]),"line-round-limit":new no(lt.layout_line["line-round-limit"]),"line-sort-key":new io(lt.layout_line["line-sort-key"])}),Cc={paint:new lo({"line-opacity":new io(lt.paint_line["line-opacity"]),"line-color":new io(lt.paint_line["line-color"]),"line-translate":new no(lt.paint_line["line-translate"]),"line-translate-anchor":new no(lt.paint_line["line-translate-anchor"]),"line-width":new io(lt.paint_line["line-width"]),"line-gap-width":new io(lt.paint_line["line-gap-width"]),"line-offset":new io(lt.paint_line["line-offset"]),"line-blur":new io(lt.paint_line["line-blur"]),"line-dasharray":new oo(lt.paint_line["line-dasharray"]),"line-pattern":new ao(lt.paint_line["line-pattern"]),"line-gradient":new so(lt.paint_line["line-gradient"])}),layout:Ec},Lc=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.possiblyEvaluate=function(t,r){return r=new Za(Math.floor(r.zoom),{now:r.now,fadeDuration:r.fadeDuration,zoomHistory:r.zoomHistory,transition:r.transition}),e.prototype.possiblyEvaluate.call(this,t,r)},t.prototype.evaluate=function(t,r,n,i){return r=m({},r,{zoom:Math.floor(r.zoom)}),e.prototype.evaluate.call(this,t,r,n,i)},t}(io),Pc=new Lc(Cc.paint.properties["line-width"].specification);Pc.useIntegerZoom=!0;var Oc=function(e){function t(t){e.call(this,t,Cc)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._handleSpecialPaintPropertyUpdate=function(e){"line-gradient"===e&&this._updateGradient()},t.prototype._updateGradient=function(){var e=this._transitionablePaint._values["line-gradient"].value.expression;this.gradient=Gl(e,"lineProgress"),this.gradientTexture=null},t.prototype.recalculate=function(t,r){e.prototype.recalculate.call(this,t,r),this.paint._values["line-floorwidth"]=Pc.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,t)},t.prototype.createBucket=function(e){return new Sc(e)},t.prototype.queryRadius=function(e){var t=e,r=Ic($s("line-width",this,t),$s("line-gap-width",this,t)),n=$s("line-offset",this,t);return r/2+Math.abs(n)+Js(this.paint.get("line-translate"))},t.prototype.queryIntersectsFeature=function(e,t,r,n,i,a,o){var s=Qs(e,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),a.angle,o),l=o/2*Ic(this.paint.get("line-width").evaluate(t,r),this.paint.get("line-gap-width").evaluate(t,r)),u=this.paint.get("line-offset").evaluate(t,r);return u&&(n=Dc(n,u*o)),Us(s,n,l)},t.prototype.isTileClipped=function(){return!0},t}(co);function Ic(e,t){return t>0?t+2*e:e}function Dc(e,t){for(var r=[],n=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 qc(e){for(var t="",r=0;r>1,c=-7,f=r?i-1:0,d=r?-1:1,h=e[t+f];for(f+=d,a=h&(1<<-c)-1,h>>=-c,c+=s;c>0;a=256*a+e[t+f],f+=d,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+e[t+f],f+=d,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,n),a-=u}return(h?-1:1)*o*Math.pow(2,a-n)},write:function(e,t,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:a-1,p=n?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+f>=1?d/l:d*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+h]=255&s,h+=p,s/=256,i-=8);for(o=o<0;e[r+h]=255&o,h+=p,o/=256,u-=8);e[r+h-p]|=128*v}},Yc=Zc;function Zc(e){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(e)?e:new Uint8Array(e||0),this.pos=0,this.type=0,this.length=this.buf.length}Zc.Varint=0,Zc.Fixed64=1,Zc.Bytes=2,Zc.Fixed32=5;var Xc=4294967296,Kc=1/Xc,$c=12,Jc="undefined"===typeof TextDecoder?null:new TextDecoder("utf8");function Qc(e,t,r){var n,i,a=r.buf;if(n=(112&(i=a[r.pos++]))>>4,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<3,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<10,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<17,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<24,i<128)return tf(e,n,t);if(n|=(1&(i=a[r.pos++]))<<31,i<128)return tf(e,n,t);throw new Error("Expected varint not more than 10 bytes")}function ef(e){return e.type===Zc.Bytes?e.readVarint()+e.pos:e.pos+1}function tf(e,t,r){return r?4294967296*t+(e>>>0):4294967296*(t>>>0)+(e>>>0)}function rf(e,t){var r,n;if(e>=0?(r=e%4294967296|0,n=e/4294967296|0):(n=~(-e/4294967296),4294967295^(r=~(-e%4294967296))?r=r+1|0:(r=0,n=n+1|0)),e>=0x10000000000000000||e<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");t.realloc(10),nf(r,n,t),af(n,t)}function nf(e,t,r){r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos]=127&e}function af(e,t){var r=(7&e)<<4;t.buf[t.pos++]|=r|((e>>>=3)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e)))))}function of(e,t,r){var n=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.floor(Math.log(t)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=e;i--)r.buf[i+n]=r.buf[i]}function sf(e,t){for(var r=0;r>>8,e[r+2]=t>>>16,e[r+3]=t>>>24}function yf(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16)+(e[t+3]<<24)}function xf(e,t,r){for(var n="",i=t;i239?4:l>223?3:l>191?2:1;if(i+c>r)break;1===c?l<128&&(u=l):2===c?128===(192&(a=e[i+1]))&&(u=(31&l)<<6|63&a)<=127&&(u=null):3===c?(a=e[i+1],o=e[i+2],128===(192&a)&&128===(192&o)&&((u=(15&l)<<12|(63&a)<<6|63&o)<=2047||u>=55296&&u<=57343)&&(u=null)):4===c&&(a=e[i+1],o=e[i+2],s=e[i+3],128===(192&a)&&128===(192&o)&&128===(192&s)&&((u=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||u>=1114112)&&(u=null)),null===u?(u=65533,c=1):u>65535&&(u-=65536,n+=String.fromCharCode(u>>>10&1023|55296),u=56320|1023&u),n+=String.fromCharCode(u),i+=c}return n}function bf(e,t,r){return Jc.decode(e.subarray(t,r))}function _f(e,t,r){for(var n,i,a=0;a55295&&n<57344){if(!i){n>56319||a+1===t.length?(e[r++]=239,e[r++]=191,e[r++]=189):i=n;continue}if(n<56320){e[r++]=239,e[r++]=191,e[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(e[r++]=239,e[r++]=191,e[r++]=189,i=null);n<128?e[r++]=n:(n<2048?e[r++]=n>>6|192:(n<65536?e[r++]=n>>12|224:(e[r++]=n>>18|240,e[r++]=n>>12&63|128),e[r++]=n>>6&63|128),e[r++]=63&n|128)}return r}Zc.prototype={destroy:function(){this.buf=null},readFields:function(e,t,r){for(r=r||this.length;this.pos>3,a=this.pos;this.type=7&n,e(i,t,this),this.pos===a&&this.skip(n)}return t},readMessage:function(e,t){return this.readFields(e,t,this.readVarint()+this.pos)},readFixed32:function(){var e=mf(this.buf,this.pos);return this.pos+=4,e},readSFixed32:function(){var e=yf(this.buf,this.pos);return this.pos+=4,e},readFixed64:function(){var e=mf(this.buf,this.pos)+mf(this.buf,this.pos+4)*Xc;return this.pos+=8,e},readSFixed64:function(){var e=mf(this.buf,this.pos)+yf(this.buf,this.pos+4)*Xc;return this.pos+=8,e},readFloat:function(){var e=Gc.read(this.buf,this.pos,!0,23,4);return this.pos+=4,e},readDouble:function(){var e=Gc.read(this.buf,this.pos,!0,52,8);return this.pos+=8,e},readVarint:function(e){var t,r,n=this.buf;return t=127&(r=n[this.pos++]),r<128?t:(t|=(127&(r=n[this.pos++]))<<7,r<128?t:(t|=(127&(r=n[this.pos++]))<<14,r<128?t:(t|=(127&(r=n[this.pos++]))<<21,r<128?t:Qc(t|=(15&(r=n[this.pos]))<<28,e,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var e=this.readVarint();return e%2===1?(e+1)/-2:e/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var e=this.readVarint()+this.pos,t=this.pos;return this.pos=e,e-t>=$c&&Jc?bf(this.buf,t,e):xf(this.buf,t,e)},readBytes:function(){var e=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,e);return this.pos=e,t},readPackedVarint:function(e,t){if(this.type!==Zc.Bytes)return e.push(this.readVarint(t));var r=ef(this);for(e=e||[];this.pos127;);else if(t===Zc.Bytes)this.pos=this.readVarint()+this.pos;else if(t===Zc.Fixed32)this.pos+=4;else{if(t!==Zc.Fixed64)throw new Error("Unimplemented type: "+t);this.pos+=8}},writeTag:function(e,t){this.writeVarint(e<<3|t)},realloc:function(e){for(var t=this.length||16;t268435455||e<0?rf(e,this):(this.realloc(4),this.buf[this.pos++]=127&e|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=e>>>7&127))))},writeSVarint:function(e){this.writeVarint(e<0?2*-e-1:2*e)},writeBoolean:function(e){this.writeVarint(Boolean(e))},writeString:function(e){e=String(e),this.realloc(4*e.length),this.pos++;var t=this.pos;this.pos=_f(this.buf,e,this.pos);var r=this.pos-t;r>=128&&of(t,r,this),this.pos=t-1,this.writeVarint(r),this.pos+=r},writeFloat:function(e){this.realloc(4),Gc.write(this.buf,e,this.pos,!0,23,4),this.pos+=4},writeDouble:function(e){this.realloc(8),Gc.write(this.buf,e,this.pos,!0,52,8),this.pos+=8},writeBytes:function(e){var t=e.length;this.writeVarint(t),this.realloc(t);for(var r=0;r=128&&of(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(e,t,r){this.writeTag(e,Zc.Bytes),this.writeRawMessage(t,r)},writePackedVarint:function(e,t){t.length&&this.writeMessage(e,sf,t)},writePackedSVarint:function(e,t){t.length&&this.writeMessage(e,lf,t)},writePackedBoolean:function(e,t){t.length&&this.writeMessage(e,ff,t)},writePackedFloat:function(e,t){t.length&&this.writeMessage(e,uf,t)},writePackedDouble:function(e,t){t.length&&this.writeMessage(e,cf,t)},writePackedFixed32:function(e,t){t.length&&this.writeMessage(e,df,t)},writePackedSFixed32:function(e,t){t.length&&this.writeMessage(e,hf,t)},writePackedFixed64:function(e,t){t.length&&this.writeMessage(e,pf,t)},writePackedSFixed64:function(e,t){t.length&&this.writeMessage(e,vf,t)},writeBytesField:function(e,t){this.writeTag(e,Zc.Bytes),this.writeBytes(t)},writeFixed32Field:function(e,t){this.writeTag(e,Zc.Fixed32),this.writeFixed32(t)},writeSFixed32Field:function(e,t){this.writeTag(e,Zc.Fixed32),this.writeSFixed32(t)},writeFixed64Field:function(e,t){this.writeTag(e,Zc.Fixed64),this.writeFixed64(t)},writeSFixed64Field:function(e,t){this.writeTag(e,Zc.Fixed64),this.writeSFixed64(t)},writeVarintField:function(e,t){this.writeTag(e,Zc.Varint),this.writeVarint(t)},writeSVarintField:function(e,t){this.writeTag(e,Zc.Varint),this.writeSVarint(t)},writeStringField:function(e,t){this.writeTag(e,Zc.Bytes),this.writeString(t)},writeFloatField:function(e,t){this.writeTag(e,Zc.Fixed32),this.writeFloat(t)},writeDoubleField:function(e,t){this.writeTag(e,Zc.Fixed64),this.writeDouble(t)},writeBooleanField:function(e,t){this.writeVarintField(e,Boolean(t))}};var wf=3;function kf(e,t,r){1===e&&r.readMessage(Tf,t)}function Tf(e,t,r){if(3===e){var n=r.readMessage(Mf,{}),i=n.id,a=n.bitmap,o=n.width,s=n.height,l=n.left,u=n.top,c=n.advance;t.push({id:i,bitmap:new Hl({width:o+2*wf,height:s+2*wf},a),metrics:{width:o,height:s,left:l,top:u,advance:c}})}}function Mf(e,t,r){1===e?t.id=r.readVarint():2===e?t.bitmap=r.readBytes():3===e?t.width=r.readVarint():4===e?t.height=r.readVarint():5===e?t.left=r.readSVarint():6===e?t.top=r.readSVarint():7===e&&(t.advance=r.readVarint())}function Af(e){return new Yc(e).readFields(kf,[])}var Sf=wf;function Ef(e){for(var t=0,r=0,n=0,i=e;n=0;d--){var h=o[d];if(!(f.w>h.w||f.h>h.h)){if(f.x=h.x,f.y=h.y,l=Math.max(l,f.y+f.h),s=Math.max(s,f.x+f.w),f.w===h.w&&f.h===h.h){var p=o.pop();d=0&&n>=e&&Vf[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(e,r),this.sectionIndex=this.sectionIndex.slice(e,r)},Bf.prototype.substring=function(e,t){var r=new Bf;return r.text=this.text.substring(e,t),r.sectionIndex=this.sectionIndex.slice(e,t),r.sections=this.sections,r},Bf.prototype.toString=function(){return this.text},Bf.prototype.getMaxScale=function(){var e=this;return this.sectionIndex.reduce((function(t,r){return Math.max(t,e.sections[r].scale)}),0)},Bf.prototype.addTextSection=function(e,t){this.text+=e.text,this.sections.push(Nf.forText(e.scale,e.fontStack||t));for(var r=this.sections.length-1,n=0;n=Ff?null:++this.imageSectionID:(this.imageSectionID=zf,this.imageSectionID)};var Vf={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Hf={};function qf(e,t,r,n,i,a){if(t.imageName){var o=n[t.imageName];return o?o.displaySize[0]*t.scale*Wc/a+i:0}var s=r[t.fontStack],l=s&&s[e];return l?l.metrics.advance*t.scale+i:0}function Wf(e,t,r,n,i,a){for(var o=0,s=0;s=0,c=0,f=0;f0&&N>M&&(M=N)}else{var B=r[S.fontStack],j=B&&B[C];if(j&&j.rect)O=j.rect,P=j.metrics;else{var U=t[S.fontStack],V=U&&U[C];if(!V)continue;P=V.metrics}L=(_-S.scale)*Wc}R?(e.verticalizable=!0,T.push({glyph:C,imageName:I,x:d,y:h+L,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:O}),d+=D*S.scale+u):(T.push({glyph:C,imageName:I,x:d,y:h+L,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:O}),d+=P.advance*S.scale+u)}if(0!==T.length){var H=d-u;p=Math.max(H,p),Qf(T,0,T.length-1,m,M)}d=0;var q=a*_+M;k.lineOffset=Math.max(M,w),h+=q,v=Math.max(q,v),++g}else h+=a,++g}var W=h-Df,G=$f(o),Y=G.horizontalAlign,Z=G.verticalAlign;ed(e.positionedLines,m,Y,Z,p,v,a,W,i.length),e.top+=-Z*W,e.bottom=e.top+W,e.left+=-Y*p,e.right=e.left+p}function Qf(e,t,r,n,i){if(n||i)for(var a=e[r],o=a.metrics.advance*a.scale,s=(e[r].x+o)*n,l=t;l<=r;l++)e[l].x-=s,e[l].y+=i}function ed(e,t,r,n,i,a,o,s,l){var u=(t-r)*i,c=0;c=a!==o?-s*n-Df:(-n*l+.5)*o;for(var f=0,d=e;f-r/2;){if(--o<0)return!1;s-=e[o].dist(a),a=e[o]}s+=e[o].dist(e[o+1]),o++;for(var l=[],u=0;sn;)u-=l.shift().angleDelta;if(u>i)return!1;o++,s+=f.dist(d)}return!0}function cd(e){for(var t=0,r=0;ru){var p=(u-l)/h,v=zr(f.x,d.x,p),m=zr(f.y,d.y,p),g=new nd(v,m,d.angleTo(f),c);return g._round(),!o||ud(e,g,s,o,t)?g:void 0}l+=h}}function pd(e,t,r,n,i,a,o,s,l){var u=fd(n,a,o),c=dd(n,i),f=c*o,d=0===e[0].x||e[0].x===l||0===e[0].y||e[0].y===l;return t-f=0&&b=0&&_=0&&d+u<=c){var w=new nd(b,_,y,p);w._round(),n&&!ud(e,w,a,n,i)||h.push(w)}}f+=g}return s||h.length||o||(h=vd(e,f/2,r,n,i,a,o,!0,l)),h}function md(e,t,r,n,i){for(var o=[],s=0;s=n&&d.x>=n||(f.x>=n?f=new a(n,f.y+(d.y-f.y)*((n-f.x)/(d.x-f.x)))._round():d.x>=n&&(d=new a(n,f.y+(d.y-f.y)*((n-f.x)/(d.x-f.x)))._round()),f.y>=i&&d.y>=i||(f.y>=i?f=new a(f.x+(d.x-f.x)*((i-f.y)/(d.y-f.y)),i)._round():d.y>=i&&(d=new a(f.x+(d.x-f.x)*((i-f.y)/(d.y-f.y)),i)._round()),u&&f.equals(u[u.length-1])||(u=[f],o.push(u)),u.push(d)))))}return o}var gd=Cf;function yd(e,t,r,n){var i=[],o=e.image,s=o.pixelRatio,l=o.paddedRect.w-2*gd,u=o.paddedRect.h-2*gd,c=e.right-e.left,f=e.bottom-e.top,d=o.stretchX||[[0,l]],h=o.stretchY||[[0,u]],p=function(e,t){return e+t[1]-t[0]},v=d.reduce(p,0),m=h.reduce(p,0),g=l-v,y=u-m,x=0,b=v,_=0,w=m,k=0,T=g,M=0,A=y;if(o.content&&n){var S=o.content;x=xd(d,0,S[0]),_=xd(h,0,S[1]),b=xd(d,S[0],S[2]),w=xd(h,S[1],S[3]),k=S[0]-x,M=S[1]-_,T=S[2]-S[0]-b,A=S[3]-S[1]-w}var E=function(n,i,l,u){var d=_d(n.stretch-x,b,c,e.left),h=wd(n.fixed-k,T,n.stretch,v),p=_d(i.stretch-_,w,f,e.top),g=wd(i.fixed-M,A,i.stretch,m),y=_d(l.stretch-x,b,c,e.left),S=wd(l.fixed-k,T,l.stretch,v),E=_d(u.stretch-_,w,f,e.top),C=wd(u.fixed-M,A,u.stretch,m),L=new a(d,p),P=new a(y,p),O=new a(y,E),I=new a(d,E),D=new a(h/s,g/s),R=new a(S/s,C/s),z=t*Math.PI/180;if(z){var F=Math.sin(z),N=Math.cos(z),B=[N,-F,F,N];L._matMult(B),P._matMult(B),I._matMult(B),O._matMult(B)}var j=n.stretch+n.fixed,U=l.stretch+l.fixed,V=i.stretch+i.fixed,H=u.stretch+u.fixed;return{tl:L,tr:P,bl:I,br:O,tex:{x:o.paddedRect.x+gd+j,y:o.paddedRect.y+gd+V,w:U-j,h:H-V},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:T/s/c,minFontScaleY:A/s/f,isSDF:r}};if(n&&(o.stretchX||o.stretchY))for(var C=bd(d,g,v),L=bd(h,y,m),P=0;P0&&(p=Math.max(10,p),this.circleDiameter=p)}else{var v=o.top*s-l,m=o.bottom*s+l,g=o.left*s-l,y=o.right*s+l,x=o.collisionPadding;if(x&&(g-=x[0]*s,v-=x[1]*s,y+=x[2]*s,m+=x[3]*s),c){var b=new a(g,v),_=new a(y,v),w=new a(g,m),k=new a(y,m),T=c*Math.PI/180;b._rotate(T),_._rotate(T),w._rotate(T),k._rotate(T),g=Math.min(b.x,_.x,w.x,k.x),y=Math.max(b.x,_.x,w.x,k.x),v=Math.min(b.y,_.y,w.y,k.y),m=Math.max(b.y,_.y,w.y,k.y)}e.emplaceBack(t.x,t.y,g,v,y,m,r,n,i)}this.boxEndIndex=e.length},Md=function(e,t){if(void 0===e&&(e=[]),void 0===t&&(t=Ad),this.data=e,this.length=this.data.length,this.compare=t,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function Ad(e,t){return et?1:0}function Sd(e,t,r){void 0===t&&(t=1),void 0===r&&(r=!1);for(var n=1/0,i=1/0,o=-1/0,s=-1/0,l=e[0],u=0;uo)&&(o=c.x),(!u||c.y>s)&&(s=c.y)}var f=o-n,d=s-i,h=Math.min(f,d),p=h/2,v=new Md([],Ed);if(0===h)return new a(n,i);for(var m=n;my.d||!y.d)&&(y=b,r&&console.log("found best %d after %d probes",Math.round(1e4*b.d)/1e4,x)),b.max-y.d<=t||(p=b.h/2,v.push(new Cd(b.p.x-p,b.p.y-p,p,e)),v.push(new Cd(b.p.x+p,b.p.y-p,p,e)),v.push(new Cd(b.p.x-p,b.p.y+p,p,e)),v.push(new Cd(b.p.x+p,b.p.y+p,p,e)),x+=4)}return r&&(console.log("num probes: "+x),console.log("best distance: "+y.d)),y.p}function Ed(e,t){return t.max-e.max}function Cd(e,t,r,n){this.p=new a(e,t),this.h=r,this.d=Ld(this.p,n),this.max=this.d+this.h*Math.SQRT2}function Ld(e,t){for(var r=!1,n=1/0,i=0;ie.y!==c.y>e.y&&e.x<(c.x-u.x)*(e.y-u.y)/(c.y-u.y)+u.x&&(r=!r),n=Math.min(n,Gs(e,u,c))}return(r?1:-1)*Math.sqrt(n)}function Pd(e){for(var t=0,r=0,n=0,i=e[0],a=0,o=i.length,s=o-1;a0&&(this.data[0]=t,this._down(0)),e}},Md.prototype.peek=function(){return this.data[0]},Md.prototype._up=function(e){for(var t=this,r=t.data,n=t.compare,i=r[e];e>0;){var a=e-1>>1,o=r[a];if(n(i,o)>=0)break;r[e]=o,e=a}r[e]=i},Md.prototype._down=function(e){for(var t=this,r=t.data,n=t.compare,i=this.length>>1,a=r[e];e=0)break;r[e]=s,e=o}r[e]=a};var Od=7,Id=Number.POSITIVE_INFINITY;function Dd(e,t){function r(e,t){var r=0,n=0;t<0&&(t=0);var i=t/Math.sqrt(2);switch(e){case"top-right":case"top-left":n=i-Od;break;case"bottom-right":case"bottom-left":n=-i+Od;break;case"bottom":n=-t+Od;break;case"top":n=t-Od}switch(e){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=t;break;case"right":r=-t}return[r,n]}function n(e,t,r){var n=0,i=0;switch(t=Math.abs(t),r=Math.abs(r),e){case"top-right":case"top-left":case"top":i=r-Od;break;case"bottom-right":case"bottom-left":case"bottom":i=-r+Od}switch(e){case"top-right":case"bottom-right":case"right":n=-t;break;case"top-left":case"bottom-left":case"left":n=t}return[n,i]}return t[1]!==Id?n(e,t[0],t[1]):r(e,t[0])}function Rd(e,t,r,n,i,a,o){e.createArrays();var s=512*e.overscaling;e.tilePixelRatio=Os/s,e.compareText={},e.iconsNeedLinear=!1;var l=e.layers[0].layout,u=e.layers[0]._unevaluatedLayout._values,c={};if("composite"===e.textSizeData.kind){var f=e.textSizeData,d=f.minZoom,h=f.maxZoom;c.compositeTextSizes=[u["text-size"].possiblyEvaluate(new Za(d),o),u["text-size"].possiblyEvaluate(new Za(h),o)]}if("composite"===e.iconSizeData.kind){var p=e.iconSizeData,v=p.minZoom,m=p.maxZoom;c.compositeIconSizes=[u["icon-size"].possiblyEvaluate(new Za(v),o),u["icon-size"].possiblyEvaluate(new Za(m),o)]}c.layoutTextSize=u["text-size"].possiblyEvaluate(new Za(e.zoom+1),o),c.layoutIconSize=u["icon-size"].possiblyEvaluate(new Za(e.zoom+1),o),c.textMaxSize=u["text-size"].possiblyEvaluate(new Za(18));for(var g=l.get("text-line-height")*Wc,y="map"===l.get("text-rotation-alignment")&&"point"!==l.get("symbol-placement"),x=l.get("text-keep-upright"),b=l.get("text-size"),_=function(){var a=k[w],s=l.get("text-font").evaluate(a,{},o).join(","),u=b.evaluate(a,{},o),f=c.layoutTextSize.evaluate(a,{},o),d=c.layoutIconSize.evaluate(a,{},o),h={horizontal:{},vertical:void 0},p=a.text,v=[0,0];if(p){var m=p.toString(),_=l.get("text-letter-spacing").evaluate(a,{},o)*Wc,T=Ta(m)?_: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);v=S?Dd(M,[S*Wc,Id]):l.get("text-offset").evaluate(a,{},o).map((function(e){return e*Wc}))}var E=y?"center":l.get("text-justify").evaluate(a,{},o),L=l.get("symbol-placement"),P="point"===L?l.get("text-max-width").evaluate(a,{},o)*Wc:0,O=function(){e.allowVerticalPlacement&&ka(m)&&(h.vertical=Uf(p,t,r,i,s,P,g,M,"left",T,v,If.vertical,!0,L,f,u))};if(!y&&A){for(var I="auto"===E?A.map((function(e){return zd(e)})):[E],D=!1,R=0;R=Os||f.y<0||f.y>=Os||Vd(e,f,s,r,n,i,d,e.layers[0],e.collisionBoxArray,t.index,t.sourceLayerIndex,e.index,y,w,M,l,b,k,A,p,t,a,u,c,o)};if("line"===S)for(var P=0,O=md(t.geometry,0,0,Os,Os);P1){var j=hd(B,T,r.vertical||v,n,m,x);j&&L(B,j)}}else if("Polygon"===t.type)for(var U=0,V=Ru(t.geometry,0);UBd&&C(e.layerIds[0]+': Value for "text-size" is >= '+Nd+'. Reduce your "text-size".'):"composite"===m.kind&&((g=[id*h.compositeTextSizes[0].evaluate(o,{},p),id*h.compositeTextSizes[1].evaluate(o,{},p)])[0]>Bd||g[1]>Bd)&&C(e.layerIds[0]+': Value for "text-size" is >= '+Nd+'. Reduce your "text-size".'),e.addSymbols(e.text,v,g,s,a,o,u,t,l.lineStartIndex,l.lineLength,d,p);for(var y=0,x=c;yBd&&C(e.layerIds[0]+': Value for "icon-size" is >= '+Nd+'. Reduce your "icon-size".'):"composite"===Z.kind&&((X=[id*_.compositeIconSizes[0].evaluate(b,{},k),id*_.compositeIconSizes[1].evaluate(b,{},k)])[0]>Bd||X[1]>Bd)&&C(e.layerIds[0]+': Value for "icon-size" is >= '+Nd+'. Reduce your "icon-size".'),e.addSymbols(e.icon,G,X,x,y,b,!1,t,P.lineStartIndex,P.lineLength,-1,k),z=e.icon.placedSymbolArray.length-1,Y&&(I=4*Y.length,e.addSymbols(e.icon,Y,X,x,y,b,If.vertical,t,P.lineStartIndex,P.lineLength,-1,k),F=e.icon.placedSymbolArray.length-1)}for(var K in n.horizontal){var $=n.horizontal[K];if(!A){B=is($.text);var J=s.layout.get("text-rotate").evaluate(b,{},k);A=new Td(l,t,u,c,f,$,d,h,p,J)}var Q=1===$.positionedLines.length;if(D+=jd(e,t,$,a,s,p,b,v,P,n.vertical?If.horizontal:If.horizontalOnly,Q?Object.keys(n.horizontal):[K],N,z,_,k),Q)break}n.vertical&&(R+=jd(e,t,n.vertical,a,s,p,b,v,P,If.vertical,["vertical"],N,F,_,k));var ee=A?A.boxStartIndex:e.collisionBoxArray.length,te=A?A.boxEndIndex:e.collisionBoxArray.length,re=E?E.boxStartIndex:e.collisionBoxArray.length,ne=E?E.boxEndIndex:e.collisionBoxArray.length,ie=S?S.boxStartIndex:e.collisionBoxArray.length,ae=S?S.boxEndIndex:e.collisionBoxArray.length,oe=L?L.boxStartIndex:e.collisionBoxArray.length,se=L?L.boxEndIndex:e.collisionBoxArray.length,le=-1,ue=function(e,t){return e&&e.circleDiameter?Math.max(e.circleDiameter,t):t};le=ue(A,le),le=ue(E,le),le=ue(S,le);var ce=(le=ue(L,le))>-1?1:0;ce&&(le*=T/Wc),e.glyphOffsetArray.length>=$d.MAX_GLYPHS&&C("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==b.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,b.sortKey),e.symbolInstances.emplaceBack(t.x,t.y,N.right>=0?N.right:-1,N.center>=0?N.center:-1,N.left>=0?N.left:-1,N.vertical||-1,z,F,B,ee,te,re,ne,ie,ae,oe,se,u,D,R,O,I,ce,0,d,j,U,le)}function Hd(e,t,r,n){var i=e.compareText;if(t in i){for(var a=i[t],o=a.length-1;o>=0;o--)if(n.dist(a[o])0)&&("constant"!==a.value.kind||a.value.value.length>0),u="constant"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,c=i.get("symbol-sort-key");if(this.features=[],l||u){for(var f=t.iconDependencies,d=t.glyphDependencies,h=t.availableImages,p=new Za(this.zoom),v=0,m=e;v=0;for(var I=0,D=T.sections;I=0;s--)a[s]={x:t[s].x,y:t[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=t[s-1].dist(t[s]));for(var l=0;l0},$d.prototype.hasIconData=function(){return this.icon.segments.get().length>0},$d.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},$d.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},$d.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},$d.prototype.addIndicesForPlacedSymbol=function(e,t){for(var r=e.placedSymbolArray.get(t),n=r.vertexStartIndex+4*r.numGlyphs,i=r.vertexStartIndex;i1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(e),this.sortedAngle=e,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r=0&&n.indexOf(e)===r&&t.addIndicesForPlacedSymbol(t.text,e)})),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)}},va("SymbolBucket",$d,{omit:["layers","collisionBoxArray","features","compareText"]}),$d.MAX_GLYPHS=65535,$d.addDynamicAttributes=Yd;var Qd=new lo({"symbol-placement":new no(lt.layout_symbol["symbol-placement"]),"symbol-spacing":new no(lt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new no(lt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new io(lt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new no(lt.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new no(lt.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new no(lt.layout_symbol["icon-ignore-placement"]),"icon-optional":new no(lt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new no(lt.layout_symbol["icon-rotation-alignment"]),"icon-size":new io(lt.layout_symbol["icon-size"]),"icon-text-fit":new no(lt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new no(lt.layout_symbol["icon-text-fit-padding"]),"icon-image":new io(lt.layout_symbol["icon-image"]),"icon-rotate":new io(lt.layout_symbol["icon-rotate"]),"icon-padding":new no(lt.layout_symbol["icon-padding"]),"icon-keep-upright":new no(lt.layout_symbol["icon-keep-upright"]),"icon-offset":new io(lt.layout_symbol["icon-offset"]),"icon-anchor":new io(lt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new no(lt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new no(lt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new no(lt.layout_symbol["text-rotation-alignment"]),"text-field":new io(lt.layout_symbol["text-field"]),"text-font":new io(lt.layout_symbol["text-font"]),"text-size":new io(lt.layout_symbol["text-size"]),"text-max-width":new io(lt.layout_symbol["text-max-width"]),"text-line-height":new no(lt.layout_symbol["text-line-height"]),"text-letter-spacing":new io(lt.layout_symbol["text-letter-spacing"]),"text-justify":new io(lt.layout_symbol["text-justify"]),"text-radial-offset":new io(lt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new no(lt.layout_symbol["text-variable-anchor"]),"text-anchor":new io(lt.layout_symbol["text-anchor"]),"text-max-angle":new no(lt.layout_symbol["text-max-angle"]),"text-writing-mode":new no(lt.layout_symbol["text-writing-mode"]),"text-rotate":new io(lt.layout_symbol["text-rotate"]),"text-padding":new no(lt.layout_symbol["text-padding"]),"text-keep-upright":new no(lt.layout_symbol["text-keep-upright"]),"text-transform":new io(lt.layout_symbol["text-transform"]),"text-offset":new io(lt.layout_symbol["text-offset"]),"text-allow-overlap":new no(lt.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new no(lt.layout_symbol["text-ignore-placement"]),"text-optional":new no(lt.layout_symbol["text-optional"])}),eh={paint:new lo({"icon-opacity":new io(lt.paint_symbol["icon-opacity"]),"icon-color":new io(lt.paint_symbol["icon-color"]),"icon-halo-color":new io(lt.paint_symbol["icon-halo-color"]),"icon-halo-width":new io(lt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new io(lt.paint_symbol["icon-halo-blur"]),"icon-translate":new no(lt.paint_symbol["icon-translate"]),"icon-translate-anchor":new no(lt.paint_symbol["icon-translate-anchor"]),"text-opacity":new io(lt.paint_symbol["text-opacity"]),"text-color":new io(lt.paint_symbol["text-color"],{runtimeType:bt,getOverride:function(e){return e.textColor},hasOverride:function(e){return!!e.textColor}}),"text-halo-color":new io(lt.paint_symbol["text-halo-color"]),"text-halo-width":new io(lt.paint_symbol["text-halo-width"]),"text-halo-blur":new io(lt.paint_symbol["text-halo-blur"]),"text-translate":new no(lt.paint_symbol["text-translate"]),"text-translate-anchor":new no(lt.paint_symbol["text-translate-anchor"])}),layout:Qd},th=function(e){this.type=e.property.overrides?e.property.overrides.runtimeType:mt,this.defaultValue=e};th.prototype.evaluate=function(e){if(e.formattedSection){var t=this.defaultValue.property.overrides;if(t&&t.hasOverride(e.formattedSection))return t.getOverride(e.formattedSection)}return e.feature&&e.featureState?this.defaultValue.evaluate(e.feature,e.featureState):this.defaultValue.property.specification.default},th.prototype.eachChild=function(e){this.defaultValue.isConstant()||e(this.defaultValue.value._styleExpression.expression)},th.prototype.outputDefined=function(){return!1},th.prototype.serialize=function(){return null},va("FormatSectionOverride",th,{omit:["defaultValue"]});var rh=function(e){function t(t){e.call(this,t,eh)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.recalculate=function(t,r){if(e.prototype.recalculate.call(this,t,r),"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 n=this.layout.get("text-writing-mode");if(n){for(var i=[],a=0,o=n;a",targetMapId:n,sourceMapId:a.mapId})}}},yh.prototype.receive=function(e){var t=e.data,r=t.id;if(r&&(!t.targetMapId||this.mapId===t.targetMapId))if(""===t.type){delete this.tasks[r];var n=this.cancelCallbacks[r];delete this.cancelCallbacks[r],n&&n()}else I()||t.mustQueue?(this.tasks[r]=t,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,t)},yh.prototype.process=function(){if(this.taskQueue.length){var e=this.taskQueue.shift(),t=this.tasks[e];delete this.tasks[e],this.taskQueue.length&&this.invoker.trigger(),t&&this.processTask(e,t)}},yh.prototype.processTask=function(e,t){var r=this;if(""===t.type){var n=this.callbacks[e];delete this.callbacks[e],n&&(t.error?n(ba(t.error)):n(null,ba(t.data)))}else{var i=!1,a=z(this.globalScope)?void 0:[],o=t.hasCallback?function(t,n){i=!0,delete r.cancelCallbacks[e],r.target.postMessage({id:e,type:"",sourceMapId:r.mapId,error:t?xa(t):null,data:xa(n,a)},a)}:function(e){i=!0},s=null,l=ba(t.data);if(this.parent[t.type])s=this.parent[t.type](t.sourceMapId,l,o);else if(this.parent.getWorkerSource){var u=t.type.split(".");s=this.parent.getWorkerSource(t.sourceMapId,u[0],l.source)[u[1]](l,o)}else o(new Error("Could not find function "+t.type));!i&&s&&s.cancel&&(this.cancelCallbacks[e]=s.cancel)}},yh.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var _h=function(e,t){e&&(t?this.setSouthWest(e).setNorthEast(t):4===e.length?this.setSouthWest([e[0],e[1]]).setNorthEast([e[2],e[3]]):this.setSouthWest(e[0]).setNorthEast(e[1]))};_h.prototype.setNorthEast=function(e){return this._ne=e instanceof kh?new kh(e.lng,e.lat):kh.convert(e),this},_h.prototype.setSouthWest=function(e){return this._sw=e instanceof kh?new kh(e.lng,e.lat):kh.convert(e),this},_h.prototype.extend=function(e){var t,r,n=this._sw,i=this._ne;if(e instanceof kh)t=e,r=e;else{if(!(e instanceof _h)){if(Array.isArray(e)){if(4===e.length||e.every(Array.isArray)){var a=e;return this.extend(_h.convert(a))}var o=e;return this.extend(kh.convert(o))}return this}if(t=e._sw,r=e._ne,!t||!r)return this}return n||i?(n.lng=Math.min(t.lng,n.lng),n.lat=Math.min(t.lat,n.lat),i.lng=Math.max(r.lng,i.lng),i.lat=Math.max(r.lat,i.lat)):(this._sw=new kh(t.lng,t.lat),this._ne=new kh(r.lng,r.lat)),this},_h.prototype.getCenter=function(){return new kh((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},_h.prototype.getSouthWest=function(){return this._sw},_h.prototype.getNorthEast=function(){return this._ne},_h.prototype.getNorthWest=function(){return new kh(this.getWest(),this.getNorth())},_h.prototype.getSouthEast=function(){return new kh(this.getEast(),this.getSouth())},_h.prototype.getWest=function(){return this._sw.lng},_h.prototype.getSouth=function(){return this._sw.lat},_h.prototype.getEast=function(){return this._ne.lng},_h.prototype.getNorth=function(){return this._ne.lat},_h.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},_h.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},_h.prototype.isEmpty=function(){return!(this._sw&&this._ne)},_h.prototype.contains=function(e){var t=kh.convert(e),r=t.lng,n=t.lat,i=this._sw.lat<=n&&n<=this._ne.lat,a=this._sw.lng<=r&&r<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=r&&r>=this._ne.lng),i&&a},_h.convert=function(e){return!e||e instanceof _h?e:new _h(e)};var wh=6371008.8,kh=function(e,t){if(isNaN(e)||isNaN(t))throw new Error("Invalid LngLat object: ("+e+", "+t+")");if(this.lng=+e,this.lat=+t,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};kh.prototype.wrap=function(){return new kh(d(this.lng,-180,180),this.lat)},kh.prototype.toArray=function(){return[this.lng,this.lat]},kh.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},kh.prototype.distanceTo=function(e){var t=Math.PI/180,r=this.lat*t,n=e.lat*t,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((e.lng-this.lng)*t);return wh*Math.acos(Math.min(i,1))},kh.prototype.toBounds=function(e){void 0===e&&(e=0);var t=360*e/40075017,r=t/Math.cos(Math.PI/180*this.lat);return new _h(new kh(this.lng-r,this.lat-t),new kh(this.lng+r,this.lat+t))},kh.convert=function(e){if(e instanceof kh)return e;if(Array.isArray(e)&&(2===e.length||3===e.length))return new kh(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&"object"===typeof e&&null!==e)return new kh(Number("lng"in e?e.lng:e.lon),Number(e.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 Th=2*Math.PI*wh;function Mh(e){return Th*Math.cos(e*Math.PI/180)}function Ah(e){return(180+e)/360}function Sh(e){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e*Math.PI/360)))/360}function Eh(e,t){return e/Mh(t)}function Ch(e){return 360*e-180}function Lh(e){var t=180-360*e;return 360/Math.PI*Math.atan(Math.exp(t*Math.PI/180))-90}function Ph(e,t){return e*Mh(Lh(t))}function Oh(e){return 1/Math.cos(e*Math.PI/180)}var Ih=function(e,t,r){void 0===r&&(r=0),this.x=+e,this.y=+t,this.z=+r};Ih.fromLngLat=function(e,t){void 0===t&&(t=0);var r=kh.convert(e);return new Ih(Ah(r.lng),Sh(r.lat),Eh(t,r.lat))},Ih.prototype.toLngLat=function(){return new kh(Ch(this.x),Lh(this.y))},Ih.prototype.toAltitude=function(){return Ph(this.z,this.y)},Ih.prototype.meterInMercatorCoordinateUnits=function(){return 1/Th*Oh(Lh(this.y))};var Dh=function(e,t,r){this.z=e,this.x=t,this.y=r,this.key=Fh(0,e,e,t,r)};Dh.prototype.equals=function(e){return this.z===e.z&&this.x===e.x&&this.y===e.y},Dh.prototype.url=function(e,t){var r=xh(this.x,this.y,this.z),n=Nh(this.z,this.x,this.y);return e[(this.x+this.y)%e.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"===t?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",n).replace("{bbox-epsg-3857}",r)},Dh.prototype.getTilePoint=function(e){var t=Math.pow(2,this.z);return new a((e.x*t-this.x)*Os,(e.y*t-this.y)*Os)},Dh.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var Rh=function(e,t){this.wrap=e,this.canonical=t,this.key=Fh(e,t.z,t.z,t.x,t.y)},zh=function(e,t,r,n,i){this.overscaledZ=e,this.wrap=t,this.canonical=new Dh(r,+n,+i),this.key=Fh(t,e,r,n,i)};function Fh(e,t,r,n,i){(e*=2)<0&&(e=-1*e-1);var a=1<0;a--)i+=(t&(n=1<this.canonical.z?new zh(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new zh(e,this.wrap,e,this.canonical.x>>t,this.canonical.y>>t)},zh.prototype.calculateScaledKey=function(e,t){var r=this.canonical.z-e;return e>this.canonical.z?Fh(this.wrap*+t,e,this.canonical.z,this.canonical.x,this.canonical.y):Fh(this.wrap*+t,e,e,this.canonical.x>>r,this.canonical.y>>r)},zh.prototype.isChildOf=function(e){if(e.wrap!==this.wrap)return!1;var t=this.canonical.z-e.canonical.z;return 0===e.overscaledZ||e.overscaledZ>t&&e.canonical.y===this.canonical.y>>t},zh.prototype.children=function(e){if(this.overscaledZ>=e)return[new zh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var t=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new zh(t,this.wrap,t,r,n),new zh(t,this.wrap,t,r+1,n),new zh(t,this.wrap,t,r,n+1),new zh(t,this.wrap,t,r+1,n+1)]},zh.prototype.isLessThan=function(e){return this.wrape.wrap)&&(this.overscaledZe.overscaledZ)&&(this.canonical.xe.canonical.x)&&this.canonical.y=this.dim+1||t<-1||t>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(t+1)*this.stride+(e+1)},Bh.prototype._unpackMapbox=function(e,t,r){return(256*e*256+256*t+r)/10-1e4},Bh.prototype._unpackTerrarium=function(e,t,r){return 256*e+t+r/256-32768},Bh.prototype.getPixels=function(){return new ql({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bh.prototype.backfillBorder=function(e,t,r){if(this.dim!==e.dim)throw new Error("dem dimension mismatch");var n=t*this.dim,i=t*this.dim+this.dim,a=r*this.dim,o=r*this.dim+this.dim;switch(t){case-1:n=i-1;break;case 1:i=n+1}switch(r){case-1:a=o-1;break;case 1:o=a+1}for(var s=-t*this.dim,l=-r*this.dim,u=a;u=0&&c[3]>=0&&s.insert(o,c[0],c[1],c[2],c[3])}},Wh.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new nc.VectorTile(new Yc(this.rawTileData)).layers,this.sourceLayerCoder=new Uh(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Wh.prototype.query=function(e,t,r,n){var i=this;this.loadVTLayers();for(var a=e.params||{},o=Os/e.tileSize/e.scale,s=Li(a.filter),l=e.queryGeometry,u=e.queryPadding*o,c=Yh(l),f=this.grid.query(c.minX-u,c.minY-u,c.maxX+u,c.maxY+u),d=Yh(e.cameraQueryGeometry),h=0,p=this.grid3D.query(d.minX-u,d.minY-u,d.maxX+u,d.maxY+u,(function(t,r,n,i){return Xs(e.cameraQueryGeometry,t-u,r-u,n+u,i+u)}));hn)i=!1;else if(t)if(this.expirationTime=E.maxzoom||"none"!==E.visibility&&(l(S,this.zoom,n),(v[E.id]=E.createBucket({index:c.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:b,sourceID:this.source})).populate(_,m,this.tileID.canonical),c.bucketLayerIDs.push(S.map((function(e){return e.id}))))}}}var C=e.mapObject(m.glyphDependencies,(function(e){return Object.keys(e).map(Number)}));Object.keys(C).length?i.send("getGlyphs",{uid:this.uid,stacks:C},(function(e,t){f||(f=e,d=t,O.call(s))})):d={};var L=Object.keys(m.iconDependencies);L.length?i.send("getImages",{icons:L,source:this.source,tileID:this.tileID,type:"icons"},(function(e,t){f||(f=e,h=t,O.call(s))})):h={};var P=Object.keys(m.patternDependencies);function O(){if(f)return a(f);if(d&&h&&p){var t=new o(d),r=new e.ImageAtlas(h,p);for(var i in v){var s=v[i];s instanceof e.SymbolBucket?(l(s.layers,this.zoom,n),e.performSymbolLayout(s,d,t.positions,h,r.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):s.hasPattern&&(s instanceof e.LineBucket||s instanceof e.FillBucket||s instanceof e.FillExtrusionBucket)&&(l(s.layers,this.zoom,n),s.addFeatures(m,this.tileID.canonical,r.patternPositions))}this.status="done",a(null,{buckets:e.values(v).filter((function(e){return!e.isEmpty()})),featureIndex:c,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:t.image,imageAtlas:r,glyphMap:this.returnDependencies?d:null,iconMap:this.returnDependencies?h:null,glyphPositions:this.returnDependencies?t.positions:null})}}P.length?i.send("getImages",{icons:P,source:this.source,tileID:this.tileID,type:"patterns"},(function(e,t){f||(f=e,p=t,O.call(s))})):p={},O.call(this)};var c=function(e,t,r,n){this.actor=e,this.layerIndex=t,this.availableImages=r,this.loadVectorData=n||u,this.loading={},this.loaded={}};c.prototype.loadTile=function(t,r){var n=this,i=t.uid;this.loading||(this.loading={});var a=!!(t&&t.request&&t.request.collectResourceTiming)&&new e.RequestPerformance(t.request),o=this.loading[i]=new s(t);o.abort=this.loadVectorData(t,(function(t,s){if(delete n.loading[i],t||!s)return o.status="done",n.loaded[i]=o,r(t);var l=s.rawData,u={};s.expires&&(u.expires=s.expires),s.cacheControl&&(u.cacheControl=s.cacheControl);var c={};if(a){var f=a.finish();f&&(c.resourceTiming=JSON.parse(JSON.stringify(f)))}o.vectorTile=s.vectorTile,o.parse(s.vectorTile,n.layerIndex,n.availableImages,n.actor,(function(t,n){if(t||!n)return r(t);r(null,e.extend({rawTileData:l.slice(0)},n,u,c))})),n.loaded=n.loaded||{},n.loaded[i]=o}))},c.prototype.reloadTile=function(e,t){var r=this,n=this.loaded,i=e.uid,a=this;if(n&&n[i]){var o=n[i];o.showCollisionBoxes=e.showCollisionBoxes;var s=function(e,n){var i=o.reloadCallback;i&&(delete o.reloadCallback,o.parse(o.vectorTile,a.layerIndex,r.availableImages,a.actor,i)),t(e,n)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},c.prototype.abortTile=function(e,t){var r=this.loading,n=e.uid;r&&r[n]&&r[n].abort&&(r[n].abort(),delete r[n]),t()},c.prototype.removeTile=function(e,t){var r=this.loaded,n=e.uid;r&&r[n]&&delete r[n],t()};var f=e.window.ImageBitmap,d=function(){this.loaded={}};d.prototype.loadTile=function(t,r){var n=t.uid,i=t.encoding,a=t.rawImageData,o=f&&a instanceof f?this.getImageData(a):a,s=new e.DEMData(n,o,i);this.loaded=this.loaded||{},this.loaded[n]=s,r(null,s)},d.prototype.getImageData=function(t){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(t.width,t.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=t.width,this.offscreenCanvas.height=t.height,this.offscreenCanvasContext.drawImage(t,0,0,t.width,t.height);var r=this.offscreenCanvasContext.getImageData(-1,-1,t.width+2,t.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new e.RGBAImage({width:r.width,height:r.height},r.data)},d.prototype.removeTile=function(e){var t=this.loaded,r=e.uid;t&&t[r]&&delete t[r]};var h=p;function p(e,t){var r,n=e&&e.type;if("FeatureCollection"===n)for(r=0;r=0!==!!t&&e.reverse()}var g=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,y=function(t){this._feature=t,this.extent=e.EXTENT,this.type=t.type,this.properties=t.tags,"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))};y.prototype.loadGeometry=function(){if(1===this._feature.type){for(var t=[],r=0,n=this._feature.geometry;r>31}function z(e,t){for(var r=e.loadGeometry(),n=e.type,i=0,a=0,o=r.length,s=0;s>1;B(e,t,o,n,i,a%2),N(e,t,r,n,o-1,a+1),N(e,t,r,o+1,i,a+1)}}function B(e,t,r,n,i,a){for(;i>n;){if(i-n>600){var o=i-n+1,s=r-n+1,l=Math.log(o),u=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*u*(o-u)/o)*(s-o/2<0?-1:1);B(e,t,r,Math.max(n,Math.floor(r-s*u/o+c)),Math.min(i,Math.floor(r+(o-s)*u/o+c)),a)}var f=t[2*r+a],d=n,h=i;for(j(e,t,n,r),t[2*i+a]>f&&j(e,t,n,i);df;)h--}t[2*n+a]===f?j(e,t,n,h):j(e,t,++h,i),h<=r&&(n=h+1),r<=h&&(i=h-1)}}function j(e,t,r,n){U(e,r,n),U(t,2*r,2*n),U(t,2*r+1,2*n+1)}function U(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function V(e,t,r,n,i,a,o){for(var s,l,u=[0,e.length-1,0],c=[];u.length;){var f=u.pop(),d=u.pop(),h=u.pop();if(d-h<=o)for(var p=h;p<=d;p++)s=t[2*p],l=t[2*p+1],s>=r&&s<=i&&l>=n&&l<=a&&c.push(e[p]);else{var v=Math.floor((h+d)/2);s=t[2*v],l=t[2*v+1],s>=r&&s<=i&&l>=n&&l<=a&&c.push(e[v]);var m=(f+1)%2;(0===f?r<=s:n<=l)&&(u.push(h),u.push(v-1),u.push(m)),(0===f?i>=s:a>=l)&&(u.push(v+1),u.push(d),u.push(m))}}return c}function H(e,t,r,n,i,a){for(var o=[0,e.length-1,0],s=[],l=i*i;o.length;){var u=o.pop(),c=o.pop(),f=o.pop();if(c-f<=a)for(var d=f;d<=c;d++)q(t[2*d],t[2*d+1],r,n)<=l&&s.push(e[d]);else{var h=Math.floor((f+c)/2),p=t[2*h],v=t[2*h+1];q(p,v,r,n)<=l&&s.push(e[h]);var m=(u+1)%2;(0===u?r-i<=p:n-i<=v)&&(o.push(f),o.push(h-1),o.push(m)),(0===u?r+i>=p:n+i>=v)&&(o.push(h+1),o.push(c),o.push(m))}}return s}function q(e,t,r,n){var i=e-r,a=t-n;return i*i+a*a}T.fromVectorTileJs=M,T.fromGeojsonVt=A,T.GeoJSONWrapper=S;var W=function(e){return e[0]},G=function(e){return e[1]},Y=function(e,t,r,n,i){void 0===t&&(t=W),void 0===r&&(r=G),void 0===n&&(n=64),void 0===i&&(i=Float64Array),this.nodeSize=n,this.points=e;for(var a=e.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(e.length),s=this.coords=new i(2*e.length),l=0;l=1e4?Math.round(t/1e3)+"k":t>=1e3?Math.round(t/100)/10+"k":t;return ie(ie({},e.properties),{cluster:!0,cluster_id:e.id,point_count:t,point_count_abbreviated:r})}function ee(e){return e/360+.5}function te(e){var t=Math.sin(e*Math.PI/180),r=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return r<0?0:r>1?1:r}function re(e){return 360*(e-.5)}function ne(e){var t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function ie(e,t){for(var r in t)e[r]=t[r];return e}function ae(e){return e.x}function oe(e){return e.y}function se(e,t,r,n){for(var i,a=n,o=r-t>>1,s=r-t,l=e[t],u=e[t+1],c=e[r],f=e[r+1],d=t+3;da)i=d,a=h;else if(h===a){var p=Math.abs(d-o);pn&&(i-t>3&&se(e,t,i,n),e[i+2]=a,r-i>3&&se(e,i,r,n))}function le(e,t,r,n,i,a){var o=i-r,s=a-n;if(0!==o||0!==s){var l=((e-r)*o+(t-n)*s)/(o*o+s*s);l>1?(r=i,n=a):l>0&&(r+=o*l,n+=s*l)}return(o=e-r)*o+(s=t-n)*s}function ue(e,t,r,n){var i={id:"undefined"===typeof e?null:e,type:t,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return ce(i),i}function ce(e){var t=e.geometry,r=e.type;if("Point"===r||"MultiPoint"===r||"LineString"===r)fe(e,t);else if("Polygon"===r||"MultiLineString"===r)for(var n=0;n0&&(o+=n?(i*u-l*a)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(u-a,2))),i=l,a=u}var c=t.length-3;t[2]=1,se(t,0,c,r),t[c+2]=1,t.size=Math.abs(o),t.start=0,t.end=t.size}function me(e,t,r,n){for(var i=0;i1?1:r}function xe(e,t,r,n,i,a,o,s){if(n/=t,a>=(r/=t)&&o=n)return null;for(var l=[],u=0;u=r&&p=n)){var v=[];if("Point"===d||"MultiPoint"===d)be(f,v,r,n,i);else if("LineString"===d)_e(f,v,r,n,i,!1,s.lineMetrics);else if("MultiLineString"===d)ke(f,v,r,n,i,!1);else if("Polygon"===d)ke(f,v,r,n,i,!0);else if("MultiPolygon"===d)for(var m=0;m=r&&o<=n&&(t.push(e[a]),t.push(e[a+1]),t.push(e[a+2]))}}function _e(e,t,r,n,i,a,o){for(var s,l,u=we(e),c=0===i?Me:Ae,f=e.start,d=0;dr&&(l=c(u,h,p,m,g,r),o&&(u.start=f+s*l)):y>n?x=r&&(l=c(u,h,p,m,g,r),b=!0),x>n&&y<=n&&(l=c(u,h,p,m,g,n),b=!0),!a&&b&&(o&&(u.end=f+s*l),t.push(u),u=we(e)),o&&(f+=s)}var _=e.length-3;h=e[_],p=e[_+1],v=e[_+2],(y=0===i?h:p)>=r&&y<=n&&Te(u,h,p,v),_=u.length-3,a&&_>=3&&(u[_]!==u[0]||u[_+1]!==u[1])&&Te(u,u[0],u[1],u[2]),u.length&&t.push(u)}function we(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function ke(e,t,r,n,i,a){for(var o=0;oo.maxX&&(o.maxX=c),f>o.maxY&&(o.maxY=f)}return o}function Ie(e,t,r,n){var i=t.geometry,a=t.type,o=[];if("Point"===a||"MultiPoint"===a)for(var s=0;s0&&t.size<(i?o:n))r.numPoints+=t.length/3;else{for(var s=[],l=0;lo)&&(r.numSimplified++,s.push(t[l]),s.push(t[l+1])),r.numPoints++;i&&Re(s,a),e.push(s)}}function Re(e,t){for(var r=0,n=0,i=e.length,a=i-2;n0===t)for(n=0,i=e.length;n24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");var n=de(e,t);this.tiles={},this.tileCoords=[],r&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",t.indexMaxZoom,t.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(n=Se(n,t)).length&&this.splitTile(n,0,0,0),r&&(n.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 Ne(e,t,r){return 32*((1<=n;u--){var c=+Date.now();s=this._cluster(s,u),this.trees[u]=new Y(s,ae,oe,a,Float32Array),r&&console.log("z%d: %d clusters in %dms",u,s.length,+Date.now()-c)}return r&&console.timeEnd("total time"),this},X.prototype.getClusters=function(e,t){var r=((e[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,e[1])),i=180===e[2]?180:((e[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)r=-180,i=180;else if(r>i){var o=this.getClusters([r,n,180,a],t),s=this.getClusters([-180,n,i,a],t);return o.concat(s)}for(var l=this.trees[this._limitZoom(t)],u=[],c=0,f=l.range(ee(r),te(a),ee(i),te(n));c1?this._map(u,!0):null,m=(l<<5)+(t+1)+this.points.length,g=0,y=f;g>5},X.prototype._getOriginZoom=function(e){return(e-this.points.length)%32},X.prototype._map=function(e,t){if(e.numPoints)return t?ie({},e.properties):e.properties;var r=this.points[e.index].properties,n=this.options.map(r);return t&&n===r?ie({},n):n},Fe.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Fe.prototype.splitTile=function(e,t,r,n,i,a,o){for(var s=[e,t,r,n],l=this.options,u=l.debug;s.length;){n=s.pop(),r=s.pop(),t=s.pop(),e=s.pop();var c=1<1&&console.time("creation"),d=this.tiles[f]=Oe(e,t,r,n,l),this.tileCoords.push({z:t,x:r,y:n}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,r,n,d.numFeatures,d.numPoints,d.numSimplified),console.timeEnd("creation"));var h="z"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(d.source=e,i){if(t===l.maxZoom||t===i)continue;var p=1<1&&console.time("clipping");var v,m,g,y,x,b,_=.5*l.buffer/l.extent,w=.5-_,k=.5+_,T=1+_;v=m=g=y=null,x=xe(e,c,r-_,r+k,0,d.minX,d.maxX,l),b=xe(e,c,r+w,r+T,0,d.minX,d.maxX,l),e=null,x&&(v=xe(x,c,n-_,n+k,1,d.minY,d.maxY,l),m=xe(x,c,n+w,n+T,1,d.minY,d.maxY,l),x=null),b&&(g=xe(b,c,n-_,n+k,1,d.minY,d.maxY,l),y=xe(b,c,n+w,n+T,1,d.minY,d.maxY,l),b=null),u>1&&console.timeEnd("clipping"),s.push(v||[],t+1,2*r,2*n),s.push(m||[],t+1,2*r,2*n+1),s.push(g||[],t+1,2*r+1,2*n),s.push(y||[],t+1,2*r+1,2*n+1)}}},Fe.prototype.getTile=function(e,t,r){var n=this.options,i=n.extent,a=n.debug;if(e<0||e>24)return null;var o=1<1&&console.log("drilling down to z%d-%d-%d",e,t,r);for(var l,u=e,c=t,f=r;!l&&u>0;)u--,c=Math.floor(c/2),f=Math.floor(f/2),l=this.tiles[Ne(u,c,f)];return l&&l.source?(a>1&&console.log("found parent tile z%d-%d-%d",u,c,f),a>1&&console.time("drilling down"),this.splitTile(l.source,u,c,f,e,t,r),a>1&&console.timeEnd("drilling down"),this.tiles[s]?Le(this.tiles[s],i):null):null};var Ue=function(t){function r(e,r,n,i){t.call(this,e,r,n,je),i&&(this.loadGeoJSON=i)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.loadData=function(e,t){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=t,this._pendingLoadDataParams=e,this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},r.prototype._loadData=function(){var t=this;if(this._pendingCallback&&this._pendingLoadDataParams){var r=this._pendingCallback,n=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var i=!!(n&&n.request&&n.request.collectResourceTiming)&&new e.RequestPerformance(n.request);this.loadGeoJSON(n,(function(e,a){if(e||!a)return r(e);if("object"!==typeof a)return r(new Error("Input data given to '"+n.source+"' is not a valid GeoJSON object."));h(a,!0);try{t._geoJSONIndex=n.cluster?new X(Ve(n)).load(a.features):ze(a,n.geojsonVtOptions)}catch(e){return r(e)}t.loaded={};var o={};if(i){var s=i.finish();s&&(o.resourceTiming={},o.resourceTiming[n.source]=JSON.parse(JSON.stringify(s)))}r(null,o)}))}},r.prototype.coalesce=function(){"Coalescing"===this._state?this._state="Idle":"NeedsLoadData"===this._state&&(this._state="Coalescing",this._loadData())},r.prototype.reloadTile=function(e,r){var n=this.loaded,i=e.uid;return n&&n[i]?t.prototype.reloadTile.call(this,e,r):this.loadTile(e,r)},r.prototype.loadGeoJSON=function(t,r){if(t.request)e.getJSON(t.request,r);else{if("string"!==typeof t.data)return r(new Error("Input data given to '"+t.source+"' is not a valid GeoJSON object."));try{return r(null,JSON.parse(t.data))}catch(n){return r(new Error("Input data given to '"+t.source+"' is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(e,t){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),t()},r.prototype.getClusterExpansionZoom=function(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId))}catch(r){t(r)}},r.prototype.getClusterChildren=function(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId))}catch(r){t(r)}},r.prototype.getClusterLeaves=function(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset))}catch(r){t(r)}},r}(c);function Ve(t){var r=t.superclusterOptions,n=t.clusterProperties;if(!n||!r)return r;for(var i={},a={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(n),u=0,c=l;u1?"@2x":"",l=e.getJSON(r.transformRequest(r.normalizeSpriteURL(t,s,".json"),e.ResourceType.SpriteJSON),(function(e,t){l=null,o||(o=e,i=t,c())})),u=e.getImage(r.transformRequest(r.normalizeSpriteURL(t,s,".png"),e.ResourceType.SpriteImage),(function(e,t){u=null,o||(o=e,a=t,c())}));function c(){if(o)n(o);else if(i&&a){var t=e.browser.getImageData(a),r={};for(var s in i){var l=i[s],u=l.width,c=l.height,f=l.x,d=l.y,h=l.sdf,p=l.pixelRatio,v=l.stretchX,m=l.stretchY,g=l.content,y=new e.RGBAImage({width:u,height:c});e.RGBAImage.copy(t,y,{x:f,y:d},{x:0,y:0},{width:u,height:c}),r[s]={data:y,pixelRatio:p,sdf:h,stretchX:v,stretchY:m,content:g}}n(null,r)}}return{cancel:function(){l&&(l.cancel(),l=null),u&&(u.cancel(),u=null)}}}function d(e){var t=e.userImage;return!!(t&&t.render&&t.render())&&(e.data.replace(new Uint8Array(t.data.buffer)),!0)}r.suppressClick=function(){e.window.addEventListener("click",c,!0),e.window.setTimeout((function(){e.window.removeEventListener("click",c,!0)}),0)},r.mousePos=function(t,r){var n=t.getBoundingClientRect();return new e.Point(r.clientX-n.left-t.clientLeft,r.clientY-n.top-t.clientTop)},r.touchPos=function(t,r){for(var n=t.getBoundingClientRect(),i=[],a=0;a=0?0:t.button},r.remove=function(e){e.parentNode&&e.parentNode.removeChild(e)};var h=1,p=function(t){function r(){t.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.isLoaded=function(){return this.loaded},r.prototype.setLoaded=function(e){if(this.loaded!==e&&(this.loaded=e,e)){for(var t=0,r=this.requestors;t=0?1.2:1))}function b(e,t,r,n,i,a,o){for(var s=0;s65535)t(new Error("glyphs > 65535 not supported"));else if(a.ranges[s])t(null,{stack:r,id:i,glyph:o});else{var l=a.requests[s];l||(l=a.requests[s]=[],w.loadGlyphRange(r,s,n.url,n.requestManager,(function(e,t){if(t){for(var r in t)n._doesCharSupportLocalGlyph(+r)||(a.glyphs[+r]=t[+r]);a.ranges[s]=!0}for(var i=0,o=l;i1&&(l=e[++s]);var c=Math.abs(u-l.left),f=Math.abs(u-l.right),d=Math.min(c,f),h=void 0,p=i/r*(n+1);if(l.isDash){var v=n-Math.abs(p);h=Math.sqrt(d*d+v*v)}else h=n-Math.sqrt(d*d+p*p);this.data[o+u]=Math.max(0,Math.min(255,h+128))}},S.prototype.addRegularDash=function(e){for(var t=e.length-1;t>=0;--t){var r=e[t],n=e[t+1];r.zeroLength?e.splice(t,1):n&&n.isDash===r.isDash&&(n.left=r.left,e.splice(t,1))}var i=e[0],a=e[e.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=e[s],u=0;u1&&(l=e[++s]);var c=Math.abs(u-l.left),f=Math.abs(u-l.right),d=Math.min(c,f),h=l.isDash?d:-d;this.data[o+u]=Math.max(0,Math.min(255,h+128))}},S.prototype.addDash=function(t,r){var n=r?7:0,i=2*n+1;if(this.nextRow+i>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var a=0,o=0;o=n.minX&&t.x=n.minY&&t.y0&&(l[new e.OverscaledTileID(t.overscaledZ,a,r.z,i,r.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,t.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+10&&(n.resourceTiming=t._resourceTiming,t._resourceTiming=[]),t.fire(new e.Event("data",n))}}))},r.prototype.onAdd=function(e){this.map=e,this.load()},r.prototype.setData=function(t){var r=this;return this._data=t,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(t){if(t)r.fire(new e.ErrorEvent(t));else{var n={dataType:"source",sourceDataType:"content"};r._collectResourceTiming&&r._resourceTiming&&r._resourceTiming.length>0&&(n.resourceTiming=r._resourceTiming,r._resourceTiming=[]),r.fire(new e.Event("data",n))}})),this},r.prototype.getClusterExpansionZoom=function(e,t){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:e,source:this.id},t),this},r.prototype.getClusterChildren=function(e,t){return this.actor.send("geojson.getClusterChildren",{clusterId:e,source:this.id},t),this},r.prototype.getClusterLeaves=function(e,t,r,n){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:e,limit:t,offset:r},n),this},r.prototype._updateWorkerData=function(t){var r=this;this._loaded=!1;var n=e.extend({},this.workerOptions),i=this._data;"string"===typeof i?(n.request=this.map._requestManager.transformRequest(e.browser.resolveURL(i),e.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(i),this.actor.send(this.type+".loadData",n,(function(e,i){r._removed||i&&i.abandoned||(r._loaded=!0,i&&i.resourceTiming&&i.resourceTiming[r.id]&&(r._resourceTiming=i.resourceTiming[r.id].slice(0)),r.actor.send(r.type+".coalesce",{source:n.source},null),t(e))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.loadTile=function(t,r){var n=this,i=t.actor?"reloadTile":"loadTile";t.actor=this.actor;var a={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};t.request=this.actor.send(i,a,(function(e,a){return delete t.request,t.unloadVectorData(),t.aborted?r(null):e?r(e):(t.loadVectorData(a,n.map.painter,"reloadTile"===i),r(null))}))},r.prototype.abortTile=function(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0},r.prototype.unloadTile=function(e){e.unloadVectorData(),this.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id})},r.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},r.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},r.prototype.hasTransition=function(){return!1},r}(e.Evented),R=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),z=function(t){function r(e,r,n,i){t.call(this),this.id=e,this.dispatcher=n,this.coordinates=r.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(i),this.options=r}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.load=function(t,r){var n=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),(function(i,a){n._loaded=!0,i?n.fire(new e.ErrorEvent(i)):a&&(n.image=a,t&&(n.coordinates=t),r&&r(),n._finishLoading())}))},r.prototype.loaded=function(){return this._loaded},r.prototype.updateImage=function(e){var t=this;return this.image&&e.url?(this.options.url=e.url,this.load(e.coordinates,(function(){t.texture=null})),this):this},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},r.prototype.onAdd=function(e){this.map=e,this.load()},r.prototype.setCoordinates=function(t){var r=this;this.coordinates=t;var n=t.map(e.MercatorCoordinate.fromLngLat);this.tileID=F(n),this.minzoom=this.maxzoom=this.tileID.z;var i=n.map((function(e){return r.tileID.getTilePoint(e)._round()}));return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},r.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var t=this.map.painter.context,r=t.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(t,this.image,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[n];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},r.prototype.loadTile=function(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state="errored",t(null))},r.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return!1},r}(e.Evented);function F(t){for(var r=1/0,n=1/0,i=-1/0,a=-1/0,o=0,s=t;or.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+r.start(0)+" and "+r.end(0)+"-second mark."))):this.video.currentTime=t}},r.prototype.getVideo=function(){return this.video},r.prototype.onAdd=function(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},r.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var t=this.map.painter.context,r=t.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE),r.texSubImage2D(r.TEXTURE_2D,0,0,0,r.RGBA,r.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(t,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[n];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},r.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this.video&&!this.video.paused},r}(z),B=function(t){function r(r,n,i,a){t.call(this,r,n,i,a),n.coordinates?Array.isArray(n.coordinates)&&4===n.coordinates.length&&!n.coordinates.some((function(e){return!Array.isArray(e)||2!==e.length||e.some((function(e){return"number"!==typeof e}))}))||this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,null,'missing required property "coordinates"'))),n.animate&&"boolean"!==typeof n.animate&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,null,'optional "animate" property must be a boolean value'))),n.canvas?"string"===typeof n.canvas||n.canvas instanceof e.window.HTMLCanvasElement||this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,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 e.ErrorEvent(new e.ValidationError("sources."+r,null,'missing required property "canvas"'))),this.options=n,this.animate=void 0===n.animate||n.animate}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.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())},r.prototype.getCanvas=function(){return this.canvas},r.prototype.onAdd=function(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play()},r.prototype.onRemove=function(){this.pause()},r.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var r=this.map.painter.context,n=r.gl;for(var i in this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(r,this.canvas,n.RGBA,{premultiply:!0}),this.tiles){var a=this.tiles[i];"loaded"!==a.state&&(a.state="loaded",a.texture=this.texture)}}},r.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this._playing},r.prototype._hasInvalidDimensions=function(){for(var e=0,t=[this.canvas.width,this.canvas.height];ethis.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},$.prototype.has=function(e){return e.wrapped().key in this.data},$.prototype.getAndRemove=function(e){return this.has(e)?this._getAndRemoveByKey(e.wrapped().key):null},$.prototype._getAndRemoveByKey=function(e){var t=this.data[e].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[e].length&&delete this.data[e],this.order.splice(this.order.indexOf(e),1),t.value},$.prototype.getByKey=function(e){var t=this.data[e];return t?t[0].value:null},$.prototype.get=function(e){return this.has(e)?this.data[e.wrapped().key][0].value:null},$.prototype.remove=function(e,t){if(!this.has(e))return this;var r=e.wrapped().key,n=void 0===t?0:this.data[r].indexOf(t),i=this.data[r][n];return this.data[r].splice(n,1),i.timeout&&clearTimeout(i.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(i.value),this.order.splice(this.order.indexOf(r),1),this},$.prototype.setMaxSize=function(e){for(this.max=e;this.order.length>this.max;){var t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this},$.prototype.filter=function(e){var t=[];for(var r in this.data)for(var n=0,i=this.data[r];n1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),t.dem&&e.dem&&(e.dem.backfillBorder(t.dem,r,n),e.neighboringTiles&&e.neighboringTiles[a]&&(e.neighboringTiles[a].backfilled=!0)))}},r.prototype.getTile=function(e){return this.getTileByID(e.key)},r.prototype.getTileByID=function(e){return this._tiles[e]},r.prototype._retainLoadedChildren=function(e,t,r,n){for(var i in this._tiles){var a=this._tiles[i];if(!(n[i]||!a.hasData()||a.tileID.overscaledZ<=t||a.tileID.overscaledZ>r)){for(var o=a.tileID;a&&a.tileID.overscaledZ>t+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>t;)if(e[(l=l.scaledTo(l.overscaledZ-1)).key]){n[o.key]=o;break}}}},r.prototype.findLoadedParent=function(e,t){if(e.key in this._loadedParentTiles){var r=this._loadedParentTiles[e.key];return r&&r.tileID.overscaledZ>=t?r:null}for(var n=e.overscaledZ-1;n>=t;n--){var i=e.scaledTo(n),a=this._getLoadedTile(i);if(a)return a}},r.prototype._getLoadedTile=function(e){var t=this._tiles[e.key];return t&&t.hasData()?t:this._cache.getByKey(e.wrapped().key)},r.prototype.updateCacheSize=function(e){var t=(Math.ceil(e.width/this._source.tileSize)+1)*(Math.ceil(e.height/this._source.tileSize)+1),r=5,n=Math.floor(t*r),i="number"===typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,n):n;this._cache.setMaxSize(i)},r.prototype.handleWrapJump=function(e){var t=(e-(void 0===this._prevLng?e:this._prevLng))/360,r=Math.round(t);if(this._prevLng=e,r){var n={};for(var i in this._tiles){var a=this._tiles[i];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+r),n[a.tileID.key]=a}for(var o in this._tiles=n,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)}}},r.prototype.update=function(t){var n=this;if(this.transform=t,this._sourceLoaded&&!this._paused){var i;this.updateCacheSize(t),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?i=t.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(t){return new e.OverscaledTileID(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y)})):(i=t.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(e){return n._source.hasTile(e)})))):i=[];var a=t.coveringZoomLevel(this._source),o=Math.max(a-r.maxOverzooming,this._source.minzoom),s=Math.max(a+r.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(i,a);if(Je(this._source.type)){for(var u={},c={},f=0,d=Object.keys(l);fthis._source.maxzoom){var m=p.children(this._source.maxzoom)[0],g=this.getTile(m);if(g&&g.hasData()){n[m.key]=m;continue}}else{var y=p.children(this._source.maxzoom);if(n[y[0].key]&&n[y[1].key]&&n[y[2].key]&&n[y[3].key])continue}for(var x=v.wasRequested(),b=p.overscaledZ-1;b>=a;--b){var _=p.scaledTo(b);if(i[_.key])break;if(i[_.key]=!0,!(v=this.getTile(_))&&x&&(v=this._addTile(_)),v&&(n[_.key]=_,x=v.wasRequested(),v.hasData()))break}}}return n},r.prototype._updateLoadedParentTileCache=function(){for(var e in this._loadedParentTiles={},this._tiles){for(var t=[],r=void 0,n=this._tiles[e].tileID;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}t.push(n.key);var i=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(i))break;n=i}for(var a=0,o=t;a0||(t.hasData()&&"reloading"!==t.state?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))))},r.prototype.clearTiles=function(){for(var e in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(e);this._cache.reset()},r.prototype.tilesIn=function(t,r,n){var i=this,a=[],o=this.transform;if(!o)return a;for(var s=n?o.getCameraQueryGeometry(t):t,l=t.map((function(e){return o.pointCoordinate(e)})),u=s.map((function(e){return o.pointCoordinate(e)})),c=this.getIds(),f=1/0,d=1/0,h=-1/0,p=-1/0,v=0,m=u;v=0&&g[1].y+m>=0){var y=l.map((function(e){return s.getTilePoint(e)})),x=u.map((function(e){return s.getTilePoint(e)}));a.push({tile:n,tileID:s,queryGeometry:y,cameraQueryGeometry:x,scale:v})}}},x=0;x=e.browser.now())return!0}return!1},r.prototype.setFeatureState=function(e,t,r){e=e||"_geojsonTileLayer",this._state.updateState(e,t,r)},r.prototype.removeFeatureState=function(e,t,r){e=e||"_geojsonTileLayer",this._state.removeFeatureState(e,t,r)},r.prototype.getFeatureState=function(e,t){return e=e||"_geojsonTileLayer",this._state.getState(e,t)},r.prototype.setDependencies=function(e,t,r){var n=this._tiles[e];n&&n.setDependencies(t,r)},r.prototype.reloadTilesForDependencies=function(e,t){for(var r in this._tiles)this._tiles[r].hasDependency(e,t)&&this._reloadTile(r,"reloading");this._cache.filter((function(r){return!r.hasDependency(e,t)}))},r}(e.Evented);function $e(e,t){var r=Math.abs(2*e.wrap)-+(e.wrap<0),n=Math.abs(2*t.wrap)-+(t.wrap<0);return e.overscaledZ-t.overscaledZ||n-r||t.canonical.y-e.canonical.y||t.canonical.x-e.canonical.x}function Je(e){return"raster"===e||"image"===e||"video"===e}function Qe(){return new e.window.Worker(cs.workerUrl)}Ke.maxOverzooming=10,Ke.maxUnderzooming=3;var et="mapboxgl_preloaded_worker_pool",tt=function(){this.active={}};tt.prototype.acquire=function(e){if(!this.workers)for(this.workers=[];this.workers.length0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[r].mult(l))};var wt=function(e,t,r){var n=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(e/r),this.yCellCount=Math.ceil(t/r);for(var a=0;a=-t[0]&&r<=t[0]&&n>=-t[1]&&n<=t[1]}function Et(t,r,n,i,a,o,s,l){var u=i?t.textSizeData:t.iconSizeData,c=e.evaluateSizeForZoom(u,n.transform.zoom),f=[256/n.width*2+1,256/n.height*2+1],d=i?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;d.clear();for(var h=t.lineVertexArray,p=i?t.text.placedSymbolArray:t.icon.placedSymbolArray,v=n.transform.width/n.transform.height,m=!1,g=0;gMath.abs(n.x-r.x)*i?{useVertical:!0}:(t===e.WritingMode.vertical?r.yn.x)?{needsFlipping:!0}:null}function Pt(t,r,n,i,a,o,s,l,u,c,f,d,h,p){var v,m=r/24,g=t.lineOffsetX*m,y=t.lineOffsetY*m;if(t.numGlyphs>1){var x=t.glyphStartIndex+t.numGlyphs,b=t.lineStartIndex,_=t.lineStartIndex+t.lineLength,w=Ct(m,l,g,y,n,f,d,t,u,o,h);if(!w)return{notEnoughRoom:!0};var k=Mt(w.first.point,s).point,T=Mt(w.last.point,s).point;if(i&&!n){var M=Lt(t.writingMode,k,T,p);if(M)return M}v=[w.first];for(var A=t.glyphStartIndex+1;A0?L.point:Ot(d,C,S,1,a),O=Lt(t.writingMode,S,P,p);if(O)return O}var I=It(m*l.getoffsetX(t.glyphStartIndex),g,y,n,f,d,t.segment,t.lineStartIndex,t.lineStartIndex+t.lineLength,u,o,h);if(!I)return{notEnoughRoom:!0};v=[I]}for(var D=0,R=v;D0?1:-1,v=0;i&&(p*=-1,v=Math.PI),p<0&&(v+=Math.PI);for(var m=p>0?l+s:l+s+1,g=a,y=a,x=0,b=0,_=Math.abs(h),w=[];x+b<=_;){if((m+=p)=u)return null;if(y=g,w.push(g),void 0===(g=d[m])){var k=new e.Point(c.getx(m),c.gety(m)),T=Mt(k,f);if(T.signedDistanceFromCamera>0)g=d[m]=T.point;else{var M=m-p;g=Ot(0===x?o:new e.Point(c.getx(M),c.gety(M)),k,y,_-x+1,f)}}x+=b,b=y.dist(g)}var A=(_-x)/b,S=g.sub(y),E=S.mult(A)._add(y);E._add(S._unit()._perp()._mult(n*p));var C=v+Math.atan2(g.y-y.y,g.x-y.x);return w.push(E),{point:E,angle:C,path:w}}wt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},wt.prototype.insert=function(e,t,r,n,i){this._forEachCell(t,r,n,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(e),this.bboxes.push(t),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)},wt.prototype.insertCircle=function(e,t,r,n){this._forEachCell(t-n,r-n,t+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(e),this.circles.push(t),this.circles.push(r),this.circles.push(n)},wt.prototype._insertBoxCell=function(e,t,r,n,i,a){this.boxCells[i].push(a)},wt.prototype._insertCircleCell=function(e,t,r,n,i,a){this.circleCells[i].push(a)},wt.prototype._query=function(e,t,r,n,i,a){if(r<0||e>this.width||n<0||t>this.height)return!i&&[];var o=[];if(e<=0&&t<=0&&this.width<=r&&this.height<=n){if(i)return!0;for(var s=0;s0:o},wt.prototype._queryCircle=function(e,t,r,n,i){var a=e-r,o=e+r,s=t-r,l=t+r;if(o<0||a>this.width||l<0||s>this.height)return!n&&[];var u=[],c={hitTest:n,circle:{x:e,y:t,radius:r},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,u,c,i),n?u.length>0:u},wt.prototype.query=function(e,t,r,n,i){return this._query(e,t,r,n,!1,i)},wt.prototype.hitTest=function(e,t,r,n,i){return this._query(e,t,r,n,!0,i)},wt.prototype.hitTestCircle=function(e,t,r,n){return this._queryCircle(e,t,r,!0,n)},wt.prototype._queryCell=function(e,t,r,n,i,a,o,s){var l=o.seenUids,u=this.boxCells[i];if(null!==u)for(var c=this.bboxes,f=0,d=u;f=c[p+0]&&n>=c[p+1]&&(!s||s(this.boxKeys[h]))){if(o.hitTest)return a.push(!0),!0;a.push({key:this.boxKeys[h],x1:c[p],y1:c[p+1],x2:c[p+2],y2:c[p+3]})}}}var v=this.circleCells[i];if(null!==v)for(var m=this.circles,g=0,y=v;go*o+s*s},wt.prototype._circleAndRectCollide=function(e,t,r,n,i,a,o){var s=(a-n)/2,l=Math.abs(e-(n+s));if(l>s+r)return!1;var u=(o-i)/2,c=Math.abs(t-(i+u));if(c>u+r)return!1;if(l<=s||c<=u)return!0;var f=l-s,d=c-u;return f*f+d*d<=r*r};var Dt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Rt(e,t){for(var r=0;r=1;O--)P.push(C.path[O]);for(var I=1;I0){for(var F=P[0].clone(),N=P[0].clone(),B=1;B=A.x&&N.x<=S.x&&F.y>=A.y&&N.y<=S.y?[P]:N.xS.x||N.yS.y?[]:e.clipLine([P],A.x,A.y,S.x,S.y)}for(var j=0,U=z;j=this.screenRightBoundary||nthis.screenBottomBoundary},Nt.prototype.isInsideGrid=function(e,t,r,n){return r>=0&&e=0&&t0?(this.prevPlacement&&this.prevPlacement.variableOffsets[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID].text&&(v=this.prevPlacement.variableOffsets[f.crossTileID].anchor),this.variableOffsets[f.crossTileID]={textOffset:m,width:r,height:n,anchor:e,textBoxScale:i,prevAnchor:v},this.markUsedJustification(d,e,f,h),d.allowVerticalPlacement&&(this.markUsedOrientation(d,h,f),this.placedOrientations[f.crossTileID]=h),{shift:g,placedGlyphBoxes:y}):void 0},Zt.prototype.placeLayerBucketPart=function(t,r,n){var i=this,a=t.parameters,o=a.bucket,s=a.layout,l=a.posMatrix,u=a.textLabelPlaneMatrix,c=a.labelToScreenMatrix,f=a.textPixelRatio,d=a.holdingForFade,h=a.collisionBoxArray,p=a.partiallyEvaluatedTextSize,v=a.collisionGroup,m=s.get("text-optional"),g=s.get("icon-optional"),y=s.get("text-allow-overlap"),x=s.get("icon-allow-overlap"),b="map"===s.get("text-rotation-alignment"),_="map"===s.get("text-pitch-alignment"),w="none"!==s.get("icon-text-fit"),k="viewport-y"===s.get("symbol-z-order"),T=y&&(x||!o.hasIconData()||g),M=x&&(y||!o.hasTextData()||m);!o.collisionArrays&&h&&o.deserializeCollisionBoxes(h);var A=function(t,a){if(!r[t.crossTileID])if(d)i.placements[t.crossTileID]=new Vt(!1,!1,!1);else{var h=!1,k=!1,A=!0,S=null,E={box:null,offscreen:null},C={box:null,offscreen:null},L=null,P=null,O=null,I=0,D=0,R=0;a.textFeatureIndex?I=a.textFeatureIndex:t.useRuntimeCollisionCircles&&(I=t.featureIndex),a.verticalTextFeatureIndex&&(D=a.verticalTextFeatureIndex);var z=a.textBox;if(z){var F=function(r){var n=e.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&i.prevPlacement){var a=i.prevPlacement.placedOrientations[t.crossTileID];a&&(i.placedOrientations[t.crossTileID]=a,n=a,i.markUsedOrientation(o,n,t))}return n},N=function(r,n){if(o.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&a.verticalTextBox)for(var i=0,s=o.writingModes;i0&&(B=B.filter((function(e){return e!==j.anchor}))).unshift(j.anchor)}var U=function(e,r,n){for(var a=e.x2-e.x1,s=e.y2-e.y1,u=t.textBoxScale,c=w&&!x?r:null,d={box:[],offscreen:!1},p=y?2*B.length:B.length,m=0;m=B.length,T=i.attemptAnchorPlacement(g,e,a,s,u,b,_,f,l,v,k,t,o,n,c);if(T&&(d=T.placedGlyphBoxes)&&d.box&&d.box.length){h=!0,S=T.shift;break}}return d};N((function(){return U(z,a.iconBox,e.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox,n=E&&E.box&&E.box.length;return o.allowVerticalPlacement&&!n&&t.numVerticalGlyphVertices>0&&r?U(r,a.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}})),E&&(h=E.box,A=E.offscreen);var V=F(E&&E.box);if(!h&&i.prevPlacement){var H=i.prevPlacement.variableOffsets[t.crossTileID];H&&(i.variableOffsets[t.crossTileID]=H,i.markUsedJustification(o,H.anchor,t,V))}}else{var q=function(e,r){var n=i.collisionIndex.placeCollisionBox(e,y,f,l,v.predicate);return n&&n.box&&n.box.length&&(i.markUsedOrientation(o,r,t),i.placedOrientations[t.crossTileID]=r),n};N((function(){return q(z,e.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox;return o.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&r?q(r,e.WritingMode.vertical):{box:null,offscreen:null}})),F(E&&E.box&&E.box.length)}}if(h=(L=E)&&L.box&&L.box.length>0,A=L&&L.offscreen,t.useRuntimeCollisionCircles){var W=o.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex),G=e.evaluateSizeForFeature(o.textSizeData,p,W),Y=s.get("text-padding"),Z=t.collisionCircleDiameter;P=i.collisionIndex.placeCollisionCircles(y,W,o.lineVertexArray,o.glyphOffsetArray,G,l,u,c,n,_,v.predicate,Z,Y),h=y||P.circles.length>0&&!P.collisionDetected,A=A&&P.offscreen}if(a.iconFeatureIndex&&(R=a.iconFeatureIndex),a.iconBox){var X=function(e){var t=w&&S?Yt(e,S.x,S.y,b,_,i.transform.angle):e;return i.collisionIndex.placeCollisionBox(t,x,f,l,v.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=m||0===t.numHorizontalGlyphVertices&&0===t.numVerticalGlyphVertices,$=g||0===t.numIconVertices;if(K||$?$?K||(k=k&&h):h=k&&h:k=h=k&&h,h&&L&&L.box&&(C&&C.box&&D?i.collisionIndex.insertCollisionBox(L.box,s.get("text-ignore-placement"),o.bucketInstanceId,D,v.ID):i.collisionIndex.insertCollisionBox(L.box,s.get("text-ignore-placement"),o.bucketInstanceId,I,v.ID)),k&&O&&i.collisionIndex.insertCollisionBox(O.box,s.get("icon-ignore-placement"),o.bucketInstanceId,R,v.ID),P&&(h&&i.collisionIndex.insertCollisionCircles(P.circles,s.get("text-ignore-placement"),o.bucketInstanceId,I,v.ID),n)){var J=o.bucketInstanceId,Q=i.collisionCircleArrays[J];void 0===Q&&(Q=i.collisionCircleArrays[J]=new Ht);for(var ee=0;ee=0;--E){var C=S[E];A(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var L=t.symbolInstanceStart;L=0&&(t.text.placedSymbolArray.get(u).crossTileID=a>=0&&u!==a?0:n.crossTileID)}},Zt.prototype.markUsedOrientation=function(t,r,n){for(var i=r===e.WritingMode.horizontal||r===e.WritingMode.horizontalOnly?r:0,a=r===e.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o0||l>0,x=a.numIconVertices>0,b=i.placedOrientations[a.crossTileID],_=b===e.WritingMode.vertical,w=b===e.WritingMode.horizontal||b===e.WritingMode.horizontalOnly;if(y){var k=nr(g.text),T=_?ir:k;p(t.text,s,T);var M=w?ir:k;p(t.text,l,M);var A=g.text.isHidden();[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(e){e>=0&&(t.text.placedSymbolArray.get(e).hidden=A||_?1:0)})),a.verticalPlacedTextSymbolIndex>=0&&(t.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).hidden=A||w?1:0);var S=i.variableOffsets[a.crossTileID];S&&i.markUsedJustification(t,S.anchor,a,b);var E=i.placedOrientations[a.crossTileID];E&&(i.markUsedJustification(t,"left",a,E),i.markUsedOrientation(t,E,a))}if(x){var C=nr(g.icon),L=!(d&&a.verticalPlacedIconSymbolIndex&&_);if(a.placedIconSymbolIndex>=0){var P=L?C:ir;p(t.icon,a.numIconVertices,P),t.icon.placedSymbolArray.get(a.placedIconSymbolIndex).hidden=g.icon.isHidden()}if(a.verticalPlacedIconSymbolIndex>=0){var O=L?ir:C;p(t.icon,a.numVerticalIconVertices,O),t.icon.placedSymbolArray.get(a.verticalPlacedIconSymbolIndex).hidden=g.icon.isHidden()}}if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){var I=t.collisionArrays[n];if(I){var D=new e.Point(0,0);if(I.textBox||I.verticalTextBox){var R=!0;if(u){var z=i.variableOffsets[v];z?(D=Gt(z.anchor,z.width,z.height,z.textOffset,z.textBoxScale),c&&D._rotate(f?i.transform.angle:-i.transform.angle)):R=!1}I.textBox&&Xt(t.textCollisionBox.collisionVertexArray,g.text.placed,!R||_,D.x,D.y),I.verticalTextBox&&Xt(t.textCollisionBox.collisionVertexArray,g.text.placed,!R||w,D.x,D.y)}var F=Boolean(!w&&I.verticalIconBox);I.iconBox&&Xt(t.iconCollisionBox.collisionVertexArray,g.icon.placed,F,d?D.x:0,d?D.y:0),I.verticalIconBox&&Xt(t.iconCollisionBox.collisionVertexArray,g.icon.placed,!F,d?D.x:0,d?D.y:0)}}},m=0;me},Zt.prototype.setStale=function(){this.stale=!0};var Kt=Math.pow(2,25),$t=Math.pow(2,24),Jt=Math.pow(2,17),Qt=Math.pow(2,16),er=Math.pow(2,9),tr=Math.pow(2,8),rr=Math.pow(2,1);function nr(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;var t=e.placed?1:0,r=Math.floor(127*e.opacity);return r*Kt+t*$t+r*Jt+t*Qt+r*er+t*tr+r*rr+t}var ir=0,ar=function(e){this._sortAcrossTiles="viewport-y"!==e.layout.get("symbol-z-order")&&void 0!==e.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};ar.prototype.continuePlacement=function(e,t,r,n,i){for(var a=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var s=r[t[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 ar(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},or.prototype.commit=function(e){return this.placement.commit(e),this.placement};var sr=512/e.EXTENT/2,lr=function(e,t,r){this.tileID=e,this.indexedSymbolInstances={},this.bucketInstanceId=r;for(var n=0;ne.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(e)&&l.findMatches(t.symbolInstances,e,i)}else{var u=o[e.scaledTo(Number(a)).key];u&&u.findMatches(t.symbolInstances,e,i)}}for(var c=0;c0)throw new Error("Unimplemented: "+i.map((function(e){return e.command})).join(", ")+".");return n.forEach((function(e){"setTransition"!==e.command&&r[e.command].apply(r,e.args)})),this.stylesheet=t,!0},r.prototype.addImage=function(t,r){if(this.getImage(t))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(t,r),this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.fire(new e.Event("data",{dataType:"style"}))},r.prototype.updateImage=function(e,t){this.imageManager.updateImage(e,t)},r.prototype.getImage=function(e){return this.imageManager.getImage(e)},r.prototype.removeImage=function(t){if(!this.getImage(t))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(t),this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.fire(new e.Event("data",{dataType:"style"}))},r.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},r.prototype.addSource=function(t,r,n){var i=this;if(void 0===n&&(n={}),this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error("There is already a source with this ID");if(!r.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(r).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(r.type)>=0)||!this._validate(e.validateStyle.source,"sources."+t,r,null,n)){this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);var a=this.sourceCaches[t]=new Ke(t,r,this.dispatcher);a.style=this,a.setEventedParent(this,(function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:t}})),a.onAdd(this.map),this._changed=!0}},r.prototype.removeSource=function(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");for(var r in this._layers)if(this._layers[r].source===t)return this.fire(new e.ErrorEvent(new Error('Source "'+t+'" cannot be removed while layer "'+r+'" is using it.')));var n=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],n.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:t})),n.setEventedParent(null),n.clearTiles(),n.onRemove&&n.onRemove(this.map),this._changed=!0},r.prototype.setGeoJSONSourceData=function(e,t){this._checkLoaded(),this.sourceCaches[e].getSource().setData(t),this._changed=!0},r.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},r.prototype.addLayer=function(t,r,n){void 0===n&&(n={}),this._checkLoaded();var i=t.id;if(this.getLayer(i))this.fire(new e.ErrorEvent(new Error('Layer with id "'+i+'" already exists on this map')));else{var a;if("custom"===t.type){if(dr(this,e.validateCustomStyleLayer(t)))return;a=e.createStyleLayer(t)}else{if("object"===typeof t.source&&(this.addSource(i,t.source),t=e.clone$1(t),t=e.extend(t,{source:i})),this._validate(e.validateStyle.layer,"layers."+i,t,{arrayIndex:-1},n))return;a=e.createStyleLayer(t),this._validateLayer(a),a.setEventedParent(this,{layer:{id:i}}),this._serializedLayers[a.id]=a.serialize()}var o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new e.ErrorEvent(new Error('Layer with id "'+r+'" 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)}}},r.prototype.moveLayer=function(t,r){if(this._checkLoaded(),this._changed=!0,this._layers[t]){if(t!==r){var n=this._order.indexOf(t);this._order.splice(n,1);var i=r?this._order.indexOf(r):this._order.length;r&&-1===i?this.fire(new e.ErrorEvent(new Error('Layer with id "'+r+'" does not exist on this map.'))):(this._order.splice(i,0,t),this._layerOrderChanged=!0)}}else this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be moved.")))},r.prototype.removeLayer=function(t){this._checkLoaded();var r=this._layers[t];if(r){r.setEventedParent(null);var n=this._order.indexOf(t);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=r,delete this._layers[t],delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],r.onRemove&&r.onRemove(this.map)}else this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be removed.")))},r.prototype.getLayer=function(e){return this._layers[e]},r.prototype.hasLayer=function(e){return e in this._layers},r.prototype.setLayerZoomRange=function(t,r,n){this._checkLoaded();var i=this.getLayer(t);i?i.minzoom===r&&i.maxzoom===n||(null!=r&&(i.minzoom=r),null!=n&&(i.maxzoom=n),this._updateLayer(i)):this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot have zoom extent.")))},r.prototype.setFilter=function(t,r,n){void 0===n&&(n={}),this._checkLoaded();var i=this.getLayer(t);if(i){if(!e.deepEqual(i.filter,r))return null===r||void 0===r?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(e.validateStyle.filter,"layers."+i.id+".filter",r,null,n)||(i.filter=e.clone$1(r),this._updateLayer(i)))}else this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be filtered.")))},r.prototype.getFilter=function(t){return e.clone$1(this.getLayer(t).filter)},r.prototype.setLayoutProperty=function(t,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(t);a?e.deepEqual(a.getLayoutProperty(r),n)||(a.setLayoutProperty(r,n,i),this._updateLayer(a)):this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getLayoutProperty=function(t,r){var n=this.getLayer(t);if(n)return n.getLayoutProperty(r);this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style.")))},r.prototype.setPaintProperty=function(t,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(t);a?e.deepEqual(a.getPaintProperty(r),n)||(a.setPaintProperty(r,n,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[t]=!0):this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getPaintProperty=function(e,t){return this.getLayer(e).getPaintProperty(t)},r.prototype.setFeatureState=function(t,r){this._checkLoaded();var n=t.source,i=t.sourceLayer,a=this.sourceCaches[n];if(void 0!==a){var o=a.getSource().type;"geojson"===o&&i?this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||i?(void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),a.setFeatureState(i,t.id,r)):this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.removeFeatureState=function(t,r){this._checkLoaded();var n=t.source,i=this.sourceCaches[n];if(void 0!==i){var a=i.getSource().type,o="vector"===a?t.sourceLayer:void 0;"vector"!==a||o?r&&"string"!==typeof t.id&&"number"!==typeof t.id?this.fire(new e.ErrorEvent(new Error("A feature id is requred to remove its specific state property."))):i.removeFeatureState(o,t.id,r):this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.getFeatureState=function(t){this._checkLoaded();var r=t.source,n=t.sourceLayer,i=this.sourceCaches[r];if(void 0!==i){if("vector"!==i.getSource().type||n)return void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),i.getFeatureState(n,t.id);this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},r.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},r.prototype.serialize=function(){return e.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:e.mapObject(this.sourceCaches,(function(e){return e.serialize()})),layers:this._serializeLayers(this._order)},(function(e){return void 0!==e}))},r.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&"raster"!==this.sourceCaches[e.source].getSource().type&&(this._updatedSources[e.source]="reload",this.sourceCaches[e.source].pause()),this._changed=!0},r.prototype._flattenAndSortRenderedFeatures=function(e){for(var t=this,r=function(e){return"fill-extrusion"===t._layers[e].type},n={},i=[],a=this._order.length-1;a>=0;a--){var o=this._order[a];if(r(o)){n[o]=a;for(var s=0,l=e;s=0;p--){var v=this._order[p];if(r(v))for(var m=i.length-1;m>=0;m--){var g=i[m].feature;if(n[g.layer.id] 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}",Pr="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;}",Or="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;}",Ir="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);}",Dr="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);}",Rr="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);}",zr="#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}",Fr="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);}",Nr="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}",Br="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;}",jr="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}",Ur="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;}",Vr="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}",Hr="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);}",qr="varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Wr="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;}",Gr="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}",Yr="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;}",Zr="#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}",Xr="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;}",Kr="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}",$r="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;}",Jr="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}",Qr="\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);}",en="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}",tn="\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);}",rn="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}",nn="\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;}",an="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}",on="\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);}",sn="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}",ln="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;}",un="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}",cn="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));}",fn="#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}",dn="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);}",hn="#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}",pn="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);}",vn=Un("#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;}"),mn=Un(yr,xr),gn=Un(br,_r),yn=Un(wr,kr),xn=Un(Tr,Mr),bn=Un(Ar,Sr),_n=Un(Er,Cr),wn=Un(Lr,Pr),kn=Un(Or,Ir),Tn=Un(Dr,Rr),Mn=Un(zr,Fr),An=Un(Nr,Br),Sn=Un(jr,Ur),En=Un(Vr,Hr),Cn=Un(qr,Wr),Ln=Un(Gr,Yr),Pn=Un(Zr,Xr),On=Un(Kr,$r),In=Un(Jr,Qr),Dn=Un(en,tn),Rn=Un(rn,nn),zn=Un(an,on),Fn=Un(sn,ln),Nn=Un(un,cn),Bn=Un(fn,dn),jn=Un(hn,pn);function Un(e,t){var r=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,n={};return{fragmentSource:e=e.replace(r,(function(e,t,r,i,a){return n[a]=!0,"define"===t?"\n#ifndef HAS_UNIFORM_u_"+a+"\nvarying "+r+" "+i+" "+a+";\n#else\nuniform "+r+" "+i+" u_"+a+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+a+"\n "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n"})),vertexSource:t=t.replace(r,(function(e,t,r,i,a){var o="float"===i?"vec2":"vec4",s=a.match(/color/)?"color":o;return n[a]?"define"===t?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+r+" "+o+" a_"+a+";\nvarying "+r+" "+i+" "+a+";\n#else\nuniform "+r+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+a+" = a_"+a+";\n#else\n "+r+" "+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 "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n":"define"===t?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+r+" "+o+" a_"+a+";\n#else\nuniform "+r+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+r+" "+i+" "+a+" = a_"+a+";\n#else\n "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+r+" "+i+" "+a+" = unpack_mix_"+s+"(a_"+a+", u_"+a+"_t);\n#else\n "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n"}))}}var Vn=Object.freeze({__proto__:null,prelude:vn,background:mn,backgroundPattern:gn,circle:yn,clippingMask:xn,heatmap:bn,heatmapTexture:_n,collisionBox:wn,collisionCircle:kn,debug:Tn,fill:Mn,fillOutline:An,fillOutlinePattern:Sn,fillPattern:En,fillExtrusion:Cn,fillExtrusionPattern:Ln,hillshadePrepare:Pn,hillshade:On,line:In,lineGradient:Dn,linePattern:Rn,lineSDF:zn,raster:Fn,symbolIcon:Nn,symbolSDF:Bn,symbolTextAndIcon:jn}),Hn=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Hn.prototype.bind=function(e,t,r,n,i,a,o,s){this.context=e;for(var l=this.boundPaintVertexBuffers.length!==n.length,u=0;!l&&u>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}function Gn(e,t,r,n){var i=r.imageManager.getPattern(e.from.toString()),a=r.imageManager.getPattern(e.to.toString()),o=r.imageManager.getPixelSize(),s=o.width,l=o.height,u=Math.pow(2,n.tileID.overscaledZ),c=n.tileSize*Math.pow(2,r.transform.tileZoom)/u,f=c*(n.tileID.canonical.x+n.tileID.wrap*u),d=c*n.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:t.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:t.fromScale,u_scale_b:t.toScale,u_tile_units_to_pixels:1/Bt(n,1,r.transform.tileZoom),u_pixel_coord_upper:[f>>16,d>>16],u_pixel_coord_lower:[65535&f,65535&d]}}qn.prototype.draw=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v){var m,g=e.gl;if(!this.failedToCreate){for(var y in e.program.set(this.program),e.setDepthMode(r),e.setStencilMode(n),e.setColorMode(i),e.setCullFace(a),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);h&&h.setUniforms(e,this.binderUniforms,f,{zoom:d});for(var x=(m={},m[g.LINES]=2,m[g.TRIANGLES]=3,m[g.LINE_STRIP]=1,m)[t],b=0,_=c.get();b<_.length;b+=1){var w=_[b],k=w.vaos||(w.vaos={});(k[s]||(k[s]=new Hn)).bind(e,this,l,h?h.getPaintVertexBuffers():[],u,w.vertexOffset,p,v),g.drawElements(t,w.primitiveLength*x,g.UNSIGNED_SHORT,w.primitiveOffset*x*2)}}};var Yn=function(t,r,n,i){var a=r.style.light,o=a.properties.get("position"),s=[o.x,o.y,o.z],l=e.create$1();"viewport"===a.properties.get("anchor")&&e.fromRotation(l,-r.transform.angle),e.transformMat3(s,s,l);var u=a.properties.get("color");return{u_matrix:t,u_lightpos:s,u_lightintensity:a.properties.get("intensity"),u_lightcolor:[u.r,u.g,u.b],u_vertical_gradient:+n,u_opacity:i}},Zn=function(t,r,n,i,a,o,s){return e.extend(Yn(t,r,n,i),Wn(o,r,s),{u_height_factor:-Math.pow(2,a.overscaledZ)/s.tileSize/8})},Xn=function(e){return{u_matrix:e}},Kn=function(t,r,n,i){return e.extend(Xn(t),Wn(n,r,i))},$n=function(e,t){return{u_matrix:e,u_world:t}},Jn=function(t,r,n,i,a){return e.extend(Kn(t,r,n,i),{u_world:a})},Qn=function(t,r,n,i){var a,o,s=t.transform;if("map"===i.paint.get("circle-pitch-alignment")){var l=Bt(n,1,s.zoom);a=!0,o=[l,l]}else a=!1,o=s.pixelsToGLUnits;return{u_camera_to_center_distance:s.cameraToCenterDistance,u_scale_with_map:+("map"===i.paint.get("circle-pitch-scale")),u_matrix:t.translatePosMatrix(r.posMatrix,n,i.paint.get("circle-translate"),i.paint.get("circle-translate-anchor")),u_pitch_with_map:+a,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:o}},ei=function(e,t,r){var n=Bt(r,1,t.zoom),i=Math.pow(2,t.zoom-r.tileID.overscaledZ),a=r.tileID.overscaleFactor();return{u_matrix:e,u_camera_to_center_distance:t.cameraToCenterDistance,u_pixels_to_tile_units:n,u_extrude_scale:[t.pixelsToGLUnits[0]/(n*i),t.pixelsToGLUnits[1]/(n*i)],u_overscale_factor:a}},ti=function(e,t,r){return{u_matrix:e,u_inv_matrix:t,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}},ri=function(e,t,r){return void 0===r&&(r=1),{u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:r}},ni=function(e){return{u_matrix:e}},ii=function(e,t,r,n){return{u_matrix:e,u_extrude_scale:Bt(t,1,r),u_intensity:n}},ai=function(t,r,n,i){var a=e.create();e.ortho(a,0,t.width,t.height,0,0,1);var o=t.context.gl;return{u_matrix:a,u_world:[o.drawingBufferWidth,o.drawingBufferHeight],u_image:n,u_color_ramp:i,u_opacity:r.paint.get("heatmap-opacity")}},oi=function(e,t,r){var n=r.paint.get("hillshade-shadow-color"),i=r.paint.get("hillshade-highlight-color"),a=r.paint.get("hillshade-accent-color"),o=r.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===r.paint.get("hillshade-illumination-anchor")&&(o-=e.transform.angle);var s=!e.options.moving;return{u_matrix:e.transform.calculatePosMatrix(t.tileID.toUnwrapped(),s),u_image:0,u_latrange:li(e,t.tileID),u_light:[r.paint.get("hillshade-exaggeration"),o],u_shadow:n,u_highlight:i,u_accent:a}},si=function(t,r,n){var i=r.stride,a=e.create();return e.ortho(a,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(a,a,[0,-e.EXTENT,0]),{u_matrix:a,u_image:1,u_dimension:[i,i],u_zoom:t.overscaledZ,u_maxzoom:n,u_unpack:r.getUnpackVector()}};function li(t,r){var n=Math.pow(2,r.canonical.z),i=r.canonical.y;return[new e.MercatorCoordinate(0,i/n).toLngLat().lat,new e.MercatorCoordinate(0,(i+1)/n).toLngLat().lat]}var ui=function(t,r,n){var i=t.transform;return{u_matrix:pi(t,r,n),u_ratio:1/Bt(r,1,i.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},ci=function(t,r,n){return e.extend(ui(t,r,n),{u_image:0})},fi=function(t,r,n,i){var a=t.transform,o=hi(r,a);return{u_matrix:pi(t,r,n),u_texsize:r.imageAtlasTexture.size,u_ratio:1/Bt(r,1,a.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[o,i.fromScale,i.toScale],u_fade:i.t,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},di=function(t,r,n,i,a){var o=t.transform,s=t.lineAtlas,l=hi(r,o),u="round"===n.layout.get("line-cap"),c=s.getDash(i.from,u),f=s.getDash(i.to,u),d=c.width*a.fromScale,h=f.width*a.toScale;return e.extend(ui(t,r,n),{u_patternscale_a:[l/d,-c.height/2],u_patternscale_b:[l/h,-f.height/2],u_sdfgamma:s.width/(256*Math.min(d,h)*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:c.y,u_tex_y_b:f.y,u_mix:a.t})};function hi(e,t){return 1/Bt(e,1,t.tileZoom)}function pi(e,t,r){return e.translatePosMatrix(t.tileID.posMatrix,t,r.paint.get("line-translate"),r.paint.get("line-translate-anchor"))}var vi=function(e,t,r,n,i){return{u_matrix:e,u_tl_parent:t,u_scale_parent:r,u_buffer_scale:1,u_fade_t:n.mix,u_opacity:n.opacity*i.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:i.paint.get("raster-brightness-min"),u_brightness_high:i.paint.get("raster-brightness-max"),u_saturation_factor:yi(i.paint.get("raster-saturation")),u_contrast_factor:gi(i.paint.get("raster-contrast")),u_spin_weights:mi(i.paint.get("raster-hue-rotate"))}};function mi(e){e*=Math.PI/180;var t=Math.sin(e),r=Math.cos(e);return[(2*r+1)/3,(-Math.sqrt(3)*t-r+1)/3,(Math.sqrt(3)*t-r+1)/3]}function gi(e){return e>0?1/(1-e):1+e}function yi(e){return e>0?1-1/(1.001-e):-e}var xi,bi=function(e,t,r,n,i,a,o,s,l,u){var c=i.transform;return{u_is_size_zoom_constant:+("constant"===e||"source"===e),u_is_size_feature_constant:+("constant"===e||"camera"===e),u_size_t:t?t.uSizeT:0,u_size:t?t.uSize:0,u_camera_to_center_distance:c.cameraToCenterDistance,u_pitch:c.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:c.width/c.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:+n,u_texsize:u,u_texture:0}},_i=function(t,r,n,i,a,o,s,l,u,c,f){var d=a.transform;return e.extend(bi(t,r,n,i,a,o,s,l,u,c),{u_gamma_scale:i?Math.cos(d._pitch)*d.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+f})},wi=function(t,r,n,i,a,o,s,l,u,c){return e.extend(_i(t,r,n,i,a,o,s,l,!0,u,!0),{u_texsize_icon:c,u_texture_icon:1})},ki=function(e,t,r){return{u_matrix:e,u_opacity:t,u_color:r}},Ti=function(t,r,n,i,a,o){return e.extend(Gn(i,o,n,a),{u_matrix:t,u_opacity:r})},Mi={fillExtrusion:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_lightpos:new e.Uniform3f(t,r.u_lightpos),u_lightintensity:new e.Uniform1f(t,r.u_lightintensity),u_lightcolor:new e.Uniform3f(t,r.u_lightcolor),u_vertical_gradient:new e.Uniform1f(t,r.u_vertical_gradient),u_opacity:new e.Uniform1f(t,r.u_opacity)}},fillExtrusionPattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_lightpos:new e.Uniform3f(t,r.u_lightpos),u_lightintensity:new e.Uniform1f(t,r.u_lightintensity),u_lightcolor:new e.Uniform3f(t,r.u_lightcolor),u_vertical_gradient:new e.Uniform1f(t,r.u_vertical_gradient),u_height_factor:new e.Uniform1f(t,r.u_height_factor),u_image:new e.Uniform1i(t,r.u_image),u_texsize:new e.Uniform2f(t,r.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade),u_opacity:new e.Uniform1f(t,r.u_opacity)}},fill:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},fillPattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_image:new e.Uniform1i(t,r.u_image),u_texsize:new e.Uniform2f(t,r.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade)}},fillOutline:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_world:new e.Uniform2f(t,r.u_world)}},fillOutlinePattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_world:new e.Uniform2f(t,r.u_world),u_image:new e.Uniform1i(t,r.u_image),u_texsize:new e.Uniform2f(t,r.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade)}},circle:function(t,r){return{u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(t,r.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(t,r.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},collisionBox:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(t,r.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(t,r.u_extrude_scale),u_overscale_factor:new e.Uniform1f(t,r.u_overscale_factor)}},collisionCircle:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_inv_matrix:new e.UniformMatrix4f(t,r.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(t,r.u_viewport_size)}},debug:function(t,r){return{u_color:new e.UniformColor(t,r.u_color),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_overlay:new e.Uniform1i(t,r.u_overlay),u_overlay_scale:new e.Uniform1f(t,r.u_overlay_scale)}},clippingMask:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},heatmap:function(t,r){return{u_extrude_scale:new e.Uniform1f(t,r.u_extrude_scale),u_intensity:new e.Uniform1f(t,r.u_intensity),u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},heatmapTexture:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_world:new e.Uniform2f(t,r.u_world),u_image:new e.Uniform1i(t,r.u_image),u_color_ramp:new e.Uniform1i(t,r.u_color_ramp),u_opacity:new e.Uniform1f(t,r.u_opacity)}},hillshade:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_image:new e.Uniform1i(t,r.u_image),u_latrange:new e.Uniform2f(t,r.u_latrange),u_light:new e.Uniform2f(t,r.u_light),u_shadow:new e.UniformColor(t,r.u_shadow),u_highlight:new e.UniformColor(t,r.u_highlight),u_accent:new e.UniformColor(t,r.u_accent)}},hillshadePrepare:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_image:new e.Uniform1i(t,r.u_image),u_dimension:new e.Uniform2f(t,r.u_dimension),u_zoom:new e.Uniform1f(t,r.u_zoom),u_maxzoom:new e.Uniform1f(t,r.u_maxzoom),u_unpack:new e.Uniform4f(t,r.u_unpack)}},line:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels)}},lineGradient:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels),u_image:new e.Uniform1i(t,r.u_image)}},linePattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_texsize:new e.Uniform2f(t,r.u_texsize),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_image:new e.Uniform1i(t,r.u_image),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade)}},lineSDF:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(t,r.u_patternscale_a),u_patternscale_b:new e.Uniform2f(t,r.u_patternscale_b),u_sdfgamma:new e.Uniform1f(t,r.u_sdfgamma),u_image:new e.Uniform1i(t,r.u_image),u_tex_y_a:new e.Uniform1f(t,r.u_tex_y_a),u_tex_y_b:new e.Uniform1f(t,r.u_tex_y_b),u_mix:new e.Uniform1f(t,r.u_mix)}},raster:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_tl_parent:new e.Uniform2f(t,r.u_tl_parent),u_scale_parent:new e.Uniform1f(t,r.u_scale_parent),u_buffer_scale:new e.Uniform1f(t,r.u_buffer_scale),u_fade_t:new e.Uniform1f(t,r.u_fade_t),u_opacity:new e.Uniform1f(t,r.u_opacity),u_image0:new e.Uniform1i(t,r.u_image0),u_image1:new e.Uniform1i(t,r.u_image1),u_brightness_low:new e.Uniform1f(t,r.u_brightness_low),u_brightness_high:new e.Uniform1f(t,r.u_brightness_high),u_saturation_factor:new e.Uniform1f(t,r.u_saturation_factor),u_contrast_factor:new e.Uniform1f(t,r.u_contrast_factor),u_spin_weights:new e.Uniform3f(t,r.u_spin_weights)}},symbolIcon:function(t,r){return{u_is_size_zoom_constant:new e.Uniform1i(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,r.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,r.u_size_t),u_size:new e.Uniform1f(t,r.u_size),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,r.u_pitch),u_rotate_symbol:new e.Uniform1i(t,r.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,r.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,r.u_fade_change),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,r.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,r.u_coord_matrix),u_is_text:new e.Uniform1i(t,r.u_is_text),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_texsize:new e.Uniform2f(t,r.u_texsize),u_texture:new e.Uniform1i(t,r.u_texture)}},symbolSDF:function(t,r){return{u_is_size_zoom_constant:new e.Uniform1i(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,r.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,r.u_size_t),u_size:new e.Uniform1f(t,r.u_size),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,r.u_pitch),u_rotate_symbol:new e.Uniform1i(t,r.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,r.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,r.u_fade_change),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,r.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,r.u_coord_matrix),u_is_text:new e.Uniform1i(t,r.u_is_text),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_texsize:new e.Uniform2f(t,r.u_texsize),u_texture:new e.Uniform1i(t,r.u_texture),u_gamma_scale:new e.Uniform1f(t,r.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(t,r.u_is_halo)}},symbolTextAndIcon:function(t,r){return{u_is_size_zoom_constant:new e.Uniform1i(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,r.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,r.u_size_t),u_size:new e.Uniform1f(t,r.u_size),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,r.u_pitch),u_rotate_symbol:new e.Uniform1i(t,r.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,r.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,r.u_fade_change),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,r.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,r.u_coord_matrix),u_is_text:new e.Uniform1i(t,r.u_is_text),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_texsize:new e.Uniform2f(t,r.u_texsize),u_texsize_icon:new e.Uniform2f(t,r.u_texsize_icon),u_texture:new e.Uniform1i(t,r.u_texture),u_texture_icon:new e.Uniform1i(t,r.u_texture_icon),u_gamma_scale:new e.Uniform1f(t,r.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(t,r.u_is_halo)}},background:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_opacity:new e.Uniform1f(t,r.u_opacity),u_color:new e.UniformColor(t,r.u_color)}},backgroundPattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_opacity:new e.Uniform1f(t,r.u_opacity),u_image:new e.Uniform1i(t,r.u_image),u_pattern_tl_a:new e.Uniform2f(t,r.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(t,r.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(t,r.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(t,r.u_pattern_br_b),u_texsize:new e.Uniform2f(t,r.u_texsize),u_mix:new e.Uniform1f(t,r.u_mix),u_pattern_size_a:new e.Uniform2f(t,r.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(t,r.u_pattern_size_b),u_scale_a:new e.Uniform1f(t,r.u_scale_a),u_scale_b:new e.Uniform1f(t,r.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(t,r.u_tile_units_to_pixels)}}};function Ai(t,r,n,i,a,o,s){for(var l=t.context,u=l.gl,c=t.useProgram("collisionBox"),f=[],d=0,h=0,p=0;p0){var _=e.create(),w=y;e.mul(_,g.placementInvProjMatrix,t.transform.glCoordMatrix),e.mul(_,_,g.placementViewportMatrix),f.push({circleArray:b,circleOffset:h,transform:w,invTransform:_}),h=d+=b.length/4}x&&c.draw(l,u.LINES,Ne.disabled,Ue.disabled,t.colorModeForRenderPass(),Ze.disabled,ei(y,t.transform,m),n.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,t.transform.zoom,null,null,x.collisionVertexBuffer)}}if(s&&f.length){var k=t.useProgram("collisionCircle"),T=new e.StructArrayLayout2f1f2i16;T.resize(4*d),T._trim();for(var M=0,A=0,S=f;A=0&&(v[g.associatedIconIndex]={shiftedAnchor:S,angle:E})}else Rt(g.numGlyphs,h)}if(f){p.clear();for(var L=t.icon.placedSymbolArray,P=0;P0){var s=e.browser.now(),l=(s-t.timeAdded)/o,u=r?(s-r.timeAdded)/o:-1,c=n.getSource(),f=a.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),d=!r||Math.abs(r.tileID.overscaledZ-f)>Math.abs(t.tileID.overscaledZ-f),h=d&&t.refreshedUponExpiration?1:e.clamp(d?l:1-u,0,1);return t.refreshedUponExpiration&&l>=1&&(t.refreshedUponExpiration=!1),r?{opacity:1,mix:1-h}:{opacity:h,mix:0}}return{opacity:1,mix:0}}function $i(e,t,r){var n=r.paint.get("background-color"),i=r.paint.get("background-opacity");if(0!==i){var a=e.context,o=a.gl,s=e.transform,l=s.tileSize,u=r.paint.get("background-pattern");if(!e.isPatternMissing(u)){var c=!u&&1===n.a&&1===i&&e.opaquePassEnabledForLayer()?"opaque":"translucent";if(e.renderPass===c){var f=Ue.disabled,d=e.depthModeForSublayer(0,"opaque"===c?Ne.ReadWrite:Ne.ReadOnly),h=e.colorModeForRenderPass(),p=e.useProgram(u?"backgroundPattern":"background"),v=s.coveringTiles({tileSize:l});u&&(a.activeTexture.set(o.TEXTURE0),e.imageManager.bind(e.context));for(var m=r.getCrossfadeParameters(),g=0,y=v;g "+n.overscaledZ),ca(t,g+" "+p+"kb"),s.draw(i,a.TRIANGLES,l,u,We.alphaBlended,Ze.disabled,ri(o,e.Color.transparent,m),f,t.debugBuffer,t.quadTriangleIndexBuffer,t.debugSegments)}function ca(e,t){e.initDebugOverlayCanvas();var r=e.debugOverlayCanvas,n=e.context.gl,i=e.debugOverlayCanvas.getContext("2d");i.clearRect(0,0,r.width,r.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(t,5,5),i.strokeText(t,5,5),e.debugOverlayTexture.update(r),e.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}function fa(e,t,r){var n=e.context,i=r.implementation;if("offscreen"===e.renderPass){var a=i.prerender;a&&(e.setCustomLayerDefaults(),n.setColorMode(e.colorModeForRenderPass()),a.call(i,n.gl,e.transform.customLayerMatrix()),n.setDirty(),e.setBaseState())}else if("translucent"===e.renderPass){e.setCustomLayerDefaults(),n.setColorMode(e.colorModeForRenderPass()),n.setStencilMode(Ue.disabled);var o="3d"===i.renderingMode?new Ne(e.context.gl.LEQUAL,Ne.ReadWrite,e.depthRangeFor3D):e.depthModeForSublayer(0,Ne.ReadOnly);n.setDepthMode(o),i.render(n.gl,e.transform.customLayerMatrix()),n.setDirty(),e.setBaseState(),n.bindFramebuffer.set(null)}}var da={symbol:Ci,circle:zi,heatmap:Fi,line:Ui,fill:Vi,"fill-extrusion":qi,hillshade:Gi,raster:Xi,background:$i,debug:la,custom:fa},ha=function(e,t){this.context=new Xe(e),this.transform=t,this._tileTextures={},this.setup(),this.numSublayers=Ke.maxUnderzooming+Ke.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new fr,this.gpuTimers={}};ha.prototype.resize=function(t,r){if(this.width=t*e.browser.devicePixelRatio,this.height=r*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var n=0,i=this.style._order;n256&&this.clearStencil(),r.setColorMode(We.disabled),r.setDepthMode(Ne.disabled);var i=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var a=0,o=t;a256&&this.clearStencil();var e=this.nextStencilID++,t=this.context.gl;return new Ue({func:t.NOTEQUAL,mask:255},e,255,t.KEEP,t.KEEP,t.REPLACE)},ha.prototype.stencilModeForClipping=function(e){var t=this.context.gl;return new Ue({func:t.EQUAL,mask:255},this._tileClippingMaskIDs[e.key],0,t.KEEP,t.KEEP,t.REPLACE)},ha.prototype.stencilConfigForOverlap=function(e){var t,r=this.context.gl,n=e.sort((function(e,t){return t.overscaledZ-e.overscaledZ})),i=n[n.length-1].overscaledZ,a=n[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 w=this.style._layers[i[this.currentLayer]],k=a[w.source],T=c[w.source];this._renderTileClippingMasks(w,T),this.renderLayer(this,k,w,T)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?t.pop():null},ha.prototype.isPatternMissing=function(e){if(!e)return!1;if(!e.from||!e.to)return!0;var t=this.imageManager.getPattern(e.from.toString()),r=this.imageManager.getPattern(e.to.toString());return!t||!r},ha.prototype.useProgram=function(e,t){this.cache=this.cache||{};var r=""+e+(t?t.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[r]||(this.cache[r]=new qn(this.context,Vn[e],t,Mi[e],this._showOverdrawInspector)),this.cache[r]},ha.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()},ha.prototype.setBaseState=function(){var e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD)},ha.prototype.initDebugOverlayCanvas=function(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var t=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,t.RGBA)}},ha.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var pa=function(e,t){this.points=e,this.planes=t};pa.fromInvProjectionMatrix=function(t,r,n){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,n),o=i.map((function(r){return e.transformMat4([],r,t)})).map((function(t){return e.scale$1([],t,1/t[3]/r*a)})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(t){var r=e.sub([],o[t[0]],o[t[1]]),n=e.sub([],o[t[2]],o[t[1]]),i=e.normalize([],e.cross([],r,n)),a=-e.dot(i,o[t[1]]);return i.concat(a)}));return new pa(o,s)};var va=function(t,r){this.min=t,this.max=r,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};va.prototype.quadrant=function(t){for(var r=[t%2===0,t<2],n=e.clone$2(this.min),i=e.clone$2(this.max),a=0;a=0;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(var l=0;l<3;l++){for(var u=Number.MAX_VALUE,c=-Number.MAX_VALUE,f=0;fthis.max[l]-this.min[l])return 0}return 1};var ma=function(e,t,r,n){if(void 0===e&&(e=0),void 0===t&&(t=0),void 0===r&&(r=0),void 0===n&&(n=0),isNaN(e)||e<0||isNaN(t)||t<0||isNaN(r)||r<0||isNaN(n)||n<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=e,this.bottom=t,this.left=r,this.right=n};ma.prototype.interpolate=function(t,r,n){return null!=r.top&&null!=t.top&&(this.top=e.number(t.top,r.top,n)),null!=r.bottom&&null!=t.bottom&&(this.bottom=e.number(t.bottom,r.bottom,n)),null!=r.left&&null!=t.left&&(this.left=e.number(t.left,r.left,n)),null!=r.right&&null!=t.right&&(this.right=e.number(t.right,r.right,n)),this},ma.prototype.getCenter=function(t,r){var n=e.clamp((this.left+t-this.right)/2,0,t),i=e.clamp((this.top+r-this.bottom)/2,0,r);return new e.Point(n,i)},ma.prototype.equals=function(e){return this.top===e.top&&this.bottom===e.bottom&&this.left===e.left&&this.right===e.right},ma.prototype.clone=function(){return new ma(this.top,this.bottom,this.left,this.right)},ma.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var ga=function(t,r,n,i,a){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===a||a,this._minZoom=t||0,this._maxZoom=r||22,this._minPitch=void 0===n||null===n?0:n,this._maxPitch=void 0===i||null===i?60:i,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ma,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 xa(e,t){var r=!1,n=null,i=function i(){n=null,r&&(e(),n=setTimeout(i,t),r=!1)};return function(){return r=!0,n||i(),n}}ga.prototype.clone=function(){var e=new ga(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return e.tileSize=this.tileSize,e.latRange=this.latRange,e.width=this.width,e.height=this.height,e._center=this._center,e.zoom=this.zoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._calcMatrices(),e},ya.minZoom.get=function(){return this._minZoom},ya.minZoom.set=function(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e))},ya.maxZoom.get=function(){return this._maxZoom},ya.maxZoom.set=function(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e))},ya.minPitch.get=function(){return this._minPitch},ya.minPitch.set=function(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e))},ya.maxPitch.get=function(){return this._maxPitch},ya.maxPitch.set=function(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e))},ya.renderWorldCopies.get=function(){return this._renderWorldCopies},ya.renderWorldCopies.set=function(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e},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 e.Point(this.width,this.height)},ya.bearing.get=function(){return-this.angle/Math.PI*180},ya.bearing.set=function(t){var r=-e.wrap(t,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},ya.pitch.get=function(){return this._pitch/Math.PI*180},ya.pitch.set=function(t){var r=e.clamp(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())},ya.fov.get=function(){return this._fov/Math.PI*180},ya.fov.set=function(e){e=Math.max(.01,Math.min(60,e)),this._fov!==e&&(this._unmodified=!1,this._fov=e/180*Math.PI,this._calcMatrices())},ya.zoom.get=function(){return this._zoom},ya.zoom.set=function(e){var t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._zoom=t,this.scale=this.zoomScale(t),this.tileZoom=Math.floor(t),this.zoomFraction=t-this.tileZoom,this._constrain(),this._calcMatrices())},ya.center.get=function(){return this._center},ya.center.set=function(e){e.lat===this._center.lat&&e.lng===this._center.lng||(this._unmodified=!1,this._center=e,this._constrain(),this._calcMatrices())},ya.padding.get=function(){return this._edgeInsets.toJSON()},ya.padding.set=function(e){this._edgeInsets.equals(e)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,e,1),this._calcMatrices())},ya.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},ga.prototype.isPaddingEqual=function(e){return this._edgeInsets.equals(e)},ga.prototype.interpolatePadding=function(e,t,r){this._unmodified=!1,this._edgeInsets.interpolate(e,t,r),this._constrain(),this._calcMatrices()},ga.prototype.coveringZoomLevel=function(e){var t=(e.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/e.tileSize));return Math.max(0,t)},ga.prototype.getVisibleUnwrappedCoordinates=function(t){var r=[new e.UnwrappedTileID(0,t)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new e.Point(0,0)),i=this.pointCoordinate(new e.Point(this.width,0)),a=this.pointCoordinate(new e.Point(this.width,this.height)),o=this.pointCoordinate(new e.Point(0,this.height)),s=Math.floor(Math.min(n.x,i.x,a.x,o.x)),l=Math.floor(Math.max(n.x,i.x,a.x,o.x)),u=1,c=s-u;c<=l+u;c++)0!==c&&r.push(new e.UnwrappedTileID(c,t));return r},ga.prototype.coveringTiles=function(t){var r=this.coveringZoomLevel(t),n=r;if(void 0!==t.minzoom&&rt.maxzoom&&(r=t.maxzoom);var i=e.MercatorCoordinate.fromLngLat(this.center),a=Math.pow(2,r),o=[a*i.x,a*i.y,0],s=pa.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,r),l=t.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=r);var u=3,c=function(e){return{aabb:new va([e*a,0,0],[(e+1)*a,a,0]),zoom:0,x:0,y:0,wrap:e,fullyVisible:!1}},f=[],d=[],h=r,p=t.reparseOverscaled?n:r;if(this._renderWorldCopies)for(var v=1;v<=3;v++)f.push(c(-v)),f.push(c(v));for(f.push(c(0));f.length>0;){var m=f.pop(),g=m.x,y=m.y,x=m.fullyVisible;if(!x){var b=m.aabb.intersects(s);if(0===b)continue;x=2===b}var _=m.aabb.distanceX(o),w=m.aabb.distanceY(o),k=Math.max(Math.abs(_),Math.abs(w)),T=u+(1<T&&m.zoom>=l)d.push({tileID:new e.OverscaledTileID(m.zoom===h?p:m.zoom,m.wrap,m.zoom,g,y),distanceSq:e.sqrLen([o[0]-.5-g,o[1]-.5-y])});else for(var M=0;M<4;M++){var A=(g<<1)+M%2,S=(y<<1)+(M>>1);f.push({aabb:m.aabb.quadrant(M),zoom:m.zoom+1,x:A,y:S,wrap:m.wrap,fullyVisible:x})}}return d.sort((function(e,t){return e.distanceSq-t.distanceSq})).map((function(e){return e.tileID}))},ga.prototype.resize=function(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices()},ya.unmodified.get=function(){return this._unmodified},ga.prototype.zoomScale=function(e){return Math.pow(2,e)},ga.prototype.scaleZoom=function(e){return Math.log(e)/Math.LN2},ga.prototype.project=function(t){var r=e.clamp(t.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(t.lng)*this.worldSize,e.mercatorYfromLat(r)*this.worldSize)},ga.prototype.unproject=function(t){return new e.MercatorCoordinate(t.x/this.worldSize,t.y/this.worldSize).toLngLat()},ya.point.get=function(){return this.project(this.center)},ga.prototype.setLocationAtPoint=function(t,r){var n=this.pointCoordinate(r),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(t),o=new e.MercatorCoordinate(a.x-(n.x-i.x),a.y-(n.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},ga.prototype.locationPoint=function(e){return this.coordinatePoint(this.locationCoordinate(e))},ga.prototype.pointLocation=function(e){return this.coordinateLocation(this.pointCoordinate(e))},ga.prototype.locationCoordinate=function(t){return e.MercatorCoordinate.fromLngLat(t)},ga.prototype.coordinateLocation=function(e){return e.toLngLat()},ga.prototype.pointCoordinate=function(t){var r=0,n=[t.x,t.y,0,1],i=[t.x,t.y,1,1];e.transformMat4(n,n,this.pixelMatrixInverse),e.transformMat4(i,i,this.pixelMatrixInverse);var a=n[3],o=i[3],s=n[0]/a,l=i[0]/o,u=n[1]/a,c=i[1]/o,f=n[2]/a,d=i[2]/o,h=f===d?0:(r-f)/(d-f);return new e.MercatorCoordinate(e.number(s,l,h)/this.worldSize,e.number(u,c,h)/this.worldSize)},ga.prototype.coordinatePoint=function(t){var r=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.transformMat4(r,r,this.pixelMatrix),new e.Point(r[0]/r[3],r[1]/r[3])},ga.prototype.getBounds=function(){return(new e.LngLatBounds).extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},ga.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},ga.prototype.setMaxBounds=function(e){e?(this.lngRange=[e.getWest(),e.getEast()],this.latRange=[e.getSouth(),e.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},ga.prototype.calculatePosMatrix=function(t,r){void 0===r&&(r=!1);var n=t.key,i=r?this._alignedPosMatrixCache:this._posMatrixCache;if(i[n])return i[n];var a=t.canonical,o=this.worldSize/this.zoomScale(a.z),s=a.x+Math.pow(2,a.z)*t.wrap,l=e.identity(new Float64Array(16));return e.translate(l,l,[s*o,a.y*o,0]),e.scale(l,l,[o/e.EXTENT,o/e.EXTENT,1]),e.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),i[n]=new Float32Array(l),i[n]},ga.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},ga.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,r,n,i,a=-90,o=90,s=-180,l=180,u=this.size,c=this._unmodified;if(this.latRange){var f=this.latRange;a=e.mercatorYfromLat(f[1])*this.worldSize,t=(o=e.mercatorYfromLat(f[0])*this.worldSize)-ao&&(i=o-m)}if(this.lngRange){var g=h.x,y=u.x/2;g-yl&&(n=l-y)}void 0===n&&void 0===i||(this.center=this.unproject(new e.Point(void 0!==n?n:h.x,void 0!==i?i:h.y))),this._unmodified=c,this._constraining=!1}},ga.prototype._calcMatrices=function(){if(this.height){var t=this._fov/2,r=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(t)*this.height;var n=Math.PI/2+this._pitch,i=this._fov*(.5+r.y/this.height),a=Math.sin(i)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-n-i,.01,Math.PI-.01)),o=this.point,s=o.x,l=o.y,u=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),c=this.height/50,f=new Float64Array(16);e.perspective(f,this._fov,this.width/this.height,c,u),f[8]=2*-r.x/this.width,f[9]=2*r.y/this.height,e.scale(f,f,[1,-1,1]),e.translate(f,f,[0,0,-this.cameraToCenterDistance]),e.rotateX(f,f,this._pitch),e.rotateZ(f,f,this.angle),e.translate(f,f,[-s,-l,0]),this.mercatorMatrix=e.scale([],f,[this.worldSize,this.worldSize,this.worldSize]),e.scale(f,f,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=f,this.invProjMatrix=e.invert([],this.projMatrix);var d=this.width%2/2,h=this.height%2/2,p=Math.cos(this.angle),v=Math.sin(this.angle),m=s-Math.round(s)+p*d+v*h,g=l-Math.round(l)+p*h+v*d,y=new Float64Array(f);if(e.translate(y,y,[m>.5?m-1:m,g>.5?g-1:g,0]),this.alignedProjMatrix=y,f=e.create(),e.scale(f,f,[this.width/2,-this.height/2,1]),e.translate(f,f,[1,-1,0]),this.labelPlaneMatrix=f,f=e.create(),e.scale(f,f,[1,-1,1]),e.translate(f,f,[-1,-1,0]),e.scale(f,f,[2/this.width,2/this.height,1]),this.glCoordMatrix=f,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(f=e.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=f,this._posMatrixCache={},this._alignedPosMatrixCache={}}},ga.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var t=this.pointCoordinate(new e.Point(0,0)),r=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.transformMat4(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance},ga.prototype.getCameraPoint=function(){var t=this._pitch,r=Math.tan(t)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,r))},ga.prototype.getCameraQueryGeometry=function(t){var r=this.getCameraPoint();if(1===t.length)return[t[0],r];for(var n=r.x,i=r.y,a=r.x,o=r.y,s=0,l=t;s=3&&!e.some((function(e){return isNaN(e)}))){var t=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(e[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+e[2],+e[1]],zoom:+e[0],bearing:t,pitch:+(e[4]||0)}),!0}return!1},ba.prototype._updateHashUnthrottled=function(){var t=this.getHashString();try{e.window.history.replaceState(e.window.history.state,"",t)}catch(r){}};var _a={linearity:.3,easing:e.bezier(0,0,.3,1)},wa=e.extend({deceleration:2500,maxSpeed:1400},_a),ka=e.extend({deceleration:20,maxSpeed:1400},_a),Ta=e.extend({deceleration:1e3,maxSpeed:360},_a),Ma=e.extend({deceleration:1e3,maxSpeed:90},_a),Aa=function(e){this._map=e,this.clear()};function Sa(e,t){(!e.duration||e.duration0&&r-t[0].time>n;)t.shift()},Aa.prototype._onMoveEnd=function(t){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var r={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},n=0,i=this._inertiaBuffer;n=this._clickTolerance||this._map.fire(new Ca(e.type,this._map,e))},Oa.prototype.dblclick=function(e){return this._firePreventable(new Ca(e.type,this._map,e))},Oa.prototype.mouseover=function(e){this._map.fire(new Ca(e.type,this._map,e))},Oa.prototype.mouseout=function(e){this._map.fire(new Ca(e.type,this._map,e))},Oa.prototype.touchstart=function(e){return this._firePreventable(new La(e.type,this._map,e))},Oa.prototype.touchmove=function(e){this._map.fire(new La(e.type,this._map,e))},Oa.prototype.touchend=function(e){this._map.fire(new La(e.type,this._map,e))},Oa.prototype.touchcancel=function(e){this._map.fire(new La(e.type,this._map,e))},Oa.prototype._firePreventable=function(e){if(this._map.fire(e),e.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(e){this._map=e};Ia.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ia.prototype.mousemove=function(e){this._map.fire(new Ca(e.type,this._map,e))},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(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new Ca(e.type,this._map,e)),this._map.listens("contextmenu")&&e.preventDefault()},Ia.prototype.isEnabled=function(){return!0},Ia.prototype.isActive=function(){return!1},Ia.prototype.enable=function(){},Ia.prototype.disable=function(){};var Da=function(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1};function Ra(e,t){for(var r={},n=0;nthis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=e.timeStamp),r.length===this.numTouches&&(this.centroid=za(t),this.touches=Ra(r,t)))},ja.prototype.touchmove=function(e,t,r){if(!this.aborted&&this.centroid){var n=Ra(r,t);for(var i in this.touches){var a=this.touches[i],o=n[i];(!o||o.dist(a)>Ba)&&(this.aborted=!0)}}},ja.prototype.touchend=function(e,t,r){if((!this.centroid||e.timeStamp-this.startTime>Na)&&(this.aborted=!0),0===r.length){var n=!this.aborted&&this.centroid;if(this.reset(),n)return n}};var Ua=function(e){this.singleTap=new ja(e),this.numTaps=e.numTaps,this.reset()};Ua.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Ua.prototype.touchstart=function(e,t,r){this.singleTap.touchstart(e,t,r)},Ua.prototype.touchmove=function(e,t,r){this.singleTap.touchmove(e,t,r)},Ua.prototype.touchend=function(e,t,r){var n=this.singleTap.touchend(e,t,r);if(n){var i=e.timeStamp-this.lastTime0&&(this._active=!0);var i=Ra(n,r),a=new e.Point(0,0),o=new e.Point(0,0),s=0;for(var l in i){var u=i[l],c=this._touches[l];c&&(a._add(u),o._add(u.sub(c)),s++,i[l]=u)}if(this._touches=i,!(sMath.abs(e.x)}var ao=100,oo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.reset=function(){e.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},t.prototype._start=function(e){this._lastPoints=e,io(e[0].sub(e[1]))&&(this._valid=!1)},t.prototype._move=function(e,t,r){var n=e[0].sub(this._lastPoints[0]),i=e[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,i,r.timeStamp),this._valid)return this._lastPoints=e,this._active=!0,{pitchDelta:(n.y+i.y)/2*-.5}},t.prototype.gestureBeginsVertically=function(e,t,r){if(void 0!==this._valid)return this._valid;var n=2,i=e.mag()>=n,a=t.mag()>=n;if(i||a){if(!i||!a)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove0===t.y>0;return io(e)&&io(t)&&o}},t}(Ka),so={panStep:100,bearingStep:15,pitchStep:10},lo=function(){var e=so;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep};function uo(e){return e*(2-e)}lo.prototype.reset=function(){this._active=!1},lo.prototype.keydown=function(e){var t=this;if(!(e.altKey||e.ctrlKey||e.metaKey)){var r=0,n=0,i=0,a=0,o=0;switch(e.keyCode){case 61:case 107:case 171:case 187:r=1;break;case 189:case 109:case 173:r=-1;break;case 37:e.shiftKey?n=-1:(e.preventDefault(),a=-1);break;case 39:e.shiftKey?n=1:(e.preventDefault(),a=1);break;case 38:e.shiftKey?i=1:(e.preventDefault(),o=-1);break;case 40:e.shiftKey?i=-1:(e.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:uo,zoom:r?Math.round(l)+r*(e.shiftKey?2:1):l,bearing:s.getBearing()+n*t._bearingStep,pitch:s.getPitch()+i*t._pitchStep,offset:[-a*t._panStep,-o*t._panStep],center:s.getCenter()},{originalEvent:e})}}}},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 co=4.000244140625,fo=.01,ho=1/450,po=2,vo=function(t,r){this._map=t,this._el=t.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=fo,this._wheelZoomRate=ho,e.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};vo.prototype.setZoomRate=function(e){this._defaultZoomRate=e},vo.prototype.setWheelZoomRate=function(e){this._wheelZoomRate=e},vo.prototype.isEnabled=function(){return!!this._enabled},vo.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},vo.prototype.isZooming=function(){return!!this._zooming},vo.prototype.enable=function(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=e&&"center"===e.around)},vo.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},vo.prototype.wheel=function(t){if(this.isEnabled()){var r=t.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY,n=e.browser.now(),i=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%co===0?this._type="wheel":0!==r&&Math.abs(r)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=r,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(i*r)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,r+=this._lastValue)),t.shiftKey&&r&&(r/=4),this._type&&(this._lastWheelEvent=t,this._delta-=r,this._active||this._start(t)),t.preventDefault()}},vo.prototype._onTimeout=function(e){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(e)},vo.prototype._start=function(t){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 n=r.mousePos(this._el,t);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(n)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},vo.prototype.renderFrame=function(){return this._onScrollFrame()},vo.prototype._onScrollFrame=function(){var t=this;if(this._frameId&&(this._frameId=null,this.isActive())){var r=this._map.transform;if(0!==this._delta){var n="wheel"===this._type&&Math.abs(this._delta)>co?this._wheelZoomRate:this._defaultZoomRate,i=po/(1+Math.exp(-Math.abs(this._delta*n)));this._delta<0&&0!==i&&(i=1/i);var a="number"===typeof this._targetZoom?r.zoomScale(this._targetZoom):r.scale;this._targetZoom=Math.min(r.maxZoom,Math.max(r.minZoom,r.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=r.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s="number"===typeof this._targetZoom?this._targetZoom:r.zoom,l=this._startZoom,u=this._easing,c=!1;if("wheel"===this._type&&l&&u){var f=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),d=u(f);o=e.number(l,s,d),f<1?this._frameId||(this._frameId=!0):c=!0}else o=s,c=!0;return this._active=!0,c&&(this._active=!1,this._finishTimeout=setTimeout((function(){t._zooming=!1,t._handler._triggerRenderFrame(),delete t._targetZoom,delete t._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!c,zoomDelta:o-r.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},vo.prototype._smoothOutEasing=function(t){var r=e.ease;if(this._prevEase){var n=this._prevEase,i=(e.browser.now()-n.start)/n.duration,a=n.easing(i+.01)-n.easing(i),o=.27/Math.sqrt(a*a+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=e.bezier(o,s,.25,1)}return this._prevEase={start:e.browser.now(),duration:t,easing:r},r},vo.prototype.reset=function(){this._active=!1};var mo=function(e,t){this._clickZoom=e,this._tapZoom=t};mo.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},mo.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},mo.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},mo.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var go=function(){this.reset()};go.prototype.reset=function(){this._active=!1},go.prototype.dblclick=function(e,t){return e.preventDefault(),{cameraAnimation:function(r){r.easeTo({duration:300,zoom:r.getZoom()+(e.shiftKey?-1:1),around:r.unproject(t)},{originalEvent:e})}}},go.prototype.enable=function(){this._enabled=!0},go.prototype.disable=function(){this._enabled=!1,this.reset()},go.prototype.isEnabled=function(){return this._enabled},go.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(e,t,r){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>Fa&&this.reset(),this._tapTime?r.length>0&&(this._swipePoint=t[0],this._swipeTouch=r[0].identifier):this._tap.touchstart(e,t,r))},yo.prototype.touchmove=function(e,t,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=t[0],i=n.y-this._swipePoint.y;return this._swipePoint=n,e.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(e,t,r)},yo.prototype.touchend=function(e,t,r){this._tapTime?this._swipePoint&&0===r.length&&this.reset():this._tap.touchend(e,t,r)&&(this._tapTime=e.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 xo=function(e,t,r){this._el=e,this._mousePan=t,this._touchPan=r};xo.prototype.enable=function(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},xo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},xo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},xo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var bo=function(e,t,r){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=r};bo.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},bo.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},bo.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},bo.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var _o=function(e,t,r,n){this._el=e,this._touchZoom=t,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};_o.prototype.enable=function(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},_o.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},_o.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},_o.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},_o.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},_o.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var wo=function(e){return e.zoom||e.drag||e.pitch||e.rotate},ko=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(e.Event);function To(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}var Mo=function(t,n){this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Aa(t),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),e.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],[e.window.document,"mousemove",{capture:!0}],[e.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],[e.window,"blur",void 0]];for(var a=0,o=this._listeners;aa?Math.min(2,_):Math.max(.5,_),w=Math.pow(m,1-t),k=i.unproject(x.add(b.mult(t*w)).mult(v));i.setLocationAtPoint(i.renderWorldCopies?k.wrap():k,p)}n._fireMoveEvents(r)}),(function(e){n._afterEase(r,e)}),t),this},r.prototype._prepareEase=function(t,r,n){void 0===n&&(n={}),this._moving=!0,r||n.moving||this.fire(new e.Event("movestart",t)),this._zooming&&!n.zooming&&this.fire(new e.Event("zoomstart",t)),this._rotating&&!n.rotating&&this.fire(new e.Event("rotatestart",t)),this._pitching&&!n.pitching&&this.fire(new e.Event("pitchstart",t))},r.prototype._fireMoveEvents=function(t){this.fire(new e.Event("move",t)),this._zooming&&this.fire(new e.Event("zoom",t)),this._rotating&&this.fire(new e.Event("rotate",t)),this._pitching&&this.fire(new e.Event("pitch",t))},r.prototype._afterEase=function(t,r){if(!this._easeId||!r||this._easeId!==r){delete this._easeId;var n=this._zooming,i=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,n&&this.fire(new e.Event("zoomend",t)),i&&this.fire(new e.Event("rotateend",t)),a&&this.fire(new e.Event("pitchend",t)),this.fire(new e.Event("moveend",t))}},r.prototype.flyTo=function(t,r){var n=this;if(!t.essential&&e.browser.prefersReducedMotion){var i=e.pick(t,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,r)}this.stop(),t=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},t);var a=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),u=this.getPadding(),c="zoom"in t?e.clamp(+t.zoom,a.minZoom,a.maxZoom):o,f="bearing"in t?this._normalizeBearing(t.bearing,s):s,d="pitch"in t?+t.pitch:l,h="padding"in t?t.padding:a.padding,p=a.zoomScale(c-o),v=e.Point.convert(t.offset),m=a.centerPoint.add(v),g=a.pointLocation(m),y=e.LngLat.convert(t.center||g);this._normalizeCenter(y);var x=a.project(g),b=a.project(y).sub(x),_=t.curve,w=Math.max(a.width,a.height),k=w/p,T=b.mag();if("minZoom"in t){var M=e.clamp(Math.min(t.minZoom,o,c),a.minZoom,a.maxZoom),A=w/a.zoomScale(M-o);_=Math.sqrt(A/T*2)}var S=_*_;function E(e){var t=(k*k-w*w+(e?-1:1)*S*S*T*T)/(2*(e?k:w)*S*T);return Math.log(Math.sqrt(t*t+1)-t)}function C(e){return(Math.exp(e)-Math.exp(-e))/2}function L(e){return(Math.exp(e)+Math.exp(-e))/2}function P(e){return C(e)/L(e)}var O=E(0),I=function(e){return L(O)/L(O+_*e)},D=function(e){return w*((L(O)*P(O+_*e)-C(O))/S)/T},R=(E(1)-O)/_;if(Math.abs(T)<1e-6||!isFinite(R)){if(Math.abs(w-k)<1e-6)return this.easeTo(t,r);var z=kt.maxDuration&&(t.duration=0),this._zooming=!0,this._rotating=s!==f,this._pitching=d!==l,this._padding=!a.isPaddingEqual(h),this._prepareEase(r,!1),this._ease((function(t){var i=t*R,p=1/I(i);a.zoom=1===t?c:o+a.scaleZoom(p),n._rotating&&(a.bearing=e.number(s,f,t)),n._pitching&&(a.pitch=e.number(l,d,t)),n._padding&&(a.interpolatePadding(u,h,t),m=a.centerPoint.add(v));var g=1===t?y:a.unproject(x.add(b.mult(D(i))).mult(p));a.setLocationAtPoint(a.renderWorldCopies?g.wrap():g,m),n._fireMoveEvents(r)}),(function(){return n._afterEase(r)}),t),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){return this._stop()},r.prototype._stop=function(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var r=this._onEaseEnd;delete this._onEaseEnd,r.call(this,t)}if(!e){var n=this.handlers;n&&n.stop()}return this},r.prototype._ease=function(t,r,n){!1===n.animate||0===n.duration?(t(1),r()):(this._easeStart=e.browser.now(),this._easeOptions=n,this._onEaseFrame=t,this._onEaseEnd=r,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var t=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t)),t<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(t,r){t=e.wrap(t,-180,180);var n=Math.abs(t-r);return Math.abs(t-360-r)180?-360:r<-180?360:0}},r}(e.Evented),So=function(t){void 0===t&&(t={}),this.options=t,e.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};So.prototype.getDefaultPosition=function(){return"bottom-right"},So.prototype.onAdd=function(e){var t=this.options&&this.options.compact;return this._map=e,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),t&&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===t&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},So.prototype.onRemove=function(){r.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 t=this._editLink;t||(t=this._editLink=this._container.querySelector(".mapbox-improve-map"));var r=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(t){var n=r.reduce((function(e,t,n){return t.value&&(e+=t.key+"="+t.value+(n=0)return!1;return!0}))).join(" | ");o!==this._attribHTML&&(this._attribHTML=o,e.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(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};Eo.prototype.onAdd=function(e){this._map=e,this._container=r.create("div","mapboxgl-ctrl");var t=r.create("a","mapboxgl-ctrl-logo");return t.target="_blank",t.rel="noopener nofollow",t.href="https://www.mapbox.com/",t.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),t.setAttribute("rel","noopener nofollow"),this._container.appendChild(t),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(){r.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(e){e&&"metadata"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},Eo.prototype._logoRequired=function(){if(this._map.style){var e=this._map.style.sourceCaches;for(var t in e)if(e[t].getSource().mapbox_logo)return!0;return!1}},Eo.prototype._updateCompact=function(){var e=this._container.children;if(e.length){var t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add("mapboxgl-compact"):t.classList.remove("mapboxgl-compact")}};var Co=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Co.prototype.add=function(e){var t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t},Co.prototype.remove=function(e){for(var t=this._currentlyRunning,r=0,n=t?this._queue.concat(t):this._queue;rt.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=t.minPitch&&null!=t.maxPitch&&t.minPitch>t.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=t.minPitch&&t.minPitchFo)throw new Error("maxPitch must be less than or equal to "+Fo);var i=new ga(t.minZoom,t.maxZoom,t.minPitch,t.maxPitch,t.renderWorldCopies);if(n.call(this,i,t),this._interactive=t.interactive,this._maxTileCacheSize=t.maxTileCacheSize,this._failIfMajorPerformanceCaveat=t.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=t.preserveDrawingBuffer,this._antialias=t.antialias,this._trackResize=t.trackResize,this._bearingSnap=t.bearingSnap,this._refreshExpiredTiles=t.refreshExpiredTiles,this._fadeDuration=t.fadeDuration,this._crossSourceCollisions=t.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=t.collectResourceTiming,this._renderTaskQueue=new Co,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},Lo,t.locale),this._requestManager=new e.RequestManager(t.transformRequest,t.accessToken),"string"===typeof t.container){if(this._container=e.window.document.getElementById(t.container),!this._container)throw new Error("Container '"+t.container+"' not found.")}else{if(!(t.container instanceof Oo))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=t.container}if(t.maxBounds&&this.setMaxBounds(t.maxBounds),e.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 r._update(!1)})),this.on("moveend",(function(){return r._update(!1)})),this.on("zoom",(function(){return r._update(!0)})),"undefined"!==typeof e.window&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1)),this.handlers=new Mo(this,t);var a="string"===typeof t.hash&&t.hash||void 0;this._hash=t.hash&&new ba(a).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:t.center,zoom:t.zoom,bearing:t.bearing,pitch:t.pitch}),t.bounds&&(this.resize(),this.fitBounds(t.bounds,e.extend({},t.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=t.localIdeographFontFamily,t.style&&this.setStyle(t.style,{localIdeographFontFamily:t.localIdeographFontFamily}),t.attributionControl&&this.addControl(new So({customAttribution:t.customAttribution})),this.addControl(new Eo,t.logoPosition),this.on("style.load",(function(){r.transform.unmodified&&r.jumpTo(r.style.stylesheet)})),this.on("data",(function(t){r._update("style"===t.dataType),r.fire(new e.Event(t.dataType+"data",t))})),this.on("dataloading",(function(t){r.fire(new e.Event(t.dataType+"dataloading",t))}))}n&&(i.__proto__=n),i.prototype=Object.create(n&&n.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(t,r){if(void 0===r&&t.getDefaultPosition&&(r=t.getDefaultPosition()),void 0===r&&(r="top-right"),!t||!t.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var n=t.onAdd(this);this._controls.push(t);var i=this._controlPositions[r];return-1!==r.indexOf("bottom")?i.insertBefore(n,i.firstChild):i.appendChild(n),this},i.prototype.removeControl=function(t){if(!t||!t.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var r=this._controls.indexOf(t);return r>-1&&this._controls.splice(r,1),t.onRemove(this),this},i.prototype.resize=function(t){var r=this._containerDimensions(),n=r[0],i=r[1];this._resizeCanvas(n,i),this.transform.resize(n,i),this.painter.resize(n,i);var a=!this._moving;return a&&(this.stop(),this.fire(new e.Event("movestart",t)).fire(new e.Event("move",t))),this.fire(new e.Event("resize",t)),a&&this.fire(new e.Event("moveend",t)),this},i.prototype.getBounds=function(){return this.transform.getBounds()},i.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},i.prototype.setMaxBounds=function(t){return this.transform.setMaxBounds(e.LngLatBounds.convert(t)),this._update()},i.prototype.setMinZoom=function(e){if((e=null===e||void 0===e?Do:e)>=Do&&e<=this.transform.maxZoom)return this.transform.minZoom=e,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=e,this._update(),this.getZoom()>e&&this.setZoom(e),this;throw new Error("maxZoom must be greater than the current minZoom")},i.prototype.getMaxZoom=function(){return this.transform.maxZoom},i.prototype.setMinPitch=function(e){if((e=null===e||void 0===e?zo:e)=zo&&e<=this.transform.maxPitch)return this.transform.minPitch=e,this._update(),this.getPitch()Fo)throw new Error("maxPitch must be less than or equal to "+Fo);if(e>=this.transform.minPitch)return this.transform.maxPitch=e,this._update(),this.getPitch()>e&&this.setPitch(e),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(e){return this.transform.renderWorldCopies=e,this._update()},i.prototype.project=function(t){return this.transform.locationPoint(e.LngLat.convert(t))},i.prototype.unproject=function(t){return this.transform.pointLocation(e.Point.convert(t))},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(e,t,r){var n,i=this;if("mouseenter"===e||"mouseover"===e){var a=!1,o=function(n){var o=i.getLayer(t)?i.queryRenderedFeatures(n.point,{layers:[t]}):[];o.length?a||(a=!0,r.call(i,new Ca(e,i,n.originalEvent,{features:o}))):a=!1};return{layer:t,listener:r,delegates:{mousemove:o,mouseout:function(){a=!1}}}}if("mouseleave"===e||"mouseout"===e){var s=!1,l=function(n){(i.getLayer(t)?i.queryRenderedFeatures(n.point,{layers:[t]}):[]).length?s=!0:s&&(s=!1,r.call(i,new Ca(e,i,n.originalEvent)))},u=function(t){s&&(s=!1,r.call(i,new Ca(e,i,t.originalEvent)))};return{layer:t,listener:r,delegates:{mousemove:l,mouseout:u}}}var c=function(e){var n=i.getLayer(t)?i.queryRenderedFeatures(e.point,{layers:[t]}):[];n.length&&(e.features=n,r.call(i,e),delete e.features)};return{layer:t,listener:r,delegates:(n={},n[e]=c,n)}},i.prototype.on=function(e,t,r){if(void 0===r)return n.prototype.on.call(this,e,t);var i=this._createDelegatedListener(e,t,r);for(var a in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(i),i.delegates)this.on(a,i.delegates[a]);return this},i.prototype.once=function(e,t,r){if(void 0===r)return n.prototype.once.call(this,e,t);var i=this._createDelegatedListener(e,t,r);for(var a in i.delegates)this.once(a,i.delegates[a]);return this},i.prototype.off=function(e,t,r){var i=this;if(void 0===r)return n.prototype.off.call(this,e,t);var a=function(n){for(var a=n[e],o=0;o180;){var s=n.locationPoint(t);if(s.x>=0&&s.y>=0&&s.x<=n.width&&s.y<=n.height)break;t.lng>n.center.lng?t.lng-=360:t.lng+=360}return t}Ho.prototype.down=function(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),r.disableDrag()},Ho.prototype.move=function(e,t){var r=this.map,n=this.mouseRotate.mousemoveWindow(e,t);if(n&&n.bearingDelta&&r.setBearing(r.getBearing()+n.bearingDelta),this.mousePitch){var i=this.mousePitch.mousemoveWindow(e,t);i&&i.pitchDelta&&r.setPitch(r.getPitch()+i.pitchDelta)}},Ho.prototype.off=function(){var e=this.element;r.removeEventListener(e,"mousedown",this.mousedown),r.removeEventListener(e,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(e,"touchmove",this.touchmove),r.removeEventListener(e,"touchend",this.touchend),r.removeEventListener(e,"touchcancel",this.reset),this.offTemp()},Ho.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(e.window,"mousemove",this.mousemove),r.removeEventListener(e.window,"mouseup",this.mouseup)},Ho.prototype.mousedown=function(t){this.down(e.extend({},t,{ctrlKey:!0,preventDefault:function(){return t.preventDefault()}}),r.mousePos(this.element,t)),r.addEventListener(e.window,"mousemove",this.mousemove),r.addEventListener(e.window,"mouseup",this.mouseup)},Ho.prototype.mousemove=function(e){this.move(e,r.mousePos(this.element,e))},Ho.prototype.mouseup=function(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp()},Ho.prototype.touchstart=function(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,e.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return e.preventDefault()}},this._startPos))},Ho.prototype.touchmove=function(e){1!==e.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,e.targetTouches)[0],this.move({preventDefault:function(){return e.preventDefault()}},this._lastPos))},Ho.prototype.touchend=function(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)t.getEast()||r.latitudet.getNorth())},n.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")}},n.prototype._onSuccess=function(t){if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new e.Event("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,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(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",t)),this._finish()}},n.prototype._updateCamera=function(t){var r=new e.LngLat(t.coords.longitude,t.coords.latitude),n=t.coords.accuracy,i=this._map.getBearing(),a=e.extend({bearing:i},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),a,{geolocateSource:!0})},n.prototype._updateMarker=function(t){if(t){var r=new e.LngLat(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(r).addTo(this._map),this._userLocationDotMarker.setLngLat(r).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},n.prototype._updateCircleRadius=function(){var e=this._map._container.clientHeight/2,t=this._map.unproject([0,e]),r=this._map.unproject([1,e]),n=t.distanceTo(r),i=Math.ceil(2*this._accuracy/n);this._circleElement.style.width=i+"px",this._circleElement.style.height=i+"px"},n.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},n.prototype._onError=function(t){if(this._map){if(this.options.trackUserLocation)if(1===t.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 r=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=r,this._geolocateButton.setAttribute("aria-label",r),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===t.code&&Jo)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",t)),this._finish()}},n.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},n.prototype._setupUI=function(t){var n=this;if(this._container.addEventListener("contextmenu",(function(e){return e.preventDefault()})),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",!1===t){e.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=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Zo(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Zo({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(t){var r=t.originalEvent&&"resize"===t.originalEvent.type;t.geolocateSource||"ACTIVE_LOCK"!==n._watchState||r||(n._watchState="BACKGROUND",n._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),n._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),n.fire(new e.Event("trackuserlocationend")))}))},n.prototype.trigger=function(){if(!this._setup)return e.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 e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":$o--,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 e.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 e.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 t;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),++$o>1?(t={maximumAge:6e5,timeout:0},Jo=!0):(t=this.options.positionOptions,Jo=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},n.prototype._clearWatch=function(){e.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)},n}(e.Evented),es={maxWidth:100,unit:"metric"},ts=function(t){this.options=e.extend({},es,t),e.bindAll(["_onMove","setUnit"],this)};function rs(e,t,r){var n=r&&r.maxWidth||100,i=e._container.clientHeight/2,a=e.unproject([0,i]),o=e.unproject([n,i]),s=a.distanceTo(o);if(r&&"imperial"===r.unit){var l=3.2808*s;l>5280?ns(t,n,l/5280,e._getUIString("ScaleControl.Miles")):ns(t,n,l,e._getUIString("ScaleControl.Feet"))}else r&&"nautical"===r.unit?ns(t,n,s/1852,e._getUIString("ScaleControl.NauticalMiles")):s>=1e3?ns(t,n,s/1e3,e._getUIString("ScaleControl.Kilometers")):ns(t,n,s,e._getUIString("ScaleControl.Meters"))}function ns(e,t,r,n){var i=as(r),a=i/r;e.style.width=t*a+"px",e.innerHTML=i+" "+n}function is(e){var t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}function as(e){var t=Math.pow(10,(""+Math.floor(e)).length-1),r=e/t;return t*(r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:r>=1?1:is(r))}ts.prototype.getDefaultPosition=function(){return"bottom-left"},ts.prototype._onMove=function(){rs(this._map,this._container,this.options)},ts.prototype.onAdd=function(e){return this._map=e,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",e.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},ts.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},ts.prototype.setUnit=function(e){this.options.unit=e,rs(this._map,this._container,this.options)};var os=function(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof e.window.HTMLElement?this._container=t.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};os.prototype.onAdd=function(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},os.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},os.prototype._setupUI=function(){var t=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",t).setAttribute("aria-hidden",!0),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._updateTitle=function(){var e=this._getTitle();this._fullscreenButton.setAttribute("aria-label",e),this._fullscreenButton.title=e},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(){(e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.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()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.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(t){function n(r){t.call(this),this.options=e.extend(Object.create(ss),r),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n,n.prototype.addTo=function(t){return this._map&&this.remove(),this._map=t,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 e.Event("open")),this},n.prototype.isOpen=function(){return!!this._map},n.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.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 e.Event("close")),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(t){return this._lngLat=e.LngLat.convert(t),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},n.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},n.prototype.getElement=function(){return this._container},n.prototype.setText=function(t){return this.setDOMContent(e.window.document.createTextNode(t))},n.prototype.setHTML=function(t){var r,n=e.window.document.createDocumentFragment(),i=e.window.document.createElement("body");for(i.innerHTML=t;r=i.firstChild;)n.appendChild(r);return this.setDOMContent(n)},n.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},n.prototype.setMaxWidth=function(e){return this.options.maxWidth=e,this._update(),this},n.prototype.setDOMContent=function(e){return this._createContent(),this._content.appendChild(e),this._update(),this},n.prototype.addClassName=function(e){this._container&&this._container.classList.add(e)},n.prototype.removeClassName=function(e){this._container&&this._container.classList.remove(e)},n.prototype.toggleClassName=function(e){if(this._container)return this._container.classList.toggle(e)},n.prototype._createContent=function(){this._content&&r.remove(this._content),this._content=r.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=r.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))},n.prototype._onMouseUp=function(e){this._update(e.point)},n.prototype._onMouseMove=function(e){this._update(e.point)},n.prototype._onDrag=function(e){this._update(e.point)},n.prototype._update=function(e){var t=this,n=this._lngLat||this._trackPointer;if(this._map&&n&&this._content&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach((function(e){return t._container.classList.add(e)})),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||e)){var i=this._pos=this._trackPointer&&e?e:this._map.project(this._lngLat),a=this.options.anchor,o=us(this.options.offset);if(!a){var s,l=this._container.offsetWidth,u=this._container.offsetHeight;s=i.y+o.bottom.ythis._map.transform.height-u?["bottom"]:[],i.xthis._map.transform.width-l/2&&s.push("right"),a=0===s.length?"bottom":s.join("-")}var c=i.add(o[a]).round();r.setTransform(this._container,Wo[a]+" translate("+c.x+"px,"+c.y+"px)"),Go(this._container,a,"popup")}},n.prototype._onClose=function(){this.remove()},n}(e.Evented);function us(t){if(t){if("number"===typeof t){var r=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{center:new e.Point(0,0),top:new e.Point(0,t),"top-left":new e.Point(r,r),"top-right":new e.Point(-r,r),bottom:new e.Point(0,-t),"bottom-left":new e.Point(r,-r),"bottom-right":new e.Point(-r,-r),left:new e.Point(t,0),right:new e.Point(-t,0)}}if(t instanceof e.Point||Array.isArray(t)){var n=e.Point.convert(t);return{center:n,top:n,"top-left":n,"top-right":n,bottom:n,"bottom-left":n,"bottom-right":n,left:n,right:n}}return{center:e.Point.convert(t.center||[0,0]),top:e.Point.convert(t.top||[0,0]),"top-left":e.Point.convert(t["top-left"]||[0,0]),"top-right":e.Point.convert(t["top-right"]||[0,0]),bottom:e.Point.convert(t.bottom||[0,0]),"bottom-left":e.Point.convert(t["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(t["bottom-right"]||[0,0]),left:e.Point.convert(t.left||[0,0]),right:e.Point.convert(t.right||[0,0])}}return us(new e.Point(0,0))}var cs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:Bo,NavigationControl:Vo,GeolocateControl:Qo,AttributionControl:So,ScaleControl:ts,FullscreenControl:os,Popup:ls,Marker:Zo,Style:mr,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:at,clearPrewarmedResources:ot,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(t){e.config.ACCESS_TOKEN=t},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(t){e.config.API_URL=t},get workerCount(){return tt.workerCount},set workerCount(e){tt.workerCount=e},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){e.config.MAX_PARALLEL_IMAGE_REQUESTS=t},clearStorage:function(t){e.clearTileCache(t)},workerUrl:""};return cs})),r}()},27084:function(e){"use strict";e.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}},16825:function(e,t,r){"use strict";e.exports=function(e,t){t||(t=e,e=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(e){var t=!1;return"altKey"in e&&(t=t||e.altKey!==o.alt,o.alt=!!e.altKey),"shiftKey"in e&&(t=t||e.shiftKey!==o.shift,o.shift=!!e.shiftKey),"ctrlKey"in e&&(t=t||e.ctrlKey!==o.control,o.control=!!e.ctrlKey),"metaKey"in e&&(t=t||e.metaKey!==o.meta,o.meta=!!e.metaKey),t}function u(e,s){var u=n.x(s),c=n.y(s);"buttons"in s&&(e=0|s.buttons),(e!==r||u!==i||c!==a||l(s))&&(r=0|e,i=u||0,a=c||0,t&&t(r,i,a,o))}function c(e){u(0,e)}function f(){(r||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,r=0,o.shift=o.alt=o.control=o.meta=!1,t&&t(0,0,0,o))}function d(e){l(e)&&t&&t(r,i,a,o)}function h(e){0===n.buttons(e)?u(0,e):u(r,e)}function p(e){u(r|n.buttons(e),e)}function v(e){u(r&~n.buttons(e),e)}function m(){s||(s=!0,e.addEventListener("mousemove",h),e.addEventListener("mousedown",p),e.addEventListener("mouseup",v),e.addEventListener("mouseleave",c),e.addEventListener("mouseenter",c),e.addEventListener("mouseout",c),e.addEventListener("mouseover",c),e.addEventListener("blur",f),e.addEventListener("keyup",d),e.addEventListener("keydown",d),e.addEventListener("keypress",d),e!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",d),window.addEventListener("keydown",d),window.addEventListener("keypress",d)))}m();var g={element:e};return Object.defineProperties(g,{enabled:{get:function(){return s},set:function(t){t?m():s&&(s=!1,e.removeEventListener("mousemove",h),e.removeEventListener("mousedown",p),e.removeEventListener("mouseup",v),e.removeEventListener("mouseleave",c),e.removeEventListener("mouseenter",c),e.removeEventListener("mouseout",c),e.removeEventListener("mouseover",c),e.removeEventListener("blur",f),e.removeEventListener("keyup",d),e.removeEventListener("keydown",d),e.removeEventListener("keypress",d),e!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",d),window.removeEventListener("keydown",d),window.removeEventListener("keypress",d)))},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),g};var n=r(74311)},48956:function(e){var t={left:0,top:0};e.exports=function(e,r,n){r=r||e.currentTarget||e.srcElement,Array.isArray(n)||(n=[0,0]);var i,a=e.clientX||0,o=e.clientY||0,s=(i=r)===window||i===document||i===document.body?t:i.getBoundingClientRect();return n[0]=a-s.left,n[1]=o-s.top,n}},74311:function(e,t){"use strict";function r(e){return e.target||e.srcElement||window}t.buttons=function(e){if("object"===typeof e){if("buttons"in e)return e.buttons;if("which"in e){if(2===(t=e.which))return 4;if(3===t)return 2;if(t>0)return 1<=0)return 1<0&&a(s,r))}catch(m){c.call(new d(r),m)}}}function c(e){var t=this;t.triggered||(t.triggered=!0,t.def&&(t=t.def),t.msg=e,t.state=2,t.chain.length>0&&a(s,t))}function f(e,t,r,n){for(var i=0;i1&&(i*=g=Math.sqrt(g),s*=g);var y=i*i,x=s*s,b=(u==c?-1:1)*Math.sqrt(Math.abs((y*x-y*m*m-x*v*v)/(y*m*m+x*v*v)));b==1/0&&(b=1);var _=b*i*m/s+(e+f)/2,w=b*-s*v/i+(n+d)/2,k=Math.asin(((n-w)/s).toFixed(9)),T=Math.asin(((d-w)/s).toFixed(9));(k=e<_?t-k:k)<0&&(k=2*t+k),(T=f<_?t-T:T)<0&&(T=2*t+T),c&&k>T&&(k-=2*t),!c&&T>k&&(T-=2*t)}if(Math.abs(T-k)>r){var M=T,A=f,S=d;T=k+r*(c&&T>k?1:-1);var E=a(f=_+i*Math.cos(T),d=w+s*Math.sin(T),i,s,l,0,c,A,S,[T,M,_,w])}var C=Math.tan((T-k)/4),L=4/3*i*C,P=4/3*s*C,O=[2*e-(e+L*Math.sin(k)),2*n-(n-P*Math.cos(k)),f+L*Math.sin(T),d-P*Math.cos(T),f,d];if(h)return O;E&&(O=O.concat(E));for(var I=0;I7&&(r.push(g.splice(0,7)),g.unshift("C"));break;case"S":var x=h,b=p;"C"!=t&&"S"!=t||(x+=x-o,b+=b-l),g=["C",x,b,g[1],g[2],g[3],g[4]];break;case"T":"Q"==t||"T"==t?(f=2*h-f,d=2*p-d):(f=h,d=p),g=i(h,p,f,d,g[1],g[2]);break;case"Q":f=g[1],d=g[2],g=i(h,p,g[1],g[2],g[3],g[4]);break;case"L":g=n(h,p,g[1],g[2]);break;case"H":g=n(h,p,g[1],p);break;case"V":g=n(h,p,h,g[1]);break;case"Z":g=n(h,p,u,c)}t=y,h=g[g.length-2],p=g[g.length-1],g.length>4?(o=g[g.length-4],l=g[g.length-3]):(o=h,l=p),r.push(g)}return r}},56131:function(e){"use strict";var t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(i){return!1}}()?Object.assign:function(e,i){for(var a,o,s=function(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l0&&!i.call(e,0))for(var v=0;v0)for(var m=0;m=0&&"[object Function]"===t.call(e.callee)),n}},88641:function(e){"use strict";function t(e,t){if("string"!==typeof e)return[e];var r=[e];"string"===typeof t||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach((function(e){var t=new RegExp(["\\",e[0],"[^\\",e[0],"\\",e[1],"]*\\",e[1]].join("")),n=[];function a(t,a,o){var s=r.push(t.slice(e[0].length,-e[1].length))-1;return n.push(s),i+s+i}r.forEach((function(e,n){for(var i,o=0;e!=i;)if(i=e,e=e.replace(t,a),o++>1e4)throw Error("References have circular dependency. Please, check them.");r[n]=e})),n=n.reverse(),r=r.map((function(t){return n.forEach((function(r){t=t.replace(new RegExp("(\\"+i+r+"\\"+i+")","g"),e[0]+"$1"+e[1])})),t}))}));var o=new RegExp("\\"+i+"([0-9]+)\\"+i);return a?r:function e(t,r,n){for(var i,a=[],s=0;i=o.exec(t);){if(s++>1e4)throw Error("Circular references in parenthesis");a.push(t.slice(0,i.index)),a.push(e(r[i[1]],r)),t=t.slice(i.index+i[0].length)}return a.push(t),a}(r[0],r)}function r(e,t){if(t&&t.flat){var r,n=t&&t.escape||"___",i=e[0];if(!i)return"";for(var a=new RegExp("\\"+n+"([0-9]+)\\"+n),o=0;i!=r;){if(o++>1e4)throw Error("Circular references in "+e);r=i,i=i.replace(a,s)}return i}return e.reduce((function e(t,r){return Array.isArray(r)&&(r=r.reduce(e,"")),t+r}),"");function s(t,r){if(null==e[r])throw Error("Reference "+r+"is undefined");return e[r]}}function n(e,n){return Array.isArray(e)?r(e,n):t(e,n)}n.parse=t,n.stringify=r,e.exports=n},18863:function(e,t,r){"use strict";var n=r(71299);e.exports=function(e){var t;return arguments.length>1&&(e=arguments),"string"===typeof e?e=e.split(/\s/).map(parseFloat):"number"===typeof e&&(e=[e]),e.length&&"number"===typeof e[0]?t=1===e.length?{width:e[0],height:e[0],x:0,y:0}:2===e.length?{width:e[0],height:e[1],x:0,y:0}:{x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(t={x:(e=n(e,{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:e.top||0},null==e.width?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,null==e.height?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}},95616:function(e){e.exports=function(e){var i=[];return e.replace(r,(function(e,r,a){var o=r.toLowerCase();for(a=function(e){var t=e.match(n);return t?t.map(Number):[]}(a),"m"==o&&a.length>2&&(i.push([r].concat(a.splice(0,2))),o="l",r="m"==r?"l":"L");;){if(a.length==t[o])return a.unshift(r),i.push(a);if(a.lengtha!==h>a&&i<(d-c)*(a-f)/(h-f)+c&&(o=!o)}return o}},52142:function(e,t,r){var n,i=r(69444),a=r(29023),o=r(87263),s=r(11328),l=r(55968),u=r(10670),c=!1,f=a();function d(e,t,r){var i=n.segments(e),a=n.segments(t),o=r(n.combine(i,a));return n.polygon(o)}n={buildLog:function(e){return!0===e?c=i():!1===e&&(c=!1),!1!==c&&c.list},epsilon:function(e){return f.epsilon(e)},segments:function(e){var t=o(!0,f,c);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){return{combined:o(!1,f,c).calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:l.union(e.combined,c),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:l.intersect(e.combined,c),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:l.difference(e.combined,c),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:l.differenceRev(e.combined,c),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:l.xor(e.combined,c),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:s(e.segments,f,c),inverted:e.inverted}},polygonFromGeoJSON:function(e){return u.toPolygon(n,e)},polygonToGeoJSON:function(e){return u.fromPolygon(n,f,e)},union:function(e,t){return d(e,t,n.selectUnion)},intersect:function(e,t){return d(e,t,n.selectIntersect)},difference:function(e,t){return d(e,t,n.selectDifference)},differenceRev:function(e,t){return d(e,t,n.selectDifferenceRev)},xor:function(e,t){return d(e,t,n.selectXor)}},"object"===typeof window&&(window.PolyBool=n),e.exports=n},69444:function(e){e.exports=function(){var e,t=0,r=!1;function n(t,r){return e.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(e,t){return n("check",{seg1:e,seg2:t})},segmentChop:function(e,t){return n("div_seg",{seg:e,pt:t}),n("chop",{seg:e,pt:t})},statusRemove:function(e){return n("pop_seg",{seg:e})},segmentUpdate:function(e){return n("seg_update",{seg:e})},segmentNew:function(e,t){return n("new_seg",{seg:e,primary:t})},segmentRemove:function(e){return n("rem_seg",{seg:e})},tempStatus:function(e,t,r){return n("temp_status",{seg:e,above:t,below:r})},rewind:function(e){return n("rewind",{seg:e})},status:function(e,t,r){return n("status",{seg:e,above:t,below:r})},vert:function(t){return t===r?e:(r=t,n("vert",{x:t}))},log:function(e){return"string"!==typeof e&&(e=JSON.stringify(e,!1," ")),n("log",{txt:e})},reset:function(){return n("reset")},selected:function(e){return n("selected",{segs:e})},chainStart:function(e){return n("chain_start",{seg:e})},chainRemoveHead:function(e,t){return n("chain_rem_head",{index:e,pt:t})},chainRemoveTail:function(e,t){return n("chain_rem_tail",{index:e,pt:t})},chainNew:function(e,t){return n("chain_new",{pt1:e,pt2:t})},chainMatch:function(e){return n("chain_match",{index:e})},chainClose:function(e){return n("chain_close",{index:e})},chainAddHead:function(e,t){return n("chain_add_head",{index:e,pt:t})},chainAddTail:function(e,t){return n("chain_add_tail",{index:e,pt:t})},chainConnect:function(e,t){return n("chain_con",{index1:e,index2:t})},chainReverse:function(e){return n("chain_rev",{index:e})},chainJoin:function(e,t){return n("chain_join",{index1:e,index2:t})},done:function(){return n("done")}}}},29023:function(e){e.exports=function(e){"number"!==typeof e&&(e=1e-10);var t={epsilon:function(t){return"number"===typeof t&&(e=t),e},pointAboveOrOnLine:function(t,r,n){var i=r[0],a=r[1],o=n[0],s=n[1],l=t[0];return(o-i)*(t[1]-a)-(s-a)*(l-i)>=-e},pointBetween:function(t,r,n){var i=t[1]-r[1],a=n[0]-r[0],o=t[0]-r[0],s=n[1]-r[1],l=o*a+i*s;return!(l-e)},pointsSameX:function(t,r){return Math.abs(t[0]-r[0])e!=o-i>e&&(a-u)*(i-c)/(o-c)+u-n>e&&(s=!s),a=u,o=c}return s}};return t}},10670:function(e){var t={toPolygon:function(e,t){function r(t){if(t.length<=0)return e.segments({inverted:!1,regions:[]});function r(t){var r=t.slice(0,t.length-1);return e.segments({inverted:!1,regions:[r]})}for(var n=r(t[0]),i=1;i0}))}function c(e,n){var i=e.seg,a=n.seg,o=i.start,s=i.end,u=a.start,c=a.end;r&&r.checkIntersection(i,a);var f=t.linesIntersect(o,s,u,c);if(!1===f){if(!t.pointsCollinear(o,s,u))return!1;if(t.pointsSame(o,c)||t.pointsSame(s,u))return!1;var d=t.pointsSame(o,u),h=t.pointsSame(s,c);if(d&&h)return n;var p=!d&&t.pointBetween(o,u,c),v=!h&&t.pointBetween(s,u,c);if(d)return v?l(n,s):l(e,c),n;p&&(h||(v?l(n,s):l(e,c)),l(n,o))}else 0===f.alongA&&(-1===f.alongB?l(e,u):0===f.alongB?l(e,f.pt):1===f.alongB&&l(e,c)),0===f.alongB&&(-1===f.alongA?l(n,o):0===f.alongA?l(n,f.pt):1===f.alongA&&l(n,s));return!1}for(var f=[],d=function(){if(h=a.getHead(),r&&r.vert(h.pt[0]),h.isStart){if(r&&r.segmentNew(h.seg,h.primary),p=u(h),v=p.before?p.before.ev:null,m=p.after?p.after.ev:null,r&&r.tempStatus(h.seg,!!v&&v.seg,!!m&&m.seg),(g=function(){if(v){var e=c(h,v);if(e)return e}return!!m&&c(h,m)}())&&(e?(y=null===h.seg.myFill.below||h.seg.myFill.above!==h.seg.myFill.below)&&(g.seg.myFill.above=!g.seg.myFill.above):g.seg.otherFill=h.seg.myFill,r&&r.segmentUpdate(g.seg),h.other.remove(),h.remove()),a.getHead()!==h)return r&&r.rewind(h.seg),"continue";e?(y=null===h.seg.myFill.below||h.seg.myFill.above!==h.seg.myFill.below,h.seg.myFill.below=m?m.seg.myFill.above:i,h.seg.myFill.above=y?!h.seg.myFill.below:h.seg.myFill.below):null===h.seg.otherFill&&(x=m?h.primary===m.primary?m.seg.otherFill.above:m.seg.myFill.above:h.primary?o:i,h.seg.otherFill={above:x,below:x}),r&&r.status(h.seg,!!v&&v.seg,!!m&&m.seg),h.other.status=p.insert(n.node({ev:h}))}else{if(null===(b=h.status))throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");s.exists(b.prev)&&s.exists(b.next)&&c(b.prev.ev,b.next.ev),r&&r.statusRemove(b.ev.seg),b.remove(),h.primary||(_=h.seg.myFill,h.seg.myFill=h.seg.otherFill,h.seg.otherFill=_),f.push(h.seg)}a.getHead().remove()};!a.isEmpty();){var h,p,v,m,g,y,x,b,_;d()}return r&&r.done(),f}return e?{addRegion:function(e){for(var n,i,a,o=e[e.length-1],l=0;l0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}},n.prototype.read_uint16=function(e){var r=this.input;if(e+2>r.length)throw t("unexpected EOF","EBADDATA");return this.big_endian?256*r[e]+r[e+1]:r[e]+256*r[e+1]},n.prototype.read_uint32=function(e){var r=this.input;if(e+4>r.length)throw t("unexpected EOF","EBADDATA");return this.big_endian?16777216*r[e]+65536*r[e+1]+256*r[e+2]+r[e+3]:r[e]+256*r[e+1]+65536*r[e+2]+16777216*r[e+3]},n.prototype.is_subifd_link=function(e,t){return 0===e&&34665===t||0===e&&34853===t||34665===e&&40965===t},n.prototype.exif_format_length=function(e){switch(e){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}},n.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t];case 6:return(r=this.input[t])|33554430*(128&r);case 3:return r=this.read_uint16(t);case 8:return(r=this.read_uint16(t))|131070*(32768&r);case 4:return r=this.read_uint32(t);case 9:return 0|(r=this.read_uint32(t));default:return null}},n.prototype.scan_ifd=function(e,n,i){var a=this.read_uint16(n);n+=2;for(var o=0;othis.input.length)throw t("unexpected EOF","EBADDATA");for(var p=[],v=d,m=0;m0&&(this.ifds_to_read.push({id:s,offset:p[0]}),h=!0),!1===i({is_big_endian:this.big_endian,ifd:e,tag:s,format:l,count:u,entry_offset:n+this.start,data_length:f,data_offset:d+this.start,value:p,is_subifd_link:h}))return void(this.aborted=!0);n+=12}0===e&&this.ifds_to_read.push({id:1,offset:this.read_uint32(n)})},e.exports.ExifParser=n,e.exports.get_orientation=function(e){var t=0;try{return new n(e,0,e.length).each((function(e){if(0===e.ifd&&274===e.tag&&Array.isArray(e.value))return t=e.value[0],!1})),t}catch(r){return-1}}},76767:function(e,t,r){"use strict";var n=r(14847).n8,i=r(14847).Ag;function a(e,t){if(e.length<4+t)return null;var r=i(e,t);return e.length>4&15,i=15&e[4],a=e[5]>>4&15,o=n(e,6),l=8,u=0;ut.width||e.width===t.width&&e.height>t.height?e:t})),r=e.reduce((function(e,t){return e.height>t.height||e.height===t.height&&e.width>t.width?e:t}));return t.width>r.height||t.width===r.height&&t.height>r.width?t:r}(t.sizes),n=1;t.transforms.forEach((function(e){var t={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},r={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if("imir"===e.type&&(n=0===e.value?r[n]:t[n=t[n=r[n]]]),"irot"===e.type)for(var i=0;i1&&(d.variants=f.variants),f.orientation&&(d.orientation=f.orientation),f.exif_location&&f.exif_location.offset+f.exif_location.length<=e.length){var h=a(e,f.exif_location.offset),p=e.slice(f.exif_location.offset+h+4,f.exif_location.offset+f.exif_location.length),v=s.get_orientation(p);v>0&&(d.orientation=v)}return d}}}}}}},2504:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).mP,o=n("BM");e.exports=function(e){if(!(e.length<26)&&i(e,0,o))return{width:a(e,18),height:a(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}},47342:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).mP,o=n("GIF87a"),s=n("GIF89a");e.exports=function(e){if(!(e.length<10)&&(i(e,0,o)||i(e,0,s)))return{width:a(e,6),height:a(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}},31355:function(e,t,r){"use strict";var n=r(14847).mP;e.exports=function(e){var t=n(e,0),r=n(e,2),i=n(e,4);if(0===t&&1===r&&i){for(var a=[],o={width:0,height:0},s=0;so.width||u>o.height)&&(o=c)}return{width:o.width,height:o.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}},54261:function(e,t,r){"use strict";var n=r(14847).n8,i=r(14847).eG,a=r(14847).OF,o=r(71371),s=i("Exif\0\0");e.exports=function(e){if(!(e.length<2)&&255===e[0]&&216===e[1]&&255===e[2])for(var t=2;;){for(;;){if(e.length-t<2)return;if(255===e[t++])break}for(var r,i,l=e[t++];255===l;)l=e[t++];if(208<=l&&l<=217||1===l)r=0;else{if(!(192<=l&&l<=254))return;if(e.length-t<2)return;r=n(e,t)-2,t+=2}if(217===l||218===l)return;if(225===l&&r>=10&&a(e,t,s)&&(i=o.get_orientation(e.slice(t+6,t+r))),r>=5&&192<=l&&l<=207&&196!==l&&200!==l&&204!==l){if(e.length-t0&&(u.orientation=i),u}t+=r}}},6303:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).Ag,o=n("\x89PNG\r\n\x1a\n"),s=n("IHDR");e.exports=function(e){if(!(e.length<24)&&i(e,0,o)&&i(e,12,s))return{width:a(e,16),height:a(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}},38689:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).Ag,o=n("8BPS\0\x01");e.exports=function(e){if(!(e.length<22)&&i(e,0,o))return{width:a(e,18),height:a(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}},6881:function(e){"use strict";function t(e){return"number"===typeof e&&isFinite(e)&&e>0}var r=/<[-_.:a-zA-Z0-9][^>]*>/,n=/^<([-_.: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(e){return s.test(e)?e.match(s)[0]:"px"}e.exports=function(e){if(function(e){var t,r=0,n=e.length;for(239===e[0]&&187===e[1]&&191===e[2]&&(r=3);r>14&16383),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function d(e,t){return{width:1+(e[t+6]<<16|e[t+5]<<8|e[t+4]),height:1+(e[t+9]<e.length)){for(;t+8=10?r=r||c(e,t+8):"VP8L"===h&&p>=9?r=r||f(e,t+8):"VP8X"===h&&p>=10?r=r||d(e,t+8):"EXIF"===h&&(n=s.get_orientation(e.slice(t+8,t+8+p)),t=1/0),t+=8+p}else t++;if(r)return n>0&&(r.orientation=n),r}}}},91497:function(e,t,r){"use strict";e.exports={avif:r(24461),bmp:r(2504),gif:r(47342),ico:r(31355),jpeg:r(54261),png:r(6303),psd:r(38689),svg:r(6881),tiff:r(66278),webp:r(90784)}},33575:function(e,t,r){"use strict";var n=r(91497);e.exports=function(e){return function(e){for(var t=Object.keys(n),r=0;r1)for(var r=1;r1&&(e.scaleRatio=[e.scale[0]*e.viewport.width,e.scale[1]*e.viewport.height],r(e),e.after&&e.after(e))}function k(e){if(e){null!=e.length?"number"===typeof e[0]&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);var t=0,r=0;if(b.groups=x=e.map((function(e,u){var c=x[u];return e?("function"===typeof e?e={after:e}:"number"===typeof e[0]&&(e={positions:e}),e=o(e,{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"}),c||(x[u]=c={id:u,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},e=s({},y,e)),a(c,e,[{lineWidth:function(e){return.5*+e},capSize:function(e){return.5*+e},opacity:parseFloat,errors:function(e){return e=l(e),r+=e.length,e},positions:function(e,r){return e=l(e,"float64"),r.count=Math.floor(e.length/2),r.bounds=n(e,2),r.offset=t,t+=r.count,e}},{color:function(e,t){var r=t.count;if(e||(e="transparent"),!Array.isArray(e)||"number"===typeof e[0]){var n=e;e=Array(r);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:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},n))}catch(s){t=i}return{fill:e({primitive:"triangle",elements:function(e,t){return t.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:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:function(e,t){return[t.viewport.x,t.viewport.y,e.viewportWidth,e.viewportHeight]}},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:i,miter:t}},g.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},g.prototype.render=function(){for(var e,t=[],r=arguments.length;r--;)t[r]=arguments[r];t.length&&(e=this).update.apply(e,t),this.draw()},g.prototype.draw=function(){for(var e=this,t=[],r=arguments.length;r--;)t[r]=arguments[r];return(t.length?t:this.passes).forEach((function(t,r){var n;if(t&&Array.isArray(t))return(n=e).draw.apply(n,t);"number"===typeof t&&(t=e.passes[t]),t&&t.count>1&&t.opacity&&(e.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&e.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>g.precisionThreshold||t.scale[1]*t.viewport.height>g.precisionThreshold||"rect"===t.join||!t.join&&(t.thickness<=2||t.count>=g.maxPoints)?e.shaders.rect(t):e.shaders.miter(t)))})),this},g.prototype.update=function(e){var t=this;if(e){null!=e.length?"number"===typeof e[0]&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);var r=this.regl,o=this.gl;if(e.forEach((function(e,f){var p=t.passes[f];if(void 0!==e)if(null!==e){if("number"===typeof e[0]&&(e={positions:e}),e=s(e,{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||(t.passes[f]=p={id:f,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:r.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:r.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},e=a({},g.defaults,e)),null!=e.thickness&&(p.thickness=parseFloat(e.thickness)),null!=e.opacity&&(p.opacity=parseFloat(e.opacity)),null!=e.miterLimit&&(p.miterLimit=parseFloat(e.miterLimit)),null!=e.overlay&&(p.overlay=!!e.overlay,f=R}));(O=O.slice(0,z)).push(R)}for(var F=function(e){var t=T.slice(2*D,2*O[e]).concat(R?T.slice(2*R):[]),r=(p.hole||[]).map((function(t){return t-R+(O[e]-D)})),n=u(t,r);n=n.map((function(t){return t+D+(t+De.length)&&(t=e.length);for(var r=0,n=new Array(t);r 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"]),u.vert=d(["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"]),m&&(u.frag=u.frag.replace("smoothstep","smoothStep"),l.frag=l.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(u)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;nn)?t.tree=c(e,{bounds:f}):n&&n.length&&(t.tree=n),t.tree){var d={primitive:"points",usage:"static",data:t.tree,type:"uint32"};t.elements?t.elements(d):t.elements=o.elements(d)}var h=g.float32(e);return i({data:h,usage:"dynamic"}),a({data:g.fract32(e,h),usage:"dynamic"}),s({data:new Uint8Array(u),type:"uint8",usage:"stream"}),e}},{marker:function(t,r,n){var i=r.activation;if(i.forEach((function(e){return e&&e.destroy&&e.destroy()})),i.length=0,t&&"number"!==typeof t[0]){for(var a=[],s=0,l=Math.min(t.length,r.count);s=0)return a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)t=e;else{t=new Uint8Array(e.length);for(var o=0,s=e.length;o4*n&&(this.tooManyColors=!0),this.updatePalette(r),1===i.length?i[0]:i},b.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(.25*e.length/t);if(n>1)for(var i=.25*(e=e.slice()).length%t;i2?(s[0],s[2],n=s[1],i=s[3]):s.length?(n=s[0],i=s[1]):(s.x,n=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,n,o,i]}function h(e){if("number"===typeof e)return[e,e,e,e];if(2===e.length)return[e[0],e[1],e[0],e[1]];var t=l(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}e.exports=c,c.prototype.render=function(){for(var e,t=this,r=[],n=arguments.length;n--;)r[n]=arguments[n];return r.length&&(e=this).update.apply(e,r),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){t.draw(),t.dirty=!0,t.planned=null}))):(this.draw(),this.dirty=!0,o((function(){t.dirty=!1}))),this)},c.prototype.update=function(){for(var e,t=[],r=arguments.length;r--;)t[r]=arguments[r];if(t.length){for(var n=0;nT))&&(s.lower||!(k>>=t))<<3,(t|=r=(15<(e>>>=r))<<2)|(r=(3<(e>>>=r))<<1)|e>>>r>>1}function h(){function e(e){e:{for(var t=16;268435456>=t;t*=16)if(e<=t){e=t;break e}e=0}return 0<(t=r[d(e)>>2]).length?t.pop():new ArrayBuffer(e)}function t(e){r[d(e.byteLength)>>2].push(e)}var r=f(8,(function(){return[]}));return{alloc:e,free:t,allocType:function(t,r){var n=null;switch(t){case 5120:n=new Int8Array(e(r),0,r);break;case 5121:n=new Uint8Array(e(r),0,r);break;case 5122:n=new Int16Array(e(2*r),0,r);break;case 5123:n=new Uint16Array(e(2*r),0,r);break;case 5124:n=new Int32Array(e(4*r),0,r);break;case 5125:n=new Uint32Array(e(4*r),0,r);break;case 5126:n=new Float32Array(e(4*r),0,r);break;default:return null}return n.length!==r?n.subarray(0,r):n},freeType:function(e){t(e.buffer)}}}function p(e){return!!e&&"object"===typeof e&&Array.isArray(e.shape)&&Array.isArray(e.stride)&&"number"===typeof e.offset&&e.shape.length===e.stride.length&&(Array.isArray(e.data)||oe(e.data))}function v(e,t,r,n,i,a){for(var o=0;o(i=s)&&(i=n.buffer.byteLength,5123===c?i>>=1:5125===c&&(i>>=2)),n.vertCount=i,i=o,0>o&&(i=4,1===(o=n.buffer.dimension)&&(i=0),2===o&&(i=1),3===o&&(i=4)),n.primType=i}function o(e){n.elementsCount--,delete s[e.id],e.buffer.destroy(),e.buffer=null}var s={},l=0,u={uint8:5121,uint16:5123};t.oes_element_index_uint&&(u.uint32=5125),i.prototype.bind=function(){this.buffer.bind()};var c=[];return{create:function(e,t){function s(e){if(e)if("number"===typeof e)l(e),c.primType=4,c.vertCount=0|e,c.type=5121;else{var t=null,r=35044,n=-1,i=-1,o=0,f=0;Array.isArray(e)||oe(e)||p(e)?t=e:("data"in e&&(t=e.data),"usage"in e&&(r=fe[e.usage]),"primitive"in e&&(n=ve[e.primitive]),"count"in e&&(i=0|e.count),"type"in e&&(f=u[e.type]),"length"in e?o=0|e.length:(o=i,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),a(c,t,r,n,i,o,f)}else l(),c.primType=4,c.vertCount=0,c.type=5121;return s}var l=r.create(null,34963,!0),c=new i(l._buffer);return n.elementsCount++,s(e),s._reglType="elements",s._elements=c,s.subdata=function(e,t){return l.subdata(e,t),s},s.destroy=function(){o(c)},s},createStream:function(e){var t=c.pop();return t||(t=new i(r.create(null,34963,!0,!1)._buffer)),a(t,e,35040,-1,-1,0,0),t},destroyStream:function(e){c.push(e)},getElements:function(e){return"function"===typeof e&&e._elements instanceof i?e._elements:null},clear:function(){se(s).forEach(o)}}}function w(e){for(var t=ie.allocType(5123,e.length),r=0;r>>31<<15,i=(a<<1>>>24)-127,a=a>>13&1023;t[r]=-24>i?n:-14>i?n+(a+1024>>-14-i):15>=i,r.height>>=i,d(r,n[i]),e.mipmask|=1<t;++t)e.images[t]=null;return e}function T(e){for(var t=e.images,r=0;rt){for(var r=0;r=--this.refCount&&F(this)}}),o.profile&&(a.getTotalTextureSize=function(){var e=0;return Object.keys(ae).forEach((function(t){e+=ae[t].stats.size})),e}),{create2D:function(t,r){function n(e,t){var r=i.texInfo;P.call(r);var a=_();return"number"===typeof e?y(a,0|e,"number"===typeof t?0|t:0|e):e?(O(r,e),x(a,e)):y(a,1,1),r.genMipmaps&&(a.mipmask=(a.width<<1)-1),i.mipmask=a.mipmask,l(i,a),i.internalformat=a.internalformat,n.width=a.width,n.height=a.height,R(i),b(a,3553),I(r,3553),z(),T(a),o.profile&&(i.stats.size=L(i.internalformat,i.type,a.width,a.height,r.genMipmaps,!1)),n.format=Z[i.internalformat],n.type=X[i.type],n.mag=K[r.magFilter],n.min=$[r.minFilter],n.wrapS=J[r.wrapS],n.wrapT=J[r.wrapT],n}var i=new D(3553);return ae[i.id]=i,a.textureCount++,n(t,r),n.subimage=function(e,t,r,a){t|=0,r|=0,a|=0;var o=v();return l(o,i),o.width=0,o.height=0,d(o,e),o.width=o.width||(i.width>>a)-t,o.height=o.height||(i.height>>a)-r,R(i),h(o,3553,t,r,a),z(),m(o),n},n.resize=function(t,r){var a=0|t,s=0|r||a;if(a===i.width&&s===i.height)return n;n.width=i.width=a,n.height=i.height=s,R(i);for(var l=0;i.mipmask>>l;++l){var u=a>>l,c=s>>l;if(!u||!c)break;e.texImage2D(3553,l,i.format,u,c,0,i.format,i.type,null)}return z(),o.profile&&(i.stats.size=L(i.internalformat,i.type,a,s,!1,!1)),n},n._reglType="texture2d",n._texture=i,o.profile&&(n.stats=i.stats),n.destroy=function(){i.decRef()},n},createCube:function(t,r,n,i,s,c){function f(e,t,r,n,i,a){var s,c=p.texInfo;for(P.call(c),s=0;6>s;++s)g[s]=_();if("number"!==typeof e&&e){if("object"===typeof e)if(t)x(g[0],e),x(g[1],t),x(g[2],r),x(g[3],n),x(g[4],i),x(g[5],a);else if(O(c,e),u(p,e),"faces"in e)for(e=e.faces,s=0;6>s;++s)l(g[s],p),x(g[s],e[s]);else for(s=0;6>s;++s)x(g[s],e)}else for(e=0|e||1,s=0;6>s;++s)y(g[s],e,e);for(l(p,g[0]),p.mipmask=c.genMipmaps?(g[0].width<<1)-1:g[0].mipmask,p.internalformat=g[0].internalformat,f.width=g[0].width,f.height=g[0].height,R(p),s=0;6>s;++s)b(g[s],34069+s);for(I(c,34067),z(),o.profile&&(p.stats.size=L(p.internalformat,p.type,f.width,f.height,c.genMipmaps,!0)),f.format=Z[p.internalformat],f.type=X[p.type],f.mag=K[c.magFilter],f.min=$[c.minFilter],f.wrapS=J[c.wrapS],f.wrapT=J[c.wrapT],s=0;6>s;++s)T(g[s]);return f}var p=new D(34067);ae[p.id]=p,a.cubeCount++;var g=Array(6);return f(t,r,n,i,s,c),f.subimage=function(e,t,r,n,i){r|=0,n|=0,i|=0;var a=v();return l(a,p),a.width=0,a.height=0,d(a,t),a.width=a.width||(p.width>>i)-r,a.height=a.height||(p.height>>i)-n,R(p),h(a,34069+e,r,n,i),z(),m(a),f},f.resize=function(t){if((t|=0)!==p.width){f.width=p.width=t,f.height=p.height=t,R(p);for(var r=0;6>r;++r)for(var n=0;p.mipmask>>n;++n)e.texImage2D(34069+r,n,p.format,t>>n,t>>n,0,p.format,p.type,null);return z(),o.profile&&(p.stats.size=L(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 t=0;tr;++r)if(0!==(t.mipmask&1<>r,t.height>>r,0,t.internalformat,t.type,null);else for(var n=0;6>n;++n)e.texImage2D(34069+n,r,t.internalformat,t.width>>r,t.height>>r,0,t.internalformat,t.type,null);I(t.texInfo,t.target)}))},refresh:function(){for(var t=0;ti;++i){for(u=0;ue;++e)r[e].resize(n);return t.width=t.height=n,t},_reglType:"framebufferCube",destroy:function(){r.forEach((function(e){e.destroy()}))}})},clear:function(){se(T).forEach(m)},restore:function(){x.cur=null,x.next=null,x.dirty=!0,se(T).forEach((function(t){t.framebuffer=e.createFramebuffer(),g(t)}))}})}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(e,t,r,n,i,a,o){function s(e){if(e!==g.currentVAO){var r=t.oes_vertex_array_object;e?r.bindVertexArrayOES(e.vao):r.bindVertexArrayOES(null),g.currentVAO=e}}function l(r){if(r!==g.currentVAO){if(r)r.bindAttrs();else{for(var n=t.angle_instanced_arrays,i=0;i=f.byteLength?l.subdata(f):(l.destroy(),r.buffers[s]=null)),r.buffers[s]||(l=r.buffers[s]=i.create(u,34962,!1,!0)),c.buffer=i.getBuffer(l),c.size=0|c.buffer.dimension,c.normalized=!1,c.type=c.buffer.dtype,c.offset=0,c.stride=0,c.divisor=0,c.state=1,e[s]=1):i.getBuffer(u)?(c.buffer=i.getBuffer(u),c.size=0|c.buffer.dimension,c.normalized=!1,c.type=c.buffer.dtype,c.offset=0,c.stride=0,c.divisor=0,c.state=1):i.getBuffer(u.buffer)?(c.buffer=i.getBuffer(u.buffer),c.size=0|(+u.size||c.buffer.dimension),c.normalized=!!u.normalized||!1,c.type="type"in u?ce[u.type]:c.buffer.dtype,c.offset=0|(u.offset||0),c.stride=0|(u.stride||0),c.divisor=0|(u.divisor||0),c.state=1):"x"in u&&(c.x=+u.x||0,c.y=+u.y||0,c.z=+u.z||0,c.w=+u.w||0,c.state=2)}for(l=0;le&&(e=t.stats.uniformsCount)})),e},r.getMaxAttributesCount=function(){var e=0;return d.forEach((function(t){t.stats.attributesCount>e&&(e=t.stats.attributesCount)})),e}),{clear:function(){var t=e.deleteShader.bind(e);se(u).forEach(t),u={},se(c).forEach(t),c={},d.forEach((function(t){e.deleteProgram(t.program)})),d.length=0,f={},r.shaderCount=0},program:function(t,n,i,a){var o=f[n];o||(o=f[n]={});var h=o[t];if(h&&(h.refCount++,!a))return h;var p=new s(n,t);return r.shaderCount++,l(p,i,a),h||(o[t]=p),d.push(p),Q(p,{destroy:function(){if(p.refCount--,0>=p.refCount){e.deleteProgram(p.program);var t=d.indexOf(p);d.splice(t,1),r.shaderCount--}0>=o[p.vertId].refCount&&(e.deleteShader(c[p.vertId]),delete c[p.vertId],delete f[p.fragId][p.vertId]),Object.keys(f[p.fragId]).length||(e.deleteShader(u[p.fragId]),delete u[p.fragId],delete f[p.fragId])}})},restore:function(){u={},c={};for(var e=0;e>2),r=0;r>5]|=(255&e.charCodeAt(r/8))<<24-r%32;var n,i,a,o,s,l,u,c,f,d,h,p=8*e.length;for(e=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],r=Array(64),t[p>>5]|=128<<24-p%32,t[15+(p+64>>9<<4)]=p,c=0;cf;f++){var v;16>f?r[f]=t[f+c]:(d=f,h=U(h=j(h=r[f-2],17)^j(h,19)^h>>>10,r[f-7]),v=j(v=r[f-15],7)^j(v,18)^v>>>3,r[d]=U(U(h,v),r[f-16])),d=U(U(U(U(u,d=j(d=o,6)^j(d,11)^j(d,25)),o&s^~o&l),De[f]),r[f]),h=U(u=j(u=p,2)^j(u,13)^j(u,22),p&n^p&i^n&i),u=l,l=s,s=o,o=U(a,d),a=i,i=n,n=p,p=U(d,h)}e[0]=U(p,e[0]),e[1]=U(n,e[1]),e[2]=U(i,e[2]),e[3]=U(a,e[3]),e[4]=U(o,e[4]),e[5]=U(s,e[5]),e[6]=U(l,e[6]),e[7]=U(u,e[7])}for(t="",r=0;r<32*e.length;r+=8)t+=String.fromCharCode(e[r>>5]>>>24-r%32&255);return t}function N(e){for(var t,r="",n=0;n>>4&15)+"0123456789abcdef".charAt(15&t);return r}function B(e){for(var t,r,n="",i=-1;++i=t&&56320<=r&&57343>=r&&(t=65536+((1023&t)<<10)+(1023&r),i++),127>=t?n+=String.fromCharCode(t):2047>=t?n+=String.fromCharCode(192|t>>>6&31,128|63&t):65535>=t?n+=String.fromCharCode(224|t>>>12&15,128|t>>>6&63,128|63&t):2097151>=t&&(n+=String.fromCharCode(240|t>>>18&7,128|t>>>12&63,128|t>>>6&63,128|63&t));return n}function j(e,t){return e>>>t|e<<32-t}function U(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function V(e){return Array.prototype.slice.call(e)}function H(e){return V(e).join("")}function q(e){function t(){var e=[],t=[];return Q((function(){e.push.apply(e,V(arguments))}),{def:function(){var r="v"+i++;return t.push(r),0"+t+"?"+i+".constant["+t+"]:0;"})).join(""),"}}else{","if(",s,"(",i,".buffer)){",c,"=",a,".createStream(",34962,",",i,".buffer);","}else{",c,"=",a,".getBuffer(",i,".buffer);","}",f,'="type" in ',i,"?",o.glTypes,"[",i,".type]:",c,".dtype;",l.normalized,"=!!",i,".normalized;"),n("size"),n("offset"),n("stride"),n("divisor"),r("}}"),r.exit("if(",l.isStream,"){",a,".destroyStream(",c,");","}"),l}))})),o}function P(e){var t=e.static,r=e.dynamic,n={};return Object.keys(t).forEach((function(e){var r=t[e];n[e]=X((function(e,t){return"number"===typeof r||"boolean"===typeof r?""+r:e.link(r)}))})),Object.keys(r).forEach((function(e){var t=r[e];n[e]=K(t,(function(e,r){return e.invoke(r,t)}))})),n}function O(e,t,n,i,a){function o(e){var t=l[e];t&&(f[e]=t)}var s=M(e,t),l=T(e,h=w(e,a),a),c=S(e,a),f=E(e,a),d=A(e,a,s);o("viewport"),o(g("scissor.box"));var h,p=0>1)",s],");")}function t(){r(l,".drawArraysInstancedANGLE(",[p,v,m,s],");")}h&&"null"!==h?y?e():(r("if(",h,"){"),e(),r("}else{"),t(),r("}")):t()}function o(){function e(){r(c+".drawElements("+[p,m,g,v+"<<(("+g+"-5121)>>1)"]+");")}function t(){r(c+".drawArrays("+[p,v,m]+");")}h&&"null"!==h?y?e():(r("if(",h,"){"),e(),r("}else{"),t(),r("}")):t()}var s,l,u=e.shared,c=u.gl,f=u.draw,d=n.draw,h=function(){var i=d.elements,a=t;return i?((i.contextDep&&n.contextDynamic||i.propDep)&&(a=r),i=i.append(e,a),d.elementsActive&&a("if("+i+")"+c+".bindBuffer(34963,"+i+".buffer.buffer);")):(i=a.def(),a(i,"=",f,".","elements",";","if(",i,"){",c,".bindBuffer(",34963,",",i,".buffer.buffer);}","else if(",u.vao,".currentVAO){",i,"=",e.shared.elements+".getElements("+u.vao,".currentVAO.elements);",fe?"":"if("+i+")"+c+".bindBuffer(34963,"+i+".buffer.buffer);","}")),i}(),p=i("primitive"),v=i("offset"),m=function(){var i=d.count,a=t;return i?((i.contextDep&&n.contextDynamic||i.propDep)&&(a=r),i=i.append(e,a)):i=a.def(f,".","count"),i}();if("number"===typeof m){if(0===m)return}else r("if(",m,"){"),r.exit("}");le&&(s=i("instances"),l=e.instancing);var g=h+".type",y=d.elements&&Z(d.elements)&&!d.vaoActive;le&&("number"!==typeof s||0<=s)?"string"===typeof s?(r("if(",s,">0){"),a(),r("}else if(",s,"<0){"),o(),r("}")):a():o()}function V(e,t,r,n,i){return i=(t=b()).proc("body",i),le&&(t.instancing=i.def(t.shared.extensions,".angle_instanced_arrays")),e(t,i,r,n),t.compile().body}function H(e,t,r,n){F(e,t),r.useVAO?r.drawVAO?t(e.shared.vao,".setVAO(",r.drawVAO.append(e,t),");"):t(e.shared.vao,".setVAO(",e.shared.vao,".targetVAO);"):(t(e.shared.vao,".setVAO(null);"),B(e,t,r,n.attributes,(function(){return!0}))),j(e,t,r,n.uniforms,(function(){return!0}),!1),U(e,t,t,r)}function $(e,t){var r=e.proc("draw",1);F(e,r),I(e,r,t.context),D(e,r,t.framebuffer),R(e,r,t),z(e,r,t.state),N(e,r,t,!1,!0);var n=t.shader.progVar.append(e,r);if(r(e.shared.gl,".useProgram(",n,".program);"),t.shader.program)H(e,r,t,t.shader.program);else{r(e.shared.vao,".setVAO(null);");var i=e.global.def("{}"),a=r.def(n,".id"),o=r.def(i,"[",a,"]");r(e.cond(o).then(o,".call(this,a0);").else(o,"=",i,"[",a,"]=",e.link((function(r){return V(H,e,t,r,1)})),"(",n,");",o,".call(this,a0);"))}0=--this.refCount&&o(this)},i.profile&&(n.getTotalRenderbufferSize=function(){var e=0;return Object.keys(c).forEach((function(t){e+=c[t].stats.size})),e}),{create:function(t,r){function o(t,r){var n=0,a=0,c=32854;if("object"===typeof t&&t?("shape"in t?(n=0|(a=t.shape)[0],a=0|a[1]):("radius"in t&&(n=a=0|t.radius),"width"in t&&(n=0|t.width),"height"in t&&(a=0|t.height)),"format"in t&&(c=s[t.format])):"number"===typeof t?(n=0|t,a="number"===typeof r?0|r:n):t||(n=a=1),n!==u.width||a!==u.height||c!==u.format)return o.width=u.width=n,o.height=u.height=a,u.format=c,e.bindRenderbuffer(36161,u.renderbuffer),e.renderbufferStorage(36161,c,n,a),i.profile&&(u.stats.size=Le[u.format]*u.width*u.height),o.format=l[u.format],o}var u=new a(e.createRenderbuffer());return c[u.id]=u,n.renderbufferCount++,o(t,r),o.resize=function(t,r){var n=0|t,a=0|r||n;return n===u.width&&a===u.height||(o.width=u.width=n,o.height=u.height=a,e.bindRenderbuffer(36161,u.renderbuffer),e.renderbufferStorage(36161,u.format,n,a),i.profile&&(u.stats.size=Le[u.format]*u.width*u.height)),o},o._reglType="renderbuffer",o._renderbuffer=u,i.profile&&(o.stats=u.stats),o.destroy=function(){u.decRef()},o},clear:function(){se(c).forEach(o)},restore:function(){se(c).forEach((function(t){t.renderbuffer=e.createRenderbuffer(),e.bindRenderbuffer(36161,t.renderbuffer),e.renderbufferStorage(36161,t.format,t.width,t.height)})),e.bindRenderbuffer(36161,null)}}},Oe=[];Oe[6408]=4,Oe[6407]=3;var Ie=[];Ie[5121]=1,Ie[5126]=4,Ie[36193]=2;var De=[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],Re=["x","y","z","w"],ze="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),Fe={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},Ne={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},Be={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},je={cw:2304,ccw:2305},Ue=new Y(!1,!1,!1,(function(){})),Ve=function(e,t){function r(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function n(e,t,n){var i=o.pop()||new r;i.startQueryIndex=e,i.endQueryIndex=t,i.sum=0,i.stats=n,s.push(i)}if(!t.ext_disjoint_timer_query)return null;var i=[],a=[],o=[],s=[],l=[],u=[];return{beginQuery:function(e){var r=i.pop()||t.ext_disjoint_timer_query.createQueryEXT();t.ext_disjoint_timer_query.beginQueryEXT(35007,r),a.push(r),n(a.length-1,a.length,e)},endQuery:function(){t.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:n,update:function(){var e,r;if(0!==(e=a.length)){u.length=Math.max(u.length,e+1),l.length=Math.max(l.length,e+1),l[0]=0;var n=u[0]=0;for(r=e=0;r=G.length&&n()}var r=J(G,e);G[r]=t}}}function d(){var e=q.viewport,t=q.scissor_box;e[0]=e[1]=t[0]=t[1]=0,C.viewportWidth=C.framebufferWidth=C.drawingBufferWidth=e[2]=t[2]=m.drawingBufferWidth,C.viewportHeight=C.framebufferHeight=C.drawingBufferHeight=e[3]=t[3]=m.drawingBufferHeight}function h(){C.tick+=1,C.time=v(),d(),H.procs.poll()}function p(){j.refresh(),d(),H.procs.refresh(),M&&M.update()}function v(){return(ne()-A)/1e3}if(!(e=u(e)))return null;var m=e.gl,g=m.getContextAttributes();m.isContextLost();var y=c(m,e);if(!y)return null;var x=i(),w={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},k=e.cachedCode||{},T=y.extensions,M=Ve(m,T),A=ne(),S=m.drawingBufferWidth,E=m.drawingBufferHeight,C={tick:0,time:0,viewportWidth:S,viewportHeight:E,framebufferWidth:S,framebufferHeight:E,drawingBufferWidth:S,drawingBufferHeight:E,pixelRatio:e.pixelRatio},L=(S={elements:null,primitive:4,count:-1,offset:0,instances:-1},ae(m,T)),I=b(m,w,e,(function(e){return N.destroyBuffer(e)})),F=_(m,T,I,w),N=D(m,T,L,w,I,F,S),B=R(m,x,w,e),j=P(m,T,L,(function(){H.procs.poll()}),C,w,e),U=Pe(m,T,L,w,e),V=O(m,T,L,j,U,w),H=$(m,x,T,L,I,F,j,V,{},N,B,S,C,M,k,e),q=(x=z(m,V,H.procs.poll,C,g,T,L),H.next),W=m.canvas,G=[],Y=[],Z=[],X=[e.onDestroy],K=null;W&&(W.addEventListener("webglcontextlost",a,!1),W.addEventListener("webglcontextrestored",o,!1));var ee=V.setFBO=s({framebuffer:te.define.call(null,1,"framebuffer")});return p(),g=Q(s,{clear:function(e){if("framebuffer"in e)if(e.framebuffer&&"framebufferCube"===e.framebuffer_reglType)for(var t=0;6>t;++t)ee(Q({framebuffer:e.framebuffer.faces[t]},e),l);else ee(e,l);else l(null,e)},prop:te.define.bind(null,1),context:te.define.bind(null,2),this:te.define.bind(null,3),draw:s({}),buffer:function(e){return I.create(e,34962,!1,!1)},elements:function(e){return F.create(e,!1)},texture:j.create2D,cube:j.createCube,renderbuffer:U.create,framebuffer:V.create,framebufferCube:V.createCube,vao:N.createVAO,attributes:g,frame:f,on:function(e,t){var r;switch(e){case"frame":return f(t);case"lost":r=Y;break;case"restore":r=Z;break;case"destroy":r=X}return r.push(t),{cancel:function(){for(var e=0;e2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,a,o,s;if("string"===typeof t&&(a="not ",t.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var l=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s='The "'.concat(e,'" ').concat(l," ").concat(i," ").concat(n(t,"type"))}return s+=". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},37865:function(e,t,r){"use strict";var n=r(90386),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=c;var a=r(40410),o=r(37493);r(42018)(c,a);for(var s=i(o.prototype),l=0;l0)if("string"===typeof t||s.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),n)s.endEmitted?w(e,new _):S(e,s,t,!0);else if(s.ended)w(e,new x);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(t=s.decoder.write(t),s.objectMode||0!==t.length?S(e,s,t,!1):O(e,s)):S(e,s,t,!1)}else n||(s.reading=!1,O(e,s));return!s.ended&&(s.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=E?e=E:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function L(e){var t=e._readableState;a("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(a("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(P,e))}function P(e){var t=e._readableState;a("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,F(e)}function O(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function R(e){a("readable nexttick read 0"),e.read(0)}function z(e,t){a("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),F(e),t.flowing&&!t.reading&&e.read(0)}function F(e){var t=e._readableState;for(a("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function B(e){var t=e._readableState;a("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(j,t,e))}function j(e,t){if(a("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function U(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return a("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):L(this),null;if(0===(e=C(e,t))&&t.ended)return 0===t.length&&B(this),null;var n,i=t.needReadable;return a("need readable",i),(0===t.length||t.length-e0?N(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&B(this)),null!==n&&this.emit("data",n),n},M.prototype._read=function(e){w(this,new b("_read()"))},M.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,a("pipe count=%d opts=%j",n.pipesCount,t);var s=t&&!1===t.end||e===i.stdout||e===i.stderr?m:u;function l(t,i){a("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,a("cleanup"),e.removeListener("close",p),e.removeListener("finish",v),e.removeListener("drain",c),e.removeListener("error",h),e.removeListener("unpipe",l),r.removeListener("end",u),r.removeListener("end",m),r.removeListener("data",d),f=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||c())}function u(){a("onend"),e.end()}n.endEmitted?i.nextTick(s):r.once("end",s),e.on("unpipe",l);var c=function(e){return function(){var t=e._readableState;a("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,F(e))}}(r);e.on("drain",c);var f=!1;function d(t){a("ondata");var i=e.write(t);a("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==U(n.pipes,e))&&!f&&(a("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(t){a("onerror",t),m(),e.removeListener("error",h),0===o(e,"error")&&w(e,t)}function p(){e.removeListener("finish",v),m()}function v(){a("onfinish"),e.removeListener("close",p),m()}function m(){a("unpipe"),r.unpipe(e)}return r.on("data",d),function(e,t,r){if("function"===typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",h),e.once("close",p),e.once("finish",v),e.emit("pipe",r),n.flowing||(a("pipe resume"),r.resume()),e},M.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,a("on readable",n.length,n.reading),n.length?L(this):n.reading||i.nextTick(R,this))),r},M.prototype.addListener=M.prototype.on,M.prototype.removeListener=function(e,t){var r=s.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(D,this),r},M.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(D,this),t},M.prototype.resume=function(){var e=this._readableState;return e.flowing||(a("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(z,e,t))}(this,e)),e.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(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(a("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){a("wrapped data"),r.decoder&&(i=r.decoder.write(i)),(!r.objectMode||null!==i&&void 0!==i)&&(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"===typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o-1))throw new _(e);return this._writableState.defaultEncoding=e,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(e,t,r){r(new v("_write()"))},M.prototype._writev=null,M.prototype.end=function(e,t,r){var n=this._writableState;return"function"===typeof e?(r=e,e=null,t=null):"function"===typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,P(e,t),r&&(t.finished?i.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}(this,n,r),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(e){this._writableState&&(this._writableState.destroyed=e)}}),M.prototype.destroy=f.destroy,M.prototype._undestroy=f.undestroy,M.prototype._destroy=function(e,t){t(e)}},68221:function(e,t,r){"use strict";var n,i=r(90386);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o=r(12726),s=Symbol("lastResolve"),l=Symbol("lastReject"),u=Symbol("error"),c=Symbol("ended"),f=Symbol("lastPromise"),d=Symbol("handlePromise"),h=Symbol("stream");function p(e,t){return{value:e,done:t}}function v(e){var t=e[s];if(null!==t){var r=e[h].read();null!==r&&(e[f]=null,e[s]=null,e[l]=null,t(p(r,!1)))}}function m(e){i.nextTick(v,e)}var g=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((a(n={get stream(){return this[h]},next:function(){var e=this,t=this[u];if(null!==t)return Promise.reject(t);if(this[c])return Promise.resolve(p(void 0,!0));if(this[h].destroyed)return new Promise((function(t,r){i.nextTick((function(){e[u]?r(e[u]):t(p(void 0,!0))}))}));var r,n=this[f];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[c]?r(p(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var a=this[h].read();if(null!==a)return Promise.resolve(p(a,!1));r=new Promise(this[d])}return this[f]=r,r}},Symbol.asyncIterator,(function(){return this})),a(n,"return",(function(){var e=this;return new Promise((function(t,r){e[h].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),g);e.exports=function(e){var t,r=Object.create(y,(a(t={},h,{value:e,writable:!0}),a(t,s,{value:null,writable:!0}),a(t,l,{value:null,writable:!0}),a(t,u,{value:null,writable:!0}),a(t,c,{value:e._readableState.endEmitted,writable:!0}),a(t,d,{value:function(e,t){var n=r[h].read();n?(r[f]=null,r[s]=null,r[l]=null,e(p(n,!1))):(r[s]=e,r[l]=t)},writable:!0}),t));return r[f]=null,o(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[l];return null!==t&&(r[f]=null,r[s]=null,r[l]=null,t(e)),void(r[u]=e)}var n=r[s];null!==n&&(r[f]=null,r[s]=null,r[l]=null,n(p(void 0,!0))),r[c]=!0})),e.on("readable",m.bind(null,r)),r}},31125:function(e,t,r){"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){for(var r=0;r0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return o.alloc(0);for(var t,r,n,i=o.allocUnsafe(e>>>0),a=this.head,s=0;a;)t=a.data,r=i,n=s,o.prototype.copy.call(t,r,n),s+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0===(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=o.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0===(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:l,value:function(e,t){return s(this,function(e){for(var t=1;t0,(function(e){c||(c=e),e&&d.forEach(l),a||(d.forEach(l),f(c))}))}));return t.reduce(u)}},56306:function(e,t,r){"use strict";var n=r(74322).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},71405:function(e,t,r){e.exports=r(15398).EventEmitter},68019:function(e,t,r){"use strict";var n=r(71665).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.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(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){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 e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!==typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=l,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=c,this.end=f,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function c(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.s=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},90715:function(e,t,r){var n=r(32791),i=r(41633)("stream-parser");e.exports=function(e){var t=e&&"function"==typeof e._transform,r=e&&"function"==typeof e._write;if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");i("extending Parser into stream"),e._bytes=c,e._skipBytes=f,t&&(e._passthrough=d),t?e._transform=p:e._write=h};var a=-1,o=0,s=1,l=2;function u(e){i("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=a,e._parserCallback=null,"function"==typeof e.push&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function c(e,t){n(!this._parserCallback,'there is already a "callback" set!'),n(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||u(this),i("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=o}function f(e,t){n(!this._parserCallback,'there is already a "callback" set!'),n(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||u(this),i("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=s}function d(e,t){n(!this._parserCallback,'There is already a "callback" set!'),n(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||u(this),i("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=l}function h(e,t,r){this._parserInit||u(this),i("write(%o bytes)",e.length),"function"==typeof t&&(r=t),m(this,e,null,r)}function p(e,t,r){this._parserInit||u(this),i("transform(%o bytes)",e.length),"function"!=typeof t&&(t=this._parserOutput),m(this,e,t,r)}function v(e,t,r,n){if(e._parserBytesLeft-=t.length,i("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===o?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===l&&r(t),0!==e._parserBytesLeft)return n;var s=e._parserCallback;if(s&&e._parserState===o&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==o&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=a,e._parserBuffers.splice(0),s){var u=[];t&&u.push(t),r&&u.push(r);var c=s.length>u.length;c&&u.push(g(n));var f=s.apply(e,u);if(!c||n===f)return n}}var m=g((function e(t,r,n,i){return t._parserBytesLeft<=0?i(new Error("got data but not currently parsing anything")):r.length<=t._parserBytesLeft?function(){return v(t,r,n,i)}:function(){var a=r.slice(0,t._parserBytesLeft);return v(t,a,n,(function(o){return o?i(o):r.length>a.length?function(){return e(t,r.slice(a.length),n,i)}:void 0}))}}));function g(e){return function(){for(var t=e.apply(this,arguments);"function"==typeof t;)t=t();return t}}},41633:function(e,t,r){var n=r(90386);function i(){var e;try{e=t.storage.debug}catch(r){}return!e&&"undefined"!==typeof n&&"env"in n&&(e=n.env.DEBUG),e}(t=e.exports=r(74469)).log=function(){return"object"===typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},t.formatArgs=function(e){var r=this.useColors;if(e[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+e[0]+(r?"%c ":" ")+"+"+t.humanize(this.diff),r){var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var i=0,a=0;e[0].replace(/%[a-zA-Z%]/g,(function(e){"%%"!==e&&(i++,"%c"===e&&(a=i))})),e.splice(a,0,n)}},t.save=function(e){try{null==e?t.storage.removeItem("debug"):t.storage.debug=e}catch(r){}},t.load=i,t.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+)/))},t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}},t.enable(i())},74469:function(e,t,r){var n;function i(e){function r(){if(r.enabled){var e=r,i=+new Date,a=i-(n||i);e.diff=a,e.prev=n,e.curr=i,n=i;for(var o=new Array(arguments.length),s=0;s0)return function(e){if(!((e=String(e)).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(e);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*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(e);if("number"===u&&!1===isNaN(e))return s.long?o(l=e,i,"day")||o(l,n,"hour")||o(l,r,"minute")||o(l,t,"second")||l+" ms":function(e){return e>=i?Math.round(e/i)+"d":e>=n?Math.round(e/n)+"h":e>=r?Math.round(e/r)+"m":e>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},99011:function(e,t,r){"use strict";var n=r(88641);e.exports=function(e,t,r){if(null==e)throw Error("First argument should be a string");if(null==t)throw Error("Separator should be a string or a RegExp");r?("string"===typeof r||Array.isArray(r))&&(r={ignore:r}):r={},null==r.escape&&(r.escape=!0),null==r.ignore?r.ignore=["[]","()","{}","<>",'""',"''","``","\u201c\u201d","\xab\xbb"]:("string"===typeof r.ignore&&(r.ignore=[r.ignore]),r.ignore=r.ignore.map((function(e){return 1===e.length&&(e+=e),e})));var i=n.parse(e,{flat:!0,brackets:r.ignore}),a=i[0].split(t);if(r.escape){for(var o=[],s=0;s0;){t=u[u.length-1];var h=e[t];if(a[t]=0&&s[t].push(o[v])}a[t]=p}else{if(n[t]===r[t]){var m=[],g=[],y=0;for(p=l.length-1;p>=0;--p){var x=l[p];if(i[x]=!1,m.push(x),g.push(s[x]),y+=s[x].length,o[x]=f.length,x===t){l.length=p;break}}f.push(m);var b=new Array(y);for(p=0;p1&&(i=1),i<-1&&(i=-1),(e*n-t*r<0?-1:1)*Math.acos(i)};t.default=function(e){var t=e.px,r=e.py,l=e.cx,u=e.cy,c=e.rx,f=e.ry,d=e.xAxisRotation,h=void 0===d?0:d,p=e.largeArcFlag,v=void 0===p?0:p,m=e.sweepFlag,g=void 0===m?0:m,y=[];if(0===c||0===f)return[];var x=Math.sin(h*i/360),b=Math.cos(h*i/360),_=b*(t-l)/2+x*(r-u)/2,w=-x*(t-l)/2+b*(r-u)/2;if(0===_&&0===w)return[];c=Math.abs(c),f=Math.abs(f);var k=Math.pow(_,2)/Math.pow(c,2)+Math.pow(w,2)/Math.pow(f,2);k>1&&(c*=Math.sqrt(k),f*=Math.sqrt(k));var T=function(e,t,r,n,a,o,l,u,c,f,d,h){var p=Math.pow(a,2),v=Math.pow(o,2),m=Math.pow(d,2),g=Math.pow(h,2),y=p*v-p*g-v*m;y<0&&(y=0),y/=p*g+v*m;var x=(y=Math.sqrt(y)*(l===u?-1:1))*a/o*h,b=y*-o/a*d,_=f*x-c*b+(e+r)/2,w=c*x+f*b+(t+n)/2,k=(d-x)/a,T=(h-b)/o,M=(-d-x)/a,A=(-h-b)/o,S=s(1,0,k,T),E=s(k,T,M,A);return 0===u&&E>0&&(E-=i),1===u&&E<0&&(E+=i),[_,w,S,E]}(t,r,l,u,c,f,v,g,x,b,_,w),M=n(T,4),A=M[0],S=M[1],E=M[2],C=M[3],L=Math.abs(C)/(i/4);Math.abs(1-L)<1e-7&&(L=1);var P=Math.max(Math.ceil(L),1);C/=P;for(var O=0;Ot[2]&&(t[2]=u[c+0]),u[c+1]>t[3]&&(t[3]=u[c+1]);return t}},29988:function(e,t,r){"use strict";e.exports=function(e){for(var t,r=[],o=0,s=0,l=0,u=0,c=null,f=null,d=0,h=0,p=0,v=e.length;p4?(o=m[m.length-4],s=m[m.length-3]):(o=d,s=h),r.push(m)}return r};var n=r(7095);function i(e,t,r,n){return["C",e,t,r,n,r,n]}function a(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}},82019:function(e,t,r){"use strict";var n,i=r(1750),a=r(95616),o=r(31457),s=r(89546),l=r(44781),u=document.createElement("canvas"),c=u.getContext("2d");e.exports=function(e,t){if(!s(e))throw Error("Argument should be valid svg path string");var r,f;t||(t={}),t.shape?(r=t.shape[0],f=t.shape[1]):(r=u.width=t.w||t.width||200,f=u.height=t.h||t.height||200);var d=Math.min(r,f),h=t.stroke||0,p=t.viewbox||t.viewBox||i(e),v=[r/(p[2]-p[0]),f/(p[3]-p[1])],m=Math.min(v[0]||0,v[1]||0)/2;if(c.fillStyle="black",c.fillRect(0,0,r,f),c.fillStyle="white",h&&("number"!=typeof h&&(h=1),c.strokeStyle=h>0?"white":"black",c.lineWidth=Math.abs(h)),c.translate(.5*r,.5*f),c.scale(m,m),function(){if(null!=n)return n;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return n=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return n=r&&r.data&&255===r.data[3]}()){var g=new Path2D(e);c.fill(g),h&&c.stroke(g)}else{var y=a(e);o(c,y),c.fill(),h&&c.stroke()}return c.setTransform(1,0,0,1,0,0),l(c,{cutoff:null!=t.cutoff?t.cutoff:.5,radius:null!=t.radius?t.radius:.5*d})}},84267:function(e,t,r){var n;!function(i){var a=/^\s+/,o=/\s+$/,s=0,l=i.round,u=i.min,c=i.max,f=i.random;function d(e,t){if(t=t||{},(e=e||"")instanceof d)return e;if(!(this instanceof d))return new d(e,t);var r=function(e){var t,r,n,s={r:0,g:0,b:0},l=1,f=null,d=null,h=null,p=!1,v=!1;return"string"==typeof e&&(e=function(e){e=e.replace(a,"").replace(o,"").toLowerCase();var t,r=!1;if(L[e])e=L[e],r=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};return(t=j.rgb.exec(e))?{r:t[1],g:t[2],b:t[3]}:(t=j.rgba.exec(e))?{r:t[1],g:t[2],b:t[3],a:t[4]}:(t=j.hsl.exec(e))?{h:t[1],s:t[2],l:t[3]}:(t=j.hsla.exec(e))?{h:t[1],s:t[2],l:t[3],a:t[4]}:(t=j.hsv.exec(e))?{h:t[1],s:t[2],v:t[3]}:(t=j.hsva.exec(e))?{h:t[1],s:t[2],v:t[3],a:t[4]}:(t=j.hex8.exec(e))?{r:R(t[1]),g:R(t[2]),b:R(t[3]),a:B(t[4]),format:r?"name":"hex8"}:(t=j.hex6.exec(e))?{r:R(t[1]),g:R(t[2]),b:R(t[3]),format:r?"name":"hex"}:(t=j.hex4.exec(e))?{r:R(t[1]+""+t[1]),g:R(t[2]+""+t[2]),b:R(t[3]+""+t[3]),a:B(t[4]+""+t[4]),format:r?"name":"hex8"}:!!(t=j.hex3.exec(e))&&{r:R(t[1]+""+t[1]),g:R(t[2]+""+t[2]),b:R(t[3]+""+t[3]),format:r?"name":"hex"}}(e)),"object"==typeof e&&(U(e.r)&&U(e.g)&&U(e.b)?(t=e.r,r=e.g,n=e.b,s={r:255*I(t,255),g:255*I(r,255),b:255*I(n,255)},p=!0,v="%"===String(e.r).substr(-1)?"prgb":"rgb"):U(e.h)&&U(e.s)&&U(e.v)?(f=F(e.s),d=F(e.v),s=function(e,t,r){e=6*I(e,360),t=I(t,100),r=I(r,100);var n=i.floor(e),a=e-n,o=r*(1-t),s=r*(1-a*t),l=r*(1-(1-a)*t),u=n%6,c=[r,s,o,o,l,r][u],f=[l,r,r,s,o,o][u],d=[o,o,l,r,r,s][u];return{r:255*c,g:255*f,b:255*d}}(e.h,f,d),p=!0,v="hsv"):U(e.h)&&U(e.s)&&U(e.l)&&(f=F(e.s),h=F(e.l),s=function(e,t,r){var n,i,a;function o(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}if(e=I(e,360),t=I(t,100),r=I(r,100),0===t)n=i=a=r;else{var s=r<.5?r*(1+t):r+t-r*t,l=2*r-s;n=o(l,s,e+1/3),i=o(l,s,e),a=o(l,s,e-1/3)}return{r:255*n,g:255*i,b:255*a}}(e.h,f,h),p=!0,v="hsl"),e.hasOwnProperty("a")&&(l=e.a)),l=O(l),{ok:p,format:e.format||v,r:u(255,c(s.r,0)),g:u(255,c(s.g,0)),b:u(255,c(s.b,0)),a:l}}(e);this._originalInput=e,this._r=r.r,this._g=r.g,this._b=r.b,this._a=r.a,this._roundA=l(100*this._a)/100,this._format=t.format||r.format,this._gradientType=t.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=r.ok,this._tc_id=s++}function h(e,t,r){e=I(e,255),t=I(t,255),r=I(r,255);var n,i,a=c(e,t,r),o=u(e,t,r),s=(a+o)/2;if(a==o)n=i=0;else{var l=a-o;switch(i=s>.5?l/(2-a-o):l/(a+o),a){case e:n=(t-r)/l+(t>1)+720)%360;--t;)n.h=(n.h+i)%360,a.push(d(n));return a}function C(e,t){t=t||6;for(var r=d(e).toHsv(),n=r.h,i=r.s,a=r.v,o=[],s=1/t;t--;)o.push(d({h:n,s:i,v:a})),a=(a+s)%1;return o}d.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 e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,r,n=this.toRgb();return e=n.r/255,t=n.g/255,r=n.b/255,.2126*(e<=.03928?e/12.92:i.pow((e+.055)/1.055,2.4))+.7152*(t<=.03928?t/12.92:i.pow((t+.055)/1.055,2.4))+.0722*(r<=.03928?r/12.92:i.pow((r+.055)/1.055,2.4))},setAlpha:function(e){return this._a=O(e),this._roundA=l(100*this._a)/100,this},toHsv:function(){var e=p(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=p(this._r,this._g,this._b),t=l(360*e.h),r=l(100*e.s),n=l(100*e.v);return 1==this._a?"hsv("+t+", "+r+"%, "+n+"%)":"hsva("+t+", "+r+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var e=h(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=h(this._r,this._g,this._b),t=l(360*e.h),r=l(100*e.s),n=l(100*e.l);return 1==this._a?"hsl("+t+", "+r+"%, "+n+"%)":"hsla("+t+", "+r+"%, "+n+"%, "+this._roundA+")"},toHex:function(e){return v(this._r,this._g,this._b,e)},toHexString:function(e){return"#"+this.toHex(e)},toHex8:function(e){return function(e,t,r,n,i){var a=[z(l(e).toString(16)),z(l(t).toString(16)),z(l(r).toString(16)),z(N(n))];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,e)},toHex8String:function(e){return"#"+this.toHex8(e)},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)&&(P[v(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t="#"+m(this._r,this._g,this._b,this._a),r=t,n=this._gradientType?"GradientType = 1, ":"";if(e){var i=d(e);r="#"+m(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+t+",endColorstr="+r+")"},toString:function(e){var t=!!e;e=e||this._format;var r=!1,n=this._a<1&&this._a>=0;return t||!n||"hex"!==e&&"hex6"!==e&&"hex3"!==e&&"hex4"!==e&&"hex8"!==e&&"name"!==e?("rgb"===e&&(r=this.toRgbString()),"prgb"===e&&(r=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(r=this.toHexString()),"hex3"===e&&(r=this.toHexString(!0)),"hex4"===e&&(r=this.toHex8String(!0)),"hex8"===e&&(r=this.toHex8String()),"name"===e&&(r=this.toName()),"hsl"===e&&(r=this.toHslString()),"hsv"===e&&(r=this.toHsvString()),r||this.toHexString()):"name"===e&&0===this._a?this.toName():this.toRgbString()},clone:function(){return d(this.toString())},_applyModification:function(e,t){var r=e.apply(null,[this].concat([].slice.call(t)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(b,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(w,arguments)},desaturate:function(){return this._applyModification(g,arguments)},saturate:function(){return this._applyModification(y,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},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)}},d.fromRatio=function(e,t){if("object"==typeof e){var r={};for(var n in e)e.hasOwnProperty(n)&&(r[n]="a"===n?e[n]:F(e[n]));e=r}return d(e,t)},d.equals=function(e,t){return!(!e||!t)&&d(e).toRgbString()==d(t).toRgbString()},d.random=function(){return d.fromRatio({r:f(),g:f(),b:f()})},d.mix=function(e,t,r){r=0===r?0:r||50;var n=d(e).toRgb(),i=d(t).toRgb(),a=r/100;return d({r:(i.r-n.r)*a+n.r,g:(i.g-n.g)*a+n.g,b:(i.b-n.b)*a+n.b,a:(i.a-n.a)*a+n.a})},d.readability=function(e,t){var r=d(e),n=d(t);return(i.max(r.getLuminance(),n.getLuminance())+.05)/(i.min(r.getLuminance(),n.getLuminance())+.05)},d.isReadable=function(e,t,r){var n,i,a=d.readability(e,t);switch(i=!1,(n=function(e){var t,r;return t=((e=e||{level:"AA",size:"small"}).level||"AA").toUpperCase(),r=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA"),"small"!==r&&"large"!==r&&(r="small"),{level:t,size:r}}(r)).level+n.size){case"AAsmall":case"AAAlarge":i=a>=4.5;break;case"AAlarge":i=a>=3;break;case"AAAsmall":i=a>=7}return i},d.mostReadable=function(e,t,r){var n,i,a,o,s=null,l=0;i=(r=r||{}).includeFallbackColors,a=r.level,o=r.size;for(var u=0;ul&&(l=n,s=d(t[u]));return d.isReadable(e,s,{level:a,size:o})||!i?s:(r.includeFallbackColors=!1,d.mostReadable(e,["#fff","#000"],r))};var L=d.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"},P=d.hexNames=function(e){var t={};for(var r in e)e.hasOwnProperty(r)&&(t[e[r]]=r);return t}(L);function O(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function I(e,t){(function(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var r=function(e){return"string"===typeof e&&-1!=e.indexOf("%")}(e);return e=u(t,c(0,parseFloat(e))),r&&(e=parseInt(e*t,10)/100),i.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function D(e){return u(1,c(0,e))}function R(e){return parseInt(e,16)}function z(e){return 1==e.length?"0"+e:""+e}function F(e){return e<=1&&(e=100*e+"%"),e}function N(e){return i.round(255*parseFloat(e)).toString(16)}function B(e){return R(e)/255}var j=function(){var e="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",t="[\\s|\\(]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")\\s*\\)?",r="[\\s|\\(]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")\\s*\\)?";return{CSS_UNIT:new RegExp(e),rgb:new RegExp("rgb"+t),rgba:new RegExp("rgba"+r),hsl:new RegExp("hsl"+t),hsla:new RegExp("hsla"+r),hsv:new RegExp("hsv"+t),hsva:new RegExp("hsva"+r),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(e){return!!j.CSS_UNIT.exec(e)}e.exports?e.exports=d:void 0===(n=function(){return d}.call(t,r,t,e))||(e.exports=n)}(Math)},57060:function(e){"use strict";e.exports=r,e.exports.float32=e.exports.float=r,e.exports.fract32=e.exports.fract=function(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=r(e));for(var n=0,i=t.length;n":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace(i,(function(e){switch(e){case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}})))}},47403:function(e,t,r){"use strict";var n=r(24582),i={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!n(e)&&hasOwnProperty.call(i,typeof e)}},82527:function(e,t,r){"use strict";var n=r(69190),i=r(84985);e.exports=function(e){return i(e)?e:n(e,"%v is not a plain function",arguments[1])}},84985:function(e,t,r){"use strict";var n=r(73116),i=/^\s*class[\s{/}]/,a=Function.prototype.toString;e.exports=function(e){return!!n(e)&&!i.test(a.call(e))}},24511:function(e,t,r){"use strict";var n=r(47403);e.exports=function(e){if(!n(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(t){return!1}}},9234:function(e,t,r){"use strict";var n=r(24582),i=r(47403),a=Object.prototype.toString;e.exports=function(e){if(!n(e))return null;if(i(e)){var t=e.toString;if("function"!==typeof t)return null;if(t===a)return null}try{return""+e}catch(r){return null}}},10424:function(e,t,r){"use strict";var n=r(69190),i=r(24582);e.exports=function(e){return i(e)?e:n(e,"Cannot use %v",arguments[1])}},24582:function(e){"use strict";e.exports=function(e){return void 0!==e&&null!==e}},58404:function(e,t,r){"use strict";var n=r(13547),i=r(12129),a=r(12856).Buffer;r.g.__TYPEDARRAY_POOL||(r.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,u=r.g.__TYPEDARRAY_POOL;u.UINT8C||(u.UINT8C=i([32,0])),u.BIGUINT64||(u.BIGUINT64=i([32,0])),u.BIGINT64||(u.BIGINT64=i([32,0])),u.BUFFER||(u.BUFFER=i([32,0]));var c=u.DATA,f=u.BUFFER;function d(e){if(e){var t=e.length||e.byteLength,r=n.log2(t);c[r].push(e)}}function h(e){e=n.nextPow2(e);var t=n.log2(e),r=c[t];return r.length>0?r.pop():new ArrayBuffer(e)}function p(e){return new Uint8Array(h(e),0,e)}function v(e){return new Uint16Array(h(2*e),0,e)}function m(e){return new Uint32Array(h(4*e),0,e)}function g(e){return new Int8Array(h(e),0,e)}function y(e){return new Int16Array(h(2*e),0,e)}function x(e){return new Int32Array(h(4*e),0,e)}function b(e){return new Float32Array(h(4*e),0,e)}function _(e){return new Float64Array(h(8*e),0,e)}function w(e){return o?new Uint8ClampedArray(h(e),0,e):p(e)}function k(e){return s?new BigUint64Array(h(8*e),0,e):null}function T(e){return l?new BigInt64Array(h(8*e),0,e):null}function M(e){return new DataView(h(e),0,e)}function A(e){e=n.nextPow2(e);var t=n.log2(e),r=f[t];return r.length>0?r.pop():new a(e)}t.free=function(e){if(a.isBuffer(e))f[n.log2(e.length)].push(e);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(e)&&(e=e.buffer),!e)return;var t=e.length||e.byteLength,r=0|n.log2(t);c[r].push(e)}},t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=function(e){d(e.buffer)},t.freeArrayBuffer=d,t.freeBuffer=function(e){f[n.log2(e.length)].push(e)},t.malloc=function(e,t){if(void 0===t||"arraybuffer"===t)return h(e);switch(t){case"uint8":return p(e);case"uint16":return v(e);case"uint32":return m(e);case"int8":return g(e);case"int16":return y(e);case"int32":return x(e);case"float":case"float32":return b(e);case"double":case"float64":return _(e);case"uint8_clamped":return w(e);case"bigint64":return T(e);case"biguint64":return k(e);case"buffer":return A(e);case"data":case"dataview":return M(e);default:return null}return null},t.mallocArrayBuffer=h,t.mallocUint8=p,t.mallocUint16=v,t.mallocUint32=m,t.mallocInt8=g,t.mallocInt16=y,t.mallocInt32=x,t.mallocFloat32=t.mallocFloat=b,t.mallocFloat64=t.mallocDouble=_,t.mallocUint8Clamped=w,t.mallocBigUint64=k,t.mallocBigInt64=T,t.mallocDataView=M,t.mallocBuffer=A,t.clearCache=function(){for(var e=0;e<32;++e)u.UINT8[e].length=0,u.UINT16[e].length=0,u.UINT32[e].length=0,u.INT8[e].length=0,u.INT16[e].length=0,u.INT32[e].length=0,u.FLOAT[e].length=0,u.DOUBLE[e].length=0,u.BIGUINT64[e].length=0,u.BIGINT64[e].length=0,u.UINT8C[e].length=0,c[e].length=0,f[e].length=0}},90448:function(e){var t=/[\'\"]/;e.exports=function(e){return e?(t.test(e.charAt(0))&&(e=e.substr(1)),t.test(e.charAt(e.length-1))&&(e=e.substr(0,e.length-1)),e):""}},93447:function(e){"use strict";e.exports=function(e,t,r){Array.isArray(r)||(r=[].slice.call(arguments,2));for(var n=0,i=r.length;n=i)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return e}})),s=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),m(r)?n.showHidden=r:r&&t._extend(n,r),b(n.showHidden)&&(n.showHidden=!1),b(n.depth)&&(n.depth=2),b(n.colors)&&(n.colors=!1),b(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=c),d(n,e,n.depth)}function c(e,t){var r=u.styles[t];return r?"\x1b["+u.colors[r][0]+"m"+e+"\x1b["+u.colors[r][1]+"m":e}function f(e,t){return e}function d(e,r,n){if(e.customInspect&&r&&M(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,e);return x(i)||(i=d(e,i,n)),i}var a=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(x(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}return y(t)?e.stylize(""+t,"number"):m(t)?e.stylize(""+t,"boolean"):g(t)?e.stylize("null","null"):void 0}(e,r);if(a)return a;var o=Object.keys(r),s=function(e){var t={};return e.forEach((function(e,r){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),T(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return h(r);if(0===o.length){if(M(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(_(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(k(r))return e.stylize(Date.prototype.toString.call(r),"date");if(T(r))return h(r)}var u,c="",f=!1,w=["{","}"];return v(r)&&(f=!0,w=["[","]"]),M(r)&&(c=" [Function"+(r.name?": "+r.name:"")+"]"),_(r)&&(c=" "+RegExp.prototype.toString.call(r)),k(r)&&(c=" "+Date.prototype.toUTCString.call(r)),T(r)&&(c=" "+h(r)),0!==o.length||f&&0!=r.length?n<0?_(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),u=f?function(e,t,r,n,i){for(var a=[],o=0,s=t.length;o60?r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}(u,c,w)):w[0]+c+w[1]}function h(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,r,n,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=l.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),C(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(s=g(r)?d(e,l.value,null):d(e,l.value,r-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map((function(e){return" "+e})).join("\n").slice(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),b(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=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function v(e){return Array.isArray(e)}function m(e){return"boolean"===typeof e}function g(e){return null===e}function y(e){return"number"===typeof e}function x(e){return"string"===typeof e}function b(e){return void 0===e}function _(e){return w(e)&&"[object RegExp]"===A(e)}function w(e){return"object"===typeof e&&null!==e}function k(e){return w(e)&&"[object Date]"===A(e)}function T(e){return w(e)&&("[object Error]"===A(e)||e instanceof Error)}function M(e){return"function"===typeof e}function A(e){return Object.prototype.toString.call(e)}function S(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(e){if(e=e.toUpperCase(),!o[e])if(s.test(e)){var r=n.pid;o[e]=function(){var n=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,n)}}else o[e]=function(){};return o[e]},t.inspect=u,u.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]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.types=r(4936),t.isArray=v,t.isBoolean=m,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=x,t.isSymbol=function(e){return"symbol"===typeof e},t.isUndefined=b,t.isRegExp=_,t.types.isRegExp=_,t.isObject=w,t.isDate=k,t.types.isDate=k,t.isError=T,t.types.isNativeError=T,t.isFunction=M,t.isPrimitive=function(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e},t.isBuffer=r(45920);var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",function(){var e=new Date,t=[S(e.getHours()),S(e.getMinutes()),S(e.getSeconds())].join(":");return[e.getDate(),E[e.getMonth()],t].join(" ")}(),t.format.apply(t,arguments))},t.inherits=r(42018),t._extend=function(e,t){if(!t||!w(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};var L="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function P(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}t.promisify=function(e){if("function"!==typeof e)throw new TypeError('The "original" argument must be of type Function');if(L&&e[L]){var t;if("function"!==typeof(t=e[L]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,L,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,r,n=new Promise((function(e,n){t=e,r=n})),i=[],a=0;a2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var i=this.intercalaryMonth(e);if(r&&t!==i||t<1||t>12)throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return i?!r&&t<=i?t-1:t:t-1},toChineseMonth:function(e,t){e.year&&(t=(e=e.year()).month());var r=this.intercalaryMonth(e);if(t<0||t>(r?12:11))throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return r?t>13;return t},isIntercalaryMonth:function(e,t){e.year&&(t=(e=e.year()).month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return 0!==this.intercalaryMonth(e)},weekOfYear:function(e,t,r){var i,o=this._validateYear(e,n.local.invalidyear),s=d[o-d[0]],l=s>>9&4095,u=s>>5&15,c=31&s;(i=a.newDate(l,u,c)).add(4-(i.dayOfWeek()||7),"d");var f=this.toJD(e,t,r)-i.toJD();return 1+Math.floor(f/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=f[e-f[0]];if(t>(r>>13?12:11))throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=r&1<<12-t?30:29;return i},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,s,r,n.local.invalidDate);e=this._validateYear(i.year()),t=i.month(),r=i.day();var o=this.isIntercalaryMonth(e,t),s=this.toChineseMonth(e,t),l=function(e,t,r,n,i){var a,o,s;if("object"===typeof e)o=e,a=t||{};else{var l;if(!("number"===typeof e&&e>=1888&&e<=2111))throw new Error("Lunar year outside range 1888-2111");if(!("number"===typeof t&&t>=1&&t<=12))throw new Error("Lunar month outside range 1 - 12");if(!("number"===typeof r&&r>=1&&r<=30))throw new Error("Lunar day outside range 1 - 30");"object"===typeof n?(l=!1,a=n):(l=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:l}}s=o.day-1;var u,c=f[o.year-f[0]],h=c>>13;u=h&&(o.month>h||o.isIntercalary)?o.month:o.month-1;for(var p=0;p>9&4095,(v>>5&15)-1,(31&v)+s);return a.year=m.getFullYear(),a.month=1+m.getMonth(),a.day=m.getDate(),a}(e,s,r,o);return a.toJD(l.year,l.month,l.day)},fromJD:function(e){var t=a.fromJD(e),r=function(e,t,r,n){var i,a;if("object"===typeof e)i=e,a=t||{};else{if(!("number"===typeof e&&e>=1888&&e<=2111))throw new Error("Solar year outside range 1888-2111");if(!("number"===typeof t&&t>=1&&t<=12))throw new Error("Solar month outside range 1 - 12");if(!("number"===typeof r&&r>=1&&r<=31))throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var o=d[i.year-d[0]],s=i.year<<9|i.month<<5|i.day;a.year=s>=o?i.year:i.year-1,o=d[a.year-d[0]];var l,u=new Date(o>>9&4095,(o>>5&15)-1,31&o),c=new Date(i.year,i.month-1,i.day);l=Math.round((c-u)/864e5);var h,p=f[a.year-f[0]];for(h=0;h<13;h++){var v=p&1<<12-h?30:29;if(l>13;return!m||h=2&&n<=6},extraInfo:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return{century:o[Math.floor((i.year()-1)/100)+1]||""}},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=i.year()+(i.year()<0?1:0),t=i.month(),(r=i.day())+(t>1?16:0)+(t>2?32*(t-2):0)+400*(e-1)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=400*(t-1),e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-32*(r-1)+1;return this.newDate(t<=0?t-1:t,r,n)}});var o={20:"Fruitbat",21:"Anchovy"};n.calendars.discworld=a},37715:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return(e=t.year()+(t.year()<0?1:0))%4===3||e%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return(e=i.year())<0&&e++,i.day()+30*(i.month()-1)+365*(e-1)+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-30*(n-1)+1;return this.newDate(r,n,i)}}),n.calendars.ethiopian=a},99384:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function o(e,t){return e-t*Math.floor(e/t)}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return o(7*(e=e<0?e+1:e)+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return e=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year(),this.toJD(-1===e?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,n.local.invalidMonth),12===t&&this.leapYear(e)||8===t&&5===o(this.daysInYear(e),10)?30:9===t&&3===o(this.daysInYear(e),10)?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return 6!==this.dayOfWeek(e,t,r)},extraInfo:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=e<=0?e+1:e,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+r+1;if(t<7){for(var s=7;s<=this.monthsInYear(e);s++)o+=this.daysInMonth(e,s);for(s=1;s=this.toJD(-1===t?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}}),n.calendars.hebrew=a},43805:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){return(11*this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year()+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return 5!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=i.year(),t=i.month(),e=e<=0?e+1:e,(r=i.day())+Math.ceil(29.5*(t-1))+354*(e-1)+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}}),n.calendars.islamic=a},88874:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return(e=t.year()<0?t.year()+1:t.year())%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=i.year(),t=i.month(),r=i.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5)+1524,r=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*r),i=Math.floor((t-n)/30.6001),a=i-Math.floor(i<14?1:13),o=r-Math.floor(a>2?4716:4715),s=t-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,a,s)}}),n.calendars.julian=a},83290:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function o(e,t){return e-t*Math.floor(e/t)}function s(e,t){return o(e-1,t)+1}a.prototype=new n.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(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),!1},formatYear:function(e){e=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year();var t=Math.floor(e/400);return e%=400,e+=e<0?400:0,t+"."+Math.floor(e/20)+"."+e%20},forYear:function(e){if((e=e.split(".")).length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=20*t+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,n.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,n.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){return this._validate(e,t,r,n.local.invalidDate).day()},weekDay:function(e,t,r){return this._validate(e,t,r,n.local.invalidDate),!0},extraInfo:function(e,t,r){var i=this._validate(e,t,r,n.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(e){var t=o(8+(e-=this.jdEpoch)+340,365);return[Math.floor(t/20)+1,o(t,20)]},_toTzolkin:function(e){return[s(20+(e-=this.jdEpoch),20),s(e+4,13)]},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return i.day()+20*i.month()+360*i.year()+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e%=360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}}),n.calendars.mayan=a},29108:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.baseCalendar;var o=n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear);return o.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidMonth);(e=i.year())<0&&e++;for(var a=i.day(),s=1;s=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}}),n.calendars.nanakshahi=a},55422:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){if(e=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year(),"undefined"===typeof this.NEPALI_CALENDAR_DATA[e])return this.daysPerYear;for(var t=0,r=this.minMonth;r<=12;r++)t+=this.NEPALI_CALENDAR_DATA[e][r];return t},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,n.local.invalidMonth),"undefined"===typeof this.NEPALI_CALENDAR_DATA[e]?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return 6!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=n.instance(),o=0,s=t,l=e;this._createMissingCalendarData(e);var u=e-(s>9||9===s&&r>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==t&&(o=r,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===t?(o+=r-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=a.daysInYear(u)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(u,1,1).add(o,"d").toJD()},fromJD:function(e){var t=n.instance().fromJD(e),r=t.year(),i=t.dayOfYear(),a=r+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 u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r0?474:473))%2820+474+38)%2816<682},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-(n.dayOfWeek()+1)%7,"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return 5!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=e-(e>=0?474:473),s=474+o(a,2820);return r+(t<=7?31*(t-1):30*(t-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(a/2820)+this.jdEpoch-1},fromJD:function(e){var t=(e=Math.floor(e)+.5)-this.toJD(475,1,1),r=Math.floor(t/1029983),n=o(t,1029983),i=2820;if(1029982!==n){var a=Math.floor(n/366),s=o(n,366);i=Math.floor((2134*a+2816*s+2815)/1028522)+a+1}var l=i+2820*r+474;l=l<=0?l-1:l;var u=e-this.toJD(l,1,1)+1,c=u<=186?Math.ceil(u/31):Math.ceil((u-6)/30),f=e-this.toJD(l,c,1)+1;return this.newDate(l,c,f)}}),n.calendars.persian=a,n.calendars.jalali=a},31320:function(e,t,r){var n=r(63489),i=r(56131),a=n.instance();function o(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}o.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(t.year()),a.leapYear(e)},weekOfYear:function(e,t,r){var i=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(i.year()),a.weekOfYear(e,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=this._t2gYear(i.year()),a.toJD(e,i.month(),i.day())},fromJD:function(e){var t=a.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}}),n.calendars.taiwan=o},51367:function(e,t,r){var n=r(63489),i=r(56131),a=n.instance();function o(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}o.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(t.year()),a.leapYear(e)},weekOfYear:function(e,t,r){var i=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(i.year()),a.weekOfYear(e,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=this._t2gYear(i.year()),a.toJD(e,i.month(),i.day())},fromJD:function(e){var t=a.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}}),n.calendars.thai=o},21457:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return 355===this.daysInYear(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,n.local.invalidMonth).toJD()-24e5+.5,i=0,a=0;ar)return o[i]-o[i-1];i++}return 30},weekDay:function(e,t,r){return 5!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate),a=12*(i.year()-1)+i.month()-15292;return i.day()+o[a-1]-1+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),s=a+1,l=i-12*a,u=t-o[r-1]+1;return this.newDate(s,l,u)},isValid:function(e,t,r){var i=n.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(i=(e=null!=e.year?e.year:e)>=1276&&e<=1500),i},_validate:function(e,t,r,i){var a=n.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}}),n.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(e,t,r){var n=r(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(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(u.local.invalidDate||u.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function o(e,t){return"000000".substring(0,t-(e=""+e).length)+e}function s(){this.shortYearCutoff="+10"}function l(e){this.local=this.regionalOptions[e]||this.regionalOptions[""]}n(i.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return(n=(null!=e&&e.year?e.calendar():"string"===typeof n?this.instance(n,i):n)||this.instance()).newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,(function(t){return e[t]}))}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(0===a?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return 0===n.indexOf(e[1]+t[1])&&(n=n.substr(1)),n||e[0]}}}),n(a.prototype,{newDate:function(e,t,r){return this._calendar.newDate(null==e?this:e,t,r)},year:function(e){return 0===arguments.length?this._year:this.set(e,"y")},month:function(e){return 0===arguments.length?this._month:this.set(e,"m")},day:function(e){return 0===arguments.length?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(u.local.invalidDate||u.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(u.local.differentCalendars||u.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return 0===t?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+o(Math.abs(this.year()),4)+"-"+o(this.month(),2)+"-"+o(this.day(),2)}}),n(s.prototype,{_validateLevel:0,newDate:function(e,t,r){return null==e?this.today():(e.year&&(this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new a(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){return this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+o(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,u.local.invalidMonth||u.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,u.local.invalidMonth||u.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,u.local.invalidDate||u.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,"d"===r||"w"===r){var n=e.toJD()+t*("w"===r?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+("y"===r?t:0),o=e.monthOfYear()+("m"===r?t:0);i=e.day(),"y"===r?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):"m"===r&&(function(e){for(;ot-1+e.minMonth;)a++,o-=t,t=e.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(e,t,r,n){if(!this.hasYearZero&&("y"===n||"m"===n)&&(0===t[0]||e.year()>0!==t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,u.local.invalidDate||u.regionalOptions[""].invalidDate);var n="y"===r?t:e.year(),i="m"===r?t:e.month(),a="d"===r?t:e.day();return"y"!==r&&"m"!==r||(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||0!==e;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),u=i-(l>2.5?4716:4715);return u<=0&&u--,this.newDate(u,l,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var u=e.exports=new i;u.cdate=a,u.baseCalendar=s,u.calendars.gregorian=l},94338:function(e,t,r){var n=r(56131),i=r(63489);n(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[""],n(i.cdate.prototype,{formatDate:function(e,t){return"string"!==typeof e&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}}),n(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(e,t,r){if("string"!==typeof e&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw i.local.invalidFormat||i.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat;for(var n=(r=r||{}).dayNamesShort||this.local.dayNamesShort,a=r.dayNames||this.local.dayNames,o=r.monthNumbers||this.local.monthNumbers,s=r.monthNamesShort||this.local.monthNamesShort,l=r.monthNames||this.local.monthNames,u=(r.calculateWeek||this.local.calculateWeek,function(t,r){for(var n=1;x+n1}),c=function(e,t,r,n){var i=""+t;if(u(e,n))for(;i.length1},x=function(e,r){var n=y(e,r),a=[2,3,n?4:2,n?4:2,10,11,20]["oyYJ@!".indexOf(e)+1],o=new RegExp("^-?\\d{1,"+a+"}"),s=t.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)},b=this,_=function(){if("function"===typeof l){y("m");var e=l.call(b,t.substring(M));return M+=e.length,e}return x("m")},w=function(e,r,n,a){for(var o=y(e,a)?n:r,s=0;s-1){h=1,p=v;for(var E=this.daysInMonth(d,h);p>E;E=this.daysInMonth(d,h))h++,p-=E}return f>-1?this.fromJD(f):this.newDate(d,h,p)},determineDate:function(e,t,r,n,i){r&&"object"!==typeof r&&(i=n,n=r,r=null),"string"!==typeof n&&(i=n,n="");var a=this;return t=t?t.newDate():null,e=null==e?t:"string"===typeof e?function(e){try{return a.parseDate(n,e,i)}catch(l){}for(var t=((e=e.toLowerCase()).match(/^c/)&&r?r.newDate():null)||a.today(),o=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,s=o.exec(e);s;)t.add(parseInt(s[1],10),s[2]||"d"),s=o.exec(e);return t}(e):"number"===typeof e?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e)}})},69862:function(){},40964:function(){},72077:function(e,t,r){"use strict";var n=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],i="undefined"===typeof globalThis?r.g:globalThis;e.exports=function(){for(var e=[],t=0;t>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?k(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?k(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=d.exec(e))?new M(t[1],t[2],t[3],1):(t=h.exec(e))?new M(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=p.exec(e))?k(t[1],t[2],t[3],t[4]):(t=v.exec(e))?k(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=m.exec(e))?P(t[1],t[2]/100,t[3]/100,1):(t=g.exec(e))?P(t[1],t[2]/100,t[3]/100,t[4]):y.hasOwnProperty(e)?w(y[e]):"transparent"===e?new M(NaN,NaN,NaN,0):null}function w(e){return new M(e>>16&255,e>>8&255,255&e,1)}function k(e,t,r,n){return n<=0&&(e=t=r=NaN),new M(e,t,r,n)}function T(e,t,r,n){return 1===arguments.length?((i=e)instanceof a||(i=_(i)),i?new M((i=i.rgb()).r,i.g,i.b,i.opacity):new M):new M(e,t,r,null==n?1:n);var i}function M(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function A(){return"#".concat(L(this.r)).concat(L(this.g)).concat(L(this.b))}function S(){var e=E(this.opacity);return"".concat(1===e?"rgb(":"rgba(").concat(C(this.r),", ").concat(C(this.g),", ").concat(C(this.b)).concat(1===e?")":", ".concat(e,")"))}function E(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function C(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function L(e){return((e=C(e))<16?"0":"")+e.toString(16)}function P(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new I(e,t,r,n)}function O(e){if(e instanceof I)return new I(e.h,e.s,e.l,e.opacity);if(e instanceof a||(e=_(e)),!e)return new I;if(e instanceof I)return e;var t=(e=e.rgb()).r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),o=Math.max(t,r,n),s=NaN,l=o-i,u=(o+i)/2;return l?(s=t===o?(r-n)/l+6*(r0&&u<1?0:s,new I(s,l,u,e.opacity)}function I(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function D(e){return(e=(e||0)%360)<0?e+360:e}function R(e){return Math.max(0,Math.min(1,e||0))}function z(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}function F(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}n(a,_,{copy:function(e){return Object.assign(new this.constructor,this,e)},displayable:function(){return this.rgb().displayable()},hex:x,formatHex:x,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return O(this).formatHsl()},formatRgb:b,toString:b}),n(M,T,i(a,{brighter:function(e){return e=null==e?s:Math.pow(s,e),new M(this.r*e,this.g*e,this.b*e,this.opacity)},darker:function(e){return e=null==e?o:Math.pow(o,e),new M(this.r*e,this.g*e,this.b*e,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(L(this.r)).concat(L(this.g)).concat(L(this.b)).concat(L(255*(isNaN(this.opacity)?1:this.opacity)))},formatRgb:S,toString:S})),n(I,(function(e,t,r,n){return 1===arguments.length?O(e):new I(e,t,r,null==n?1:n)}),i(a,{brighter:function(e){return e=null==e?s:Math.pow(s,e),new I(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?o:Math.pow(o,e),new I(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new M(z(e>=240?e-240:e+120,i,n),z(e,i,n),z(e<120?e+240:e-120,i,n),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 e=E(this.opacity);return"".concat(1===e?"hsl(":"hsla(").concat(D(this.h),", ").concat(100*R(this.s),"%, ").concat(100*R(this.l),"%").concat(1===e?")":", ".concat(e,")"))}}));var N=function(e){return function(){return e}};function B(e,t){return function(r){return e+r*t}}function j(e){return 1===(e=+e)?U:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}(t,r,e):N(isNaN(t)?r:t)}}function U(e,t){var r=t-e;return r?B(e,r):N(isNaN(e)?t:e)}var V=function e(t){var r=j(t);function n(e,t){var n=r((e=T(e)).r,(t=T(t)).r),i=r(e.g,t.g),a=r(e.b,t.b),o=U(e.opacity,t.opacity);return function(t){return e.r=n(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+""}}return n.gamma=e,n}(1);function H(e){return function(t){var r,n,i=t.length,a=new Array(i),o=new Array(i),s=new Array(i);for(r=0;r=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=na&&(i=t.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:G(r,n)})),a=K.lastIndex;return a

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=[{type:"indicator",value:e.results[0].clients,mode:"number",number:{font:{size:50}}}];m().newPlot("total-clients",t,{title:"Total number of unique users"},{displaylogo:!1});var r=[{type:"indicator",value:e.results[0].bytes,mode:"number",number:{font:{size:50},valueformat:".3s"}}];m().newPlot("total-bytes",r,{title:"Total number of bytes"},{displaylogo:!1});var n=[{values:[e.results[0].nb_successful_reqs,e.results[0].nb_reqs-e.results[0].nb_successful_reqs],labels:["Successful Requests","Unsuccessful Requests"],type:"pie",hovertemplate:"%{label}
%{value:.3s}
%{percent}"}];m().newPlot("total-requests",n,{title:"Total number of requests"},{displaylogo:!1})})).catch((function(e){return console.log(e)}))}(),o("month");var a=(new Date).getFullYear();function o(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"month",n=null;n="year"===r?"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(e).concat(t?"&end=".concat(t):"","&details=year&format=json"):"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(e).concat(t?"&end=".concat(t):"","&details=month&format=json"),fetch(n).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?"month"===r?document.getElementById("error-month").innerHTML="Service is temporarily unavailable. Please try again.":document.getElementById("error-year").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&("month"===r?document.getElementById("error-month").innerHTML=t.match(/

(.*?)<\/p>/)[0]:document.getElementById("error-year").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=[{x:e.results.map((function(e){return e.date})),y:e.results.map((function(e){return e.clients})),name:"",type:"bar"},{}],n={title:"Number of unique users per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],xaxis:{title:r.charAt(0).toUpperCase()+r.slice(1),tickmode:"linear"},yaxis:{title:"Unique users"},updatemenus:[{buttons:[{args:[{x:[e.results.map((function(e){return e.date}))],y:[e.results.map((function(e){return e.clients})),[]],name:["",""],type:"bar"},{title:"Number of unique users per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique users"},showlegend:!1}],label:"Unique Users",method:"update"},{args:[{x:[e.results.map((function(e){return e.date}))],y:[e.results.map((function(e){return e.bytes})),[]],name:["",""],type:"bar"},{title:"Number of bytes per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered during the use of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Bytes"},showlegend:!1}],label:"Bytes",method:"update"},{args:[{x:[e.results.map((function(e){return e.date}))],y:[e.results.map((function(e){return e.nb_successful_reqs})),e.results.map((function(e){return e.nb_reqs-e.nb_successful_reqs}))],name:["Successful Requests","Unsuccessful Requests"],type:"bar"},{barmode:"stack",title:"Number of requests per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of requests made to the EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Requests"},showlegend:!0}],label:"Requests",method:"update"}],direction:"down",type:"buttons"}]};"year"===r?n.xaxis.dtick=1:"month"===r&&(n.xaxis.dtick="M1"),m().newPlot(r+"-plots",t,n,{displaylogo:!1})})).catch((function(e){return console.log(e)}))}t&&(a=t.split("-")[0]),e.split("-")[0]!=a&&o("year"),function(){var a="https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(e).concat(t?"&end=".concat(t):"","&details=country&format=json");fetch(a).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?document.getElementById("error-map").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&(document.getElementById("error-map").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=r(106),n=[{locationmode:"ISO-3",locations:e.results.map((function(e){return e.country})).map((function(e){return t(e)})),z:e.results.map((function(e){return e.clients})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0}],i={title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],width:1e3,mapbox:{style:"open-street-map",center:{lon:0,lat:20},zoom:0},updatemenus:[{buttons:[{args:[{z:[e.results.map((function(e){return e.clients}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unique Users",method:"update"},{args:[{z:[e.results.map((function(e){return e.bytes}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of bytes per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered to users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Bytes",method:"update"},{args:[{z:[e.results.map((function(e){return e.nb_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of total requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Total Requests",method:"update"},{args:[{z:[e.results.map((function(e){return e.nb_successful_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of successful requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of successful requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Successful Requests",method:"update"},{args:[{z:[e.results.map((function(e){return e.nb_reqs-e.nb_successful_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unsuccessful requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unsuccesssful requests (i.e. requests that did not return any data) made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unsuccessful Requests",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("country-plots",n,i,{displaylogo:!1}),document.getElementById("mapAndBoxes").style.backgroundColor="white"})).catch((function(e){return console.log(e)})).finally((function(){clearInterval(i),n.innerHTML=""}))}()}(y,_);break;case"node":!function(e,t,i){var a=document.getElementById("loading-msg");a.innerHTML="Loading plots. Please wait...";var o=setInterval((function(){"Loading plots. Please wait..."===a.innerHTML?a.innerHTML="Loading plots. Please wait":a.innerHTML+="."}),500);fetch("https://ws.resif.fr/eidaws/statistics/1/nodes").then((function(e){if(e.ok)return e.json();throw e.text().then((function(e){(e.includes("Internal")||e.includes("Time-out"))&&(document.getElementById("error-total").innerHTML="Service is temporarily unavailable. Please try again.")})),Error(e.statusText)})).then((function(s){for(var l=s.nodes.map((function(e){return e.name})).sort(),u=["#7eed89","#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf","#3294b8","#eb9a49","#f5ed53","#291200"],c={},f=0;f=400&&e.status<500&&(document.getElementById("error-total").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){for(var t in c)e.results.map((function(e){return e.node})).includes(t)||delete c[t];var r=e.results.sort((function(e,t){return Object.keys(c).indexOf(e.node)-Object.keys(c).indexOf(t.node)})),n=new wg.HLL(11,5);e.results.forEach((function(e){n.union((0,wg.fromHexString)(e.hll_clients).hllSet)}));var i={values:r.map((function(e){return e.clients})),labels:Object.keys(c),type:"pie",marker:{colors:Object.values(c)},texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}",sort:!1},a={title:"Total number of users* per node",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"*Important note: The number of unique users is correct
for each node. However, the whole pie does not represent
the real value of the total users for all selected nodes, as
many clients may have asked data from multiple nodes.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],updatemenus:[{buttons:[{args:[{values:[r.map((function(e){return e.clients}))],type:"pie",sort:!1},{title:"Total number of users* per node",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"*Important note: The number of unique users is correct
for each node. However, the whole pie does not represent
the real value of the total users for all selected nodes, as
many clients may have asked data from multiple nodes.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Users Per Node",method:"update"},{args:[{type:"indicator",value:n.cardinality(),mode:"number",number:{font:{size:50}}},{title:"Total number of unique users of all nodes",annotations:[]}],label:"Users All Nodes",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("total-clients",[i],a,{displaylogo:!1});var o={values:r.map((function(e){return e.bytes})),labels:Object.keys(c),type:"pie",marker:{colors:Object.values(c)},texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}",sort:!1};m().newPlot("total-bytes",[o],{title:"Total number of bytes",annotations:[{xshift:10,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]},{displaylogo:!1});var s={values:r.map((function(e){return e.nb_reqs})),labels:Object.keys(c),type:"pie",marker:{colors:Object.values(c)},texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}",sort:!1},l={title:"Total number of requests",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the number of total requests made to
the EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],updatemenus:[{buttons:[{args:[{values:[r.map((function(e){return e.nb_reqs}))],type:"pie",sort:!1},{title:"Total number of requests",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the number of total requests made to
the EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Total Requests",method:"update"},{args:[{values:[r.map((function(e){return e.nb_successful_reqs}))],type:"pie",sort:!1},{title:"Total number of successful requests",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the number of successful requests made to
the EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Successful Requests",method:"update"},{args:[{values:[r.map((function(e){return e.nb_reqs-e.nb_successful_reqs}))],type:"pie",sort:!1},{title:"Total number of unsuccessful requests",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the number of unsuccessful requests
(i.e. requests that did not return any data) made to
the EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unsuccessful Requests",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("total-requests",[s],l,{displaylogo:!1})})).catch((function(e){return console.log(e)}))}(),h("month");var d=(new Date).getFullYear();function h(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"month",n=null;n="year"===r?"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(e).concat(t?"&end=".concat(t):"").concat(i?"&node=".concat(i):"","&level=node&details=year&hllvalues=true&format=json"):"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(e).concat(t?"&end=".concat(t):"").concat(i?"&node=".concat(i):"","&level=node&details=month&hllvalues=true&format=json"),fetch(n).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?"month"===r?document.getElementById("error-month").innerHTML="Service is temporarily unavailable. Please try again.":document.getElementById("error-year").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&("month"===r?document.getElementById("error-month").innerHTML=t.match(/

(.*?)<\/p>/)[0]:document.getElementById("error-year").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t={};e.results.forEach((function(e){t[e.date]||(t[e.date]=new wg.HLL(11,5)),t[e.date].union((0,wg.fromHexString)(e.hll_clients).hllSet)}));var n=[];Object.keys(c).forEach((function(e){n.push([])})),n[n.length-1]=Object.values(t).map((function(e){return e.cardinality()}));var i=Object.keys(c).map((function(t,r){var n=e.results.filter((function(e){return e.node===t}));return{x:n.map((function(e){return e.date})),y1:n.map((function(e){return e.clients})),y2:n.map((function(e){return e.bytes})),y3:n.map((function(e){return e.nb_reqs})),y4:n.map((function(e){return e.nb_successful_reqs})),y5:n.map((function(e){return e.nb_reqs-e.nb_successful_reqs})),name:t,type:"scatter",mode:"lines+markers",hovertemplate:"(%{x}, %{y:.3s})",marker:{color:c[t]}}})),a={height:500,margin:{b:100},barmode:"stack",title:"Number of users per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],xaxis:{title:r.charAt(0).toUpperCase()+r.slice(1),tickmode:"linear"},yaxis:{title:"Unique users"},showlegend:!0,updatemenus:[{buttons:[{args:[{x:i.map((function(e){return e.x})),y:i.map((function(e){return e.y1})),name:i.map((function(e){return e.name})),type:"scatter",hovertemplate:"(%{x}, %{y:.3s})",marker:Object.values(c).map((function(e){return{color:e}}))},{title:"Number of users per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique users"},showlegend:!0}],label:"Users Per Node",method:"update"},{args:[{x:[Object.keys(t)],y:n,name:Array(Object.keys(c).length).fill(""),type:"bar",hovertemplate:"(%{x}, %{value:.3s})",marker:{color:Object.values(c)[0]}},{title:"Number of unique users of all specified nodes per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique Users"},showlegend:!1}],label:"Users All Nodes",method:"update"},{args:[{x:i.map((function(e){return e.x})).reverse(),y:i.map((function(e){return e.y2})).reverse(),name:i.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})",marker:Object.values(c).reverse().map((function(e){return{color:e}}))},{title:"Number of bytes per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered during the use of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Bytes"},showlegend:!0}],label:"Bytes",method:"update"},{args:[{x:i.map((function(e){return e.x})).reverse(),y:i.map((function(e){return e.y3})).reverse(),name:i.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})",marker:Object.values(c).reverse().map((function(e){return{color:e}}))},{title:"Number of total requests per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of total requests made to the EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Total Requests"},showlegend:!0}],label:"Total Requests",method:"update"},{args:[{x:i.map((function(e){return e.x})).reverse(),y:i.map((function(e){return e.y4})).reverse(),name:i.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})",marker:Object.values(c).reverse().map((function(e){return{color:e}}))},{title:"Number of successful requests per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of successful requests made to the EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Successful Requests"},showlegend:!0}],label:"Successful Requests",method:"update"},{args:[{x:i.map((function(e){return e.x})).reverse(),y:i.map((function(e){return e.y5})).reverse(),name:i.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})",marker:Object.values(c).reverse().map((function(e){return{color:e}}))},{title:"Number of unsuccessful requests per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unsuccessful requests made to the EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unsuccessful Requests"},showlegend:!0}],label:"Unsuccessful Requests",method:"update"}],direction:"down",type:"buttons"}]};"year"===r?a.xaxis.dtick=1:"month"===r&&(a.xaxis.dtick="M1"),m().newPlot(r+"-plots",i.map((function(e){return{x:e.x,y:e.y1,name:e.name,type:e.type,mode:e.mode,marker:e.marker,hovertemplate:e.hovertemplate}})),a,{displaylogo:!1})})).catch((function(e){return console.log(e)}))}t&&(d=t.split("-")[0]),e.split("-")[0]!=d&&h("year"),function(){var s="https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(e).concat(t?"&end=".concat(t):"").concat(i?"&node=".concat(i):"","&level=node&details=country&hllvalues=true&format=json");fetch(s).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?document.getElementById("error-map").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&(document.getElementById("error-map").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){for(var t in c)e.results.map((function(e){return e.node})).includes(t)||delete c[t];var i=e.results.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0,nb_successful_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e[t.country].nb_successful_reqs+=t.nb_successful_reqs,e}),{});for(var a in i)i[a].clients=i[a].clients.cardinality();var o=r(106),s=[{locationmode:"ISO-3",locations:Object.values(i).map((function(e){return e.country})).map((function(e){return o(e)})),z:Object.values(i).map((function(e){return e.clients})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}],l={title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],width:1e3,mapbox:{style:"open-street-map",center:{lon:0,lat:20},zoom:0},updatemenus:[{buttons:[{args:[{z:[Object.values(i).map((function(e){return e.clients}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unique Users",method:"update"},{args:[{z:[Object.values(i).map((function(e){return e.bytes}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of bytes per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered to users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Bytes",method:"update"},{args:[{z:[Object.values(i).map((function(e){return e.nb_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of total requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of total requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Total Requests",method:"update"},{args:[{z:[Object.values(i).map((function(e){return e.nb_successful_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of successful requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of successful requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Successful Requests",method:"update"},{args:[{z:[Object.values(i).map((function(e){return e.nb_reqs-e.nb_successful_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unsuccessful requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unsuccesssful requests (i.e. requests that did not return any data) made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unsuccessful Requests",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("country-plots",s,l,{displaylogo:!1});var u=Object.keys(c).map((function(e,t){return(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)("input",{type:"checkbox",id:"node-".concat(t),value:e,defaultChecked:!0,onChange:p}),(0,Fn.jsx)("label",{htmlFor:"node-".concat(t),children:e})]},t)})),f=document.getElementById("nns-checkboxes");f.innerHTML="",n.createRoot(f).render(u),document.getElementById("mapAndBoxes").style.backgroundColor="white";var d=0,h=null;function p(t){var n=t.target,a=(new Date).getTime(),s=a-d,u=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]'),c=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked').length;n===h&&s<300&&(1===c&&n.checked?u.forEach((function(e){e.checked=!0})):u.forEach((function(e){e.checked=e===n}))),h=n,d=a;var f=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked'),p=[];f.forEach((function(e){p.push(e.value)}));var v=e.results.filter((function(e){return p.includes(e.node)}));for(var g in i=v.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0,nb_successful_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e[t.country].nb_successful_reqs+=t.nb_successful_reqs,e}),{}))i[g].clients=i[g].clients.cardinality();var y=Object.values(i).map((function(e){return e.country})).map((function(e){return o(e)})),x=l.updatemenus[0].active,b=[{locationmode:"ISO-3",locations:y,z:Object.values(i).map((function(e){return 0===x||void 0===x?e.clients:1===x?e.bytes:2===x?e.nb_reqs:3===x?e.nb_successful_reqs:4===x?e.nb_reqs-e.nb_successful_reqs:void 0})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}];l.updatemenus[0].buttons.forEach((function(e,t){e&&0===t?e.args[0].z=[Object.values(i).map((function(e){return e.clients}))]:e&&1===t?e.args[0].z=[Object.values(i).map((function(e){return e.bytes}))]:e&&2===t?e.args[0].z=[Object.values(i).map((function(e){return e.nb_reqs}))]:e&&3===t?e.args[0].z=[Object.values(i).map((function(e){return e.nb_successful_reqs}))]:e&&4===t&&(e.args[0].z=[Object.values(i).map((function(e){return e.nb_reqs-e.nb_successful_reqs}))])})),m().react("country-plots",b,l)}})).catch((function(e){return console.log(e)})).finally((function(){clearInterval(o),a.innerHTML=""}))}()})).catch((function(e){console.log(e),clearInterval(o),a.innerHTML=""}))}(y,_,t(L,D));break;case"network":var e=new FormData;e.append("file",h);var a=i?t(F,j):F&&0!==F.length?F:j;!function(e,t,i,a,o,s){var l=arguments.length>6&&void 0!==arguments[6]&&arguments[6],u=arguments.length>7&&void 0!==arguments[7]?arguments[7]:10,c=document.getElementById("loading-msg");c.innerHTML="Loading plots. Please wait...";var f=setInterval((function(){"Loading plots. Please wait..."===c.innerHTML?c.innerHTML="Loading plots. Please wait":c.innerHTML+="."}),500);!function(){var r;r=e?"https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=".concat(i).concat(a?"&end=".concat(a):"").concat(o?"&node=".concat(o):"").concat(s?"&network=".concat(s):"","&level=network&hllvalues=true&format=json"):"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(i).concat(a?"&end=".concat(a):"").concat(o?"&node=".concat(o):"").concat(s?"&network=".concat(s):"","&level=network&hllvalues=true&format=json"),fetch(r,{method:e?"POST":"GET",body:e?t:null}).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?document.getElementById("error-total").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&(document.getElementById("error-total").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t={},r=new wg.HLL(11,5);e.results.forEach((function(e){var n=l?e.node:e.network||"N/A";t[n]?t[n].union((0,wg.fromHexString)(e.hll_clients).hllSet):t[n]=(0,wg.fromHexString)(e.hll_clients).hllSet,r.union((0,wg.fromHexString)(e.hll_clients).hllSet)}));var n={values:[],labels:[],belongsInLess:[]},i=0;Object.entries(t).sort((function(e,t){return t[1].cardinality()-e[1].cardinality()})).forEach((function(e,t){var r=p(e,2),a=r[0],o=r[1];t0&&(n.values.push(i),n.labels.push("Grouped Items"));var o={values:n.values,labels:n.labels,type:"pie",texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}%{customdata}",customdata:n.labels.map((function(e){return"Grouped Items"===e?n.belongsInLess.join("
"):""})),sort:!1},c={title:"Total number of users* per network",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"*Important note: The number of unique users is correct for
each network. However, the whole pie does not represent
the real value of the total users for all selected networks, as
many clients may have asked data from multiple networks.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],updatemenus:[{buttons:[{args:[{values:[n.values],type:"pie",sort:!1},{title:"Total number of users* per network",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"*Important note: The number of unique users is correct for
each network. However, the whole pie does not represent
the real value of the total users for all selected networks, as
many clients may have asked data from multiple networks.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Users Per Network",method:"update"},{args:[{type:"indicator",value:r.cardinality(),mode:"number",number:{font:{size:50}}},{title:"Total number of unique users of all networks",annotations:[]}],label:"Users All Networks",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("total-clients",[o],c,{displaylogo:!1});var f=e.results.reduce((function(e,t){var r=l?t.node:t.network||"N/A",n=e.networks.indexOf(r);return-1!==n?e.bytes[n]+=t.bytes:(e.bytes.push(t.bytes),e.networks.push(l?"".concat(s," (").concat(r,")"):r)),e}),{bytes:[],networks:[]}),d={values:[],labels:[],belongsInLess:[]},h=0;f.networks.map((function(e,t){return{network:e,bytes:f.bytes[t]}})).sort((function(e,t){return t.bytes-e.bytes})).forEach((function(e,t){var r=e.network,n=e.bytes;t0&&(d.values.push(h),d.labels.push("Grouped Items"));var g={values:d.values,labels:d.labels,type:"pie",texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}%{customdata}",customdata:d.labels.map((function(e){return"Grouped Items"===e?d.belongsInLess.join("
"):""})),sort:!1};m().newPlot("total-bytes",[g],{title:"Total number of bytes",annotations:[{xshift:10,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]},{displaylogo:!1});var y=e.results.reduce((function(e,t){var r=l?t.node:t.network||"N/A",n=e.networks.indexOf(r);return-1!==n?e.nb_reqs[n]+=t.nb_reqs:(e.nb_reqs.push(t.nb_reqs),e.networks.push(l?"".concat(s," (").concat(r,")"):r)),e}),{nb_reqs:[],networks:[]}),x={values:[],labels:[],belongsInLess:[]},b=0;y.networks.map((function(e,t){return{network:e,nb_reqs:y.nb_reqs[t]}})).sort((function(e,t){return t.nb_reqs-e.nb_reqs})).forEach((function(e,t){var r=e.network,n=e.nb_reqs;t0&&(x.values.push(b),x.labels.push("Grouped Items"));var w={values:x.values,labels:x.labels,type:"pie",texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}%{customdata}",customdata:x.labels.map((function(e){return"Grouped Items"===e?x.belongsInLess.join("
"):""})),sort:!1};m().newPlot("total-requests",[w],{title:"Total number of requests",annotations:[{xshift:10,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the number of requests made to
the EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]},{displaylogo:!1})})).catch((function(e){return console.log(e)}))}(),h("month");var d=(new Date).getFullYear();function h(){var r,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"month";r=e?"https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=".concat(i).concat(a?"&end=".concat(a):"").concat(o?"&node=".concat(o):"").concat(s?"&network=".concat(s):"","&level=network&details=").concat(n,"&hllvalues=true&format=json"):"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(i).concat(a?"&end=".concat(a):"").concat(o?"&node=".concat(o):"").concat(s?"&network=".concat(s):"","&level=network&details=").concat(n,"&hllvalues=true&format=json"),fetch(r,{method:e?"POST":"GET",body:e?t:null}).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?"month"===n?document.getElementById("error-month").innerHTML="Service is temporarily unavailable. Please try again.":document.getElementById("error-year").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&("month"===n?document.getElementById("error-month").innerHTML=t.match(/

(.*?)<\/p>/)[0]:document.getElementById("error-year").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=Array.from(new Set(e.results.map((function(e){return l?e.node:e.network})))),r={};e.results.forEach((function(e){r[e.date]||(r[e.date]=new wg.HLL(11,5)),r[e.date].union((0,wg.fromHexString)(e.hll_clients).hllSet)}));var i=t.map((function(t){var r=e.results.filter((function(e){return l?e.node===t:e.network===t})).reduce((function(e,t){return e[t.date]||(e[t.date]=[]),e[t.date].push(t),e}),{}),n=Object.entries(r).map((function(e){var t=p(e,2),r=t[0],n=t[1];return{date:r,y1:n.reduce((function(e,t){return e.union((0,wg.fromHexString)(t.hll_clients).hllSet)}),new wg.HLL(11,5)),y2:n.reduce((function(e,t){return e+t.bytes}),0),y3:n.reduce((function(e,t){return e+t.nb_reqs}),0)}}));return{x:n.map((function(e){return e.date})),y1:n.map((function(e){return e.y1.cardinality()})),y2:n.map((function(e){return e.y2})),y3:n.map((function(e){return e.y3})),name:l?"".concat(s," (").concat(t,")"):t||"N/A",type:"scatter",mode:"lines+markers",hovertemplate:"(%{x}, %{y:.3s})"}}));i.sort((function(e,t){var r=e.y1.reduce((function(e,t){return e+t}),0);return t.y1.reduce((function(e,t){return e+t}),0)-r}));var a={x:[],y1:{},name:"Grouped Items",type:"scatter",mode:"lines+markers",hovertemplate:"(%{x}, %{y:.3s})"},o=P(i);if(o.length>u){for(var c=function(){var e=o[f];e.x.forEach((function(t,r){a.x.includes(t)||a.x.push(t),a.y1[t]=(a.y1[t]||0)+e.y1[r]}))},f=u;f0&&o.push(a);var d=Array(o.length).fill([]);d[o.length-1]=Object.values(r).map((function(e){return e.cardinality()})),i.sort((function(e,t){var r=e.y2.reduce((function(e,t){return e+t}),0);return t.y2.reduce((function(e,t){return e+t}),0)-r}));var h={x:[],y2:{},name:"Grouped Items",type:"scatter",hovertemplate:"(%{x}, %{y:.3s})"},v=P(i);if(v.length>u){for(var g=function(){var e=v[y];e.x.forEach((function(t,r){h.x.includes(t)||h.x.push(t),h.y2[t]=(h.y2[t]||0)+e.y2[r]}))},y=u;y0&&v.push(h),i.sort((function(e,t){var r=e.y3.reduce((function(e,t){return e+t}),0);return t.y3.reduce((function(e,t){return e+t}),0)-r}));var x={x:[],y3:{},name:"Grouped Items",type:"scatter",hovertemplate:"(%{x}, %{y:.3s})"},b=P(i);if(b.length>u){for(var _=function(){var e=b[w];e.x.forEach((function(t,r){x.x.includes(t)||x.x.push(t),x.y3[t]=(x.y3[t]||0)+e.y3[r]}))},w=u;w0&&b.push(x);var k={height:500,margin:{b:100},barmode:"stack",title:"Number of users per "+n,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(n,".").concat("year"===n?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],xaxis:{title:n.charAt(0).toUpperCase()+n.slice(1),tickmode:"linear"},yaxis:{title:"Unique users"},showlegend:!0,updatemenus:[{buttons:[{args:[{x:o.map((function(e){return e.x})),y:o.map((function(e){return e.y1})),name:o.map((function(e){return e.name})),type:"scatter",hovertemplate:"(%{x}, %{y:.3s})"},{title:"Number of users per "+n,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(n,".").concat("year"===n?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique users"},showlegend:!0}],label:"Users Per Network",method:"update"},{args:[{x:[Object.keys(r)],y:d,name:Array(d.length).fill(""),type:"bar",hovertemplate:"(%{x}, %{value:.3s})"},{title:"Number of unique users of all specified networks per "+n,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(n,".").concat("year"===n?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique Users"},showlegend:!1}],label:"Users All Networks",method:"update"},{args:[{x:v.map((function(e){return e.x})).reverse(),y:v.map((function(e){return e.y2})).reverse(),name:v.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})"},{title:"Number of bytes per "+n,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered during the use of EIDA services per ".concat(n,".").concat("year"===n?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Bytes"},showlegend:!0}],label:"Bytes",method:"update"},{args:[{x:b.map((function(e){return e.x})).reverse(),y:b.map((function(e){return e.y3})).reverse(),name:b.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})"},{title:"Number of requests per "+n,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of requests made to the EIDA services per ".concat(n,".").concat("year"===n?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Requests"},showlegend:!0}],label:"Requests",method:"update"}],direction:"down",type:"buttons"}]};"year"===n?k.xaxis.dtick=1:"month"===n&&(k.xaxis.dtick="M1"),m().newPlot(n+"-plots",o.map((function(e){return{x:e.x,y:e.y1,name:e.name,type:e.type,mode:e.mode,hovertemplate:e.hovertemplate}})),k,{displaylogo:!1})})).catch((function(e){return console.log(e)}))}a&&(d=a.split("-")[0]),i.split("-")[0]!=d&&h("year"),function(){var u;u=e?"https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=".concat(i).concat(a?"&end=".concat(a):"").concat(o?"&node=".concat(o):"").concat(s?"&network=".concat(s):"","&level=network&details=country&hllvalues=true&format=json"):"https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=".concat(i).concat(a?"&end=".concat(a):"").concat(o?"&node=".concat(o):"").concat(s?"&network=".concat(s):"","&level=network&details=country&hllvalues=true&format=json"),fetch(u,{method:e?"POST":"GET",body:e?t:null}).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?document.getElementById("error-map").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&(document.getElementById("error-map").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=e.results.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e}),{});for(var i in t)t[i].clients=t[i].clients.cardinality();var a=r(106),o=[{locationmode:"ISO-3",locations:Object.values(t).map((function(e){return e.country})).map((function(e){return a(e)})),z:Object.values(t).map((function(e){return e.clients})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}],u={title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],width:1e3,mapbox:{style:"open-street-map",center:{lon:0,lat:20},zoom:0},updatemenus:[{buttons:[{args:[{z:[Object.values(t).map((function(e){return e.clients}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unique Users",method:"update"},{args:[{z:[Object.values(t).map((function(e){return e.bytes}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of bytes per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered to users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Bytes",method:"update"},{args:[{z:[Object.values(t).map((function(e){return e.nb_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Requests",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("country-plots",o,u,{displaylogo:!1});var c=(l?Array.from(new Set(e.results.map((function(e){return e.node})))).sort((function(e,t){return e.localeCompare(t)})):Array.from(new Set(e.results.map((function(e){return e.network})))).sort((function(e,t){return e.localeCompare(t)}))).map((function(e,t){return(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)("input",{type:"checkbox",id:"network-".concat(t),value:e,defaultChecked:!0,onChange:p}),(0,Fn.jsx)("label",{htmlFor:"network-".concat(t),children:l?"".concat(s," (").concat(e,")"):e||"N/A"})]},t)})),f=document.getElementById("nns-checkboxes");f.innerHTML="",n.createRoot(f).render(c),document.getElementById("mapAndBoxes").style.backgroundColor="white";var d=0,h=null;function p(n){var i=n.target,o=(new Date).getTime(),s=o-d,c=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]'),f=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked').length;i===h&&s<300&&(1===f&&i.checked?c.forEach((function(e){e.checked=!0})):c.forEach((function(e){e.checked=e===i}))),h=i,d=o;var p,v=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked'),g=[];for(var y in v.forEach((function(e){g.push(e.value)})),p=l?e.results.filter((function(e){return g.includes(e.node)})):e.results.filter((function(e){return g.includes(e.network)})),t=p.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e}),{}))t[y].clients=t[y].clients.cardinality();var x=Object.values(t).map((function(e){return e.country})).map((function(e){return a(e)})),b=u.updatemenus[0].active,_=[{locationmode:"ISO-3",locations:x,z:Object.values(t).map((function(e){return 0===b||void 0===b?e.clients:1===b?e.bytes:2===b?e.nb_reqs:void 0})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}];u.updatemenus[0].buttons.forEach((function(e,r){e&&0===r?e.args[0].z=[Object.values(t).map((function(e){return e.clients}))]:e&&1===r?e.args[0].z=[Object.values(t).map((function(e){return e.bytes}))]:e&&2===r&&(e.args[0].z=[Object.values(t).map((function(e){return e.nb_reqs}))])})),m().react("country-plots",_,u)}})).catch((function(e){return console.log(e)})).finally((function(){clearInterval(f),c.innerHTML=""}))}()}(i,e,y,_,t(L,D),i?t(F,j):!j&&F&&0!==F.length?F:j,!(!a||a.includes(",")||""===a)||void 0,!isNaN(G)&&G>=0?G:void 0);break;case"station":var o=new FormData;o.append("file",h),function(e,t,i,a,o,s){var l=arguments.length>6&&void 0!==arguments[6]?arguments[6]:10,u=document.getElementById("loading-msg");u.innerHTML="Loading plots. Please wait...";var c=setInterval((function(){"Loading plots. Please wait..."===u.innerHTML?u.innerHTML="Loading plots. Please wait":u.innerHTML+="."}),500);!function(){var r="https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=".concat(t).concat(i?"&end=".concat(i):"").concat(a?"&node=".concat(a):"").concat(o?"&network=".concat(o):"").concat(s?"&station=".concat(s):"","&level=station&hllvalues=true&format=json");fetch(r,{method:"POST",body:e}).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?document.getElementById("error-total").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&(document.getElementById("error-total").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=new wg.HLL(11,5);e.results.forEach((function(e){t.union((0,wg.fromHexString)(e.hll_clients).hllSet)}));var r=e.results.sort((function(e,t){return t.clients-e.clients})).slice(0,l).map((function(e){return{station:e.network+"."+e.station,clients:e.clients}}));r.sort((function(e,t){return e.station.localeCompare(t.station)}));var n={station:"Grouped Items",clients:e.results.reduce((function(e,t){return r.map((function(e){return e.station})).includes(t.network+"."+t.station)?e:e+t.clients}),0),belongsHere:e.results.filter((function(e){return!r.map((function(e){return e.station})).includes(e.network+"."+e.station)})).map((function(e){return e.network+"."+e.station}))};n.clients>0&&r.push({station:n.station,clients:n.clients});var i={values:r.map((function(e){return e.clients})),labels:r.map((function(e){return e.station})),type:"pie",texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}%{customdata}",customdata:r.map((function(e){return"Grouped Items"===e.station?n.belongsHere.join("
"):""})),sort:!1},a={title:"Total number of unique users*",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"*Important note: The number of unique users is correct for
each station. However, the whole pie does not represent
the real value of the total users for all selected stations, as
many clients may have asked data from multiple stations.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],updatemenus:[{buttons:[{args:[{values:[r.map((function(e){return e.clients}))],type:"pie",sort:!1},{title:"Total number of unique users*",annotations:[{xshift:-20,y:-.25,xref:"paper",yref:"paper",text:"*Important note: The number of unique users is correct for
each station. However, the whole pie does not represent
the real value of the total users for all selected stations, as
many clients may have asked data from multiple stations.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unique Users Per Station",method:"update"},{args:[{type:"indicator",value:t.cardinality(),mode:"number",number:{font:{size:50}}},{title:"Total number of unique users of all specified stations",annotations:[]}],label:"Unique Users All Stations",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("total-clients",[i],a,{displaylogo:!1});var o=e.results.sort((function(e,t){return t.bytes-e.bytes})).slice(0,l).map((function(e){return{station:e.network+"."+e.station,bytes:e.bytes}}));o.sort((function(e,t){return e.station.localeCompare(t.station)}));var s={station:"Grouped Items",bytes:e.results.reduce((function(e,t){return o.map((function(e){return e.station})).includes(t.network+"."+t.station)?e:e+t.bytes}),0),belongsHere:e.results.filter((function(e){return!o.map((function(e){return e.station})).includes(e.network+"."+e.station)})).map((function(e){return e.network+"."+e.station}))};s.bytes>0&&o.push({station:s.station,bytes:s.bytes});var u={values:o.map((function(e){return e.bytes})),labels:o.map((function(e){return e.station})),type:"pie",texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}%{customdata}",customdata:o.map((function(e){return"Grouped Items"===e.station?s.belongsHere.join("
"):""})),sort:!1};m().newPlot("total-bytes",[u],{title:"Total number of bytes",annotations:[{xshift:10,y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]},{displaylogo:!1});var c=e.results.sort((function(e,t){return t.nb_reqs-e.nb_reqs})).slice(0,l).map((function(e){return{station:e.network+"."+e.station,nb_reqs:e.nb_reqs}}));c.sort((function(e,t){return e.station.localeCompare(t.station)}));var f={station:"Grouped Items",nb_reqs:e.results.reduce((function(e,t){return c.map((function(e){return e.station})).includes(t.network+"."+t.station)?e:e+t.nb_reqs}),0),belongsHere:e.results.filter((function(e){return!c.map((function(e){return e.station})).includes(e.network+"."+e.station)})).map((function(e){return e.network+"."+e.station}))};f.nb_reqs>0&&c.push({station:f.station,nb_reqs:f.nb_reqs});var d={values:c.map((function(e){return e.nb_reqs})),labels:c.map((function(e){return e.station})),type:"pie",texttemplate:"%{value:.3s}",hovertemplate:"%{label}
%{value:.3s}
%{percent}%{customdata}",customdata:c.map((function(e){return"Grouped Items"===e.station?f.belongsHere.join("
"):""})),sort:!1};m().newPlot("total-requests",[d],{title:"Total number of requests",annotations:[{y:-.25,xref:"paper",yref:"paper",text:"The above plot shows the number of requests made to
the EIDA services in the specified time period.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]},{displaylogo:!1})})).catch((function(e){return console.log(e)}))}(),d("month");var f=(new Date).getFullYear();function d(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"month",n="https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=".concat(t).concat(i?"&end=".concat(i):"").concat(a?"&node=".concat(a):"").concat(o?"&network=".concat(o):"").concat(s?"&station=".concat(s):"","&level=station&details=").concat(r,"&hllvalues=true&format=json");fetch(n,{method:"POST",body:e}).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?"month"===r?document.getElementById("error-month").innerHTML="Service is temporarily unavailable. Please try again.":document.getElementById("error-year").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&("month"===r?document.getElementById("error-month").innerHTML=t.match(/

(.*?)<\/p>/)[0]:document.getElementById("error-year").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=Array.from(new Set(e.results.map((function(e){return e.station})))),n={};e.results.forEach((function(e){n[e.date]||(n[e.date]=new wg.HLL(11,5)),n[e.date].union((0,wg.fromHexString)(e.hll_clients).hllSet)}));var i=t.map((function(t){var r=e.results.filter((function(e){return e.station===t}));return{x:r.map((function(e){return e.date})),y1:r.map((function(e){return e.clients})),y2:r.map((function(e){return e.bytes})),y3:r.map((function(e){return e.nb_reqs})),name:r[0].network+"."+r[0].station,type:"scatter",mode:"lines+markers",hovertemplate:"(%{x}, %{y:.3s})"}}));i.sort((function(e,t){var r=e.y1.reduce((function(e,t){return e+t}),0);return t.y1.reduce((function(e,t){return e+t}),0)-r}));var a={x:[],y1:{},name:"Grouped Items",type:"scatter",mode:"lines+markers",hovertemplate:"(%{x}, %{y:.3s})"},o=P(i);if(o.length>l){for(var s=function(){var e=o[u];e.x.forEach((function(t,r){a.x.includes(t)||a.x.push(t),a.y1[t]=(a.y1[t]||0)+e.y1[r]}))},u=l;u0&&o.push(a);var c=Array(o.length).fill([]);c[o.length-1]=Object.values(n).map((function(e){return e.cardinality()})),i.sort((function(e,t){var r=e.y2.reduce((function(e,t){return e+t}),0);return t.y2.reduce((function(e,t){return e+t}),0)-r}));var f={x:[],y2:{},name:"Grouped Items",type:"scatter",hovertemplate:"(%{x}, %{y:.3s})"},d=P(i);if(d.length>l){for(var h=function(){var e=d[p];e.x.forEach((function(t,r){f.x.includes(t)||f.x.push(t),f.y2[t]=(f.y2[t]||0)+e.y2[r]}))},p=l;p0&&d.push(f),i.sort((function(e,t){var r=e.y3.reduce((function(e,t){return e+t}),0);return t.y3.reduce((function(e,t){return e+t}),0)-r}));var v={x:[],y3:{},name:"Grouped Items",type:"scatter",hovertemplate:"(%{x}, %{y:.3s})"},g=P(i);if(g.length>l){for(var y=function(){var e=g[x];e.x.forEach((function(t,r){v.x.includes(t)||v.x.push(t),v.y3[t]=(v.y3[t]||0)+e.y3[r]}))},x=l;x0&&g.push(v);var b={height:500,margin:{b:100},barmode:"stack",title:"Number of unique users per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],xaxis:{title:r.charAt(0).toUpperCase()+r.slice(1),tickmode:"linear"},yaxis:{title:"Unique users"},showlegend:!0,updatemenus:[{buttons:[{args:[{x:o.map((function(e){return e.x})),y:o.map((function(e){return e.y1})),name:o.map((function(e){return e.name})),type:"scatter",hovertemplate:"(%{x}, %{y:.3s})"},{title:"Number of unique users per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique users"},showlegend:!0}],label:"Unique Users Per station",method:"update"},{args:[{x:[Object.keys(n)],y:c,name:Array(c.length).fill(""),type:"bar",hovertemplate:"(%{x}, %{value:.3s})"},{title:"Number of unique users of all specified stations per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Unique Users"},showlegend:!1}],label:"Unique Users All Stations",method:"update"},{args:[{x:d.map((function(e){return e.x})).reverse(),y:d.map((function(e){return e.y2})).reverse(),name:d.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})"},{title:"Number of bytes per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered during the use of EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Bytes"},showlegend:!0}],label:"Bytes",method:"update"},{args:[{x:g.map((function(e){return e.x})).reverse(),y:g.map((function(e){return e.y3})).reverse(),name:g.map((function(e){return e.name})).reverse(),type:"bar",hovertemplate:"(%{x}, %{value:.3s})"},{title:"Number of requests per "+r,annotations:[{y:-.27,yref:"paper",xref:"paper",text:"The above plot shows the number of requests made to the EIDA services per ".concat(r,".").concat("year"===r?" Only months that were specified are included.":"",""),showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],yaxis:{title:"Requests"},showlegend:!0}],label:"Requests",method:"update"}],direction:"down",type:"buttons"}]};"year"===r?b.xaxis.dtick=1:"month"===r&&(b.xaxis.dtick="M1"),m().newPlot(r+"-plots",o.map((function(e){return{x:e.x,y:e.y1,name:e.name,type:e.type,mode:e.mode,hovertemplate:e.hovertemplate}})),b,{displaylogo:!1})})).catch((function(e){return console.log(e)}))}i&&(f=i.split("-")[0]),t.split("-")[0]!=f&&d("year"),function(){var l="https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=".concat(t).concat(i?"&end=".concat(i):"").concat(a?"&node=".concat(a):"").concat(o?"&network=".concat(o):"").concat(s?"&station=".concat(s):"","&level=station&details=country&hllvalues=true&format=json");fetch(l,{method:"POST",body:e}).then((function(e){if(e.ok)return e.json();throw e.text().then((function(t){t.includes("Internal")||t.includes("Time-out")?document.getElementById("error-map").innerHTML="Service is temporarily unavailable. Please try again.":e.status>=400&&e.status<500&&(document.getElementById("error-map").innerHTML=t.match(/

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=e.results.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e}),{});for(var i in t)t[i].clients=t[i].clients.cardinality();var a=r(106),o=[{locationmode:"ISO-3",locations:Object.values(t).map((function(e){return e.country})).map((function(e){return a(e)})),z:Object.values(t).map((function(e){return e.clients})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}],s={title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],width:1e3,mapbox:{style:"open-street-map",center:{lon:0,lat:20},zoom:0},updatemenus:[{buttons:[{args:[{z:[Object.values(t).map((function(e){return e.clients}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unique Users",method:"update"},{args:[{z:[Object.values(t).map((function(e){return e.bytes}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of bytes per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered to users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Bytes",method:"update"},{args:[{z:[Object.values(t).map((function(e){return e.nb_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Requests",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("country-plots",o,s,{displaylogo:!1});var l=Array.from(new Set(e.results.map((function(e){return e.network?e.network+"."+e.station:e.station})))).sort((function(e,t){return e.localeCompare(t)})).map((function(e,t){return(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)("input",{type:"checkbox",id:"station-".concat(t),value:e,defaultChecked:!0,onChange:d}),(0,Fn.jsx)("label",{htmlFor:"station-".concat(t),children:e})]},t)})),u=document.getElementById("nns-checkboxes");u.innerHTML="",n.createRoot(u).render(l),document.getElementById("mapAndBoxes").style.backgroundColor="white";var c=0,f=null;function d(n){var i=n.target,o=(new Date).getTime(),l=o-c,u=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]'),d=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked').length;i===f&&l<300&&(1===d&&i.checked?u.forEach((function(e){e.checked=!0})):u.forEach((function(e){e.checked=e===i}))),f=i,c=o;var h=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked'),p=[];h.forEach((function(e){p.push(e.value)}));var v=e.results.filter((function(e){return p.includes(e.station)}));for(var g in t=v.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e}),{}))t[g].clients=t[g].clients.cardinality();var y=Object.values(t).map((function(e){return e.country})).map((function(e){return a(e)})),x=s.updatemenus[0].active,b=[{locationmode:"ISO-3",locations:y,z:Object.values(t).map((function(e){return 0===x||void 0===x?e.clients:1===x?e.bytes:2===x?e.nb_reqs:void 0})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}];s.updatemenus[0].buttons.forEach((function(e,r){e&&0===r?e.args[0].z=[Object.values(t).map((function(e){return e.clients}))]:e&&1===r?e.args[0].z=[Object.values(t).map((function(e){return e.bytes}))]:e&&2===r&&(e.args[0].z=[Object.values(t).map((function(e){return e.nb_reqs}))])})),m().react("country-plots",b,s)}})).catch((function(e){return console.log(e)})).finally((function(){clearInterval(c),u.innerHTML=""}))}()}(o,y,_,t(L,D),t(F,j),H,!isNaN(G)&&G>=0?G:void 0);break;default:return void E("Choose level to plot statistics!")}}),200)):E("Specify at least 'Start Time' parameter!")}function X(){return K.apply(this,arguments)}function K(){return K=f(u().mark((function e(){var t,r;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,fetch("https://ws.resif.fr/eidaws/statistics/1/nodes");case 3:if((t=e.sent).ok){e.next=6;break}throw new Error("Failed to fetch nodes");case 6:return e.next=8,t.json();case 8:return r=e.sent,e.abrupt("return",r.nodes.map((function(e){return e.name})).sort());case 12:return e.prev=12,e.t0=e.catch(0),console.error(e.t0),e.abrupt("return",[]);case 16:case"end":return e.stop()}}),e,null,[[0,12]])}))),K.apply(this,arguments)}var $=p((0,e.useState)(!1),2),J=$[0],Q=$[1],ee=p((0,e.useState)([]),2),te=ee[0],re=ee[1],ne=J&&0===te.length;function ie(){return ae.apply(this,arguments)}function ae(){return ae=f(u().mark((function e(){var t,r,n,i;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,fetch("https://ws.resif.fr/eidaws/statistics/1/networks");case 3:if((t=e.sent).ok){e.next=6;break}throw new Error("Failed to fetch networks");case 6:return e.next=8,t.json();case 8:if(r=e.sent,n=new Set,Array.isArray(L)&&L.forEach((function(e){return n.add(e)})),"string"===typeof D&&""!==D&&D.split(",").forEach((function(e){return n.add(e)})),0!==n.size){e.next=17;break}return pe(!0),e.abrupt("return",Array.from(new Set(r.networks.map((function(e){return e.name})))).sort());case 17:return i=r.networks.filter((function(e){return Array.from(n).includes(e.node)})),pe(!0),e.abrupt("return",Array.from(new Set(i.map((function(e){return e.name})))).sort());case 20:e.next=26;break;case 22:return e.prev=22,e.t0=e.catch(0),console.error(e.t0),e.abrupt("return",[]);case 26:case"end":return e.stop()}}),e,null,[[0,22]])}))),ae.apply(this,arguments)}(0,e.useEffect)((function(){var e=!0;if(ne)return f(u().mark((function t(){var r;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,X();case 2:r=t.sent,e&&re(r);case 4:case"end":return t.stop()}}),t)})))(),function(){e=!1}}),[ne]),(0,e.useEffect)((function(){J||re([])}),[J]);var oe=p((0,e.useState)(!1),2),se=oe[0],le=oe[1],ue=p((0,e.useState)([]),2),ce=ue[0],fe=ue[1],de=p((0,e.useState)(!1),2),he=de[0],pe=de[1],ve=se&&!he;return(0,e.useEffect)((function(){var e=!0;if(ve)return f(u().mark((function t(){var r;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,ie();case 2:r=t.sent,e&&fe(r);case 4:case"end":return t.stop()}}),t)})))(),function(){e=!1}}),[ve]),(0,e.useEffect)((function(){se||fe([])}),[se]),(0,e.useEffect)((function(){Z()}),[]),(0,Fn.jsxs)("div",{className:"App",children:[(0,Fn.jsxs)(Ld,{id:"form-container",container:!0,spacing:2,children:[(0,Fn.jsxs)(Ld,{id:"form-left",item:!0,xs:5,children:[(0,Fn.jsx)("h1",{children:"EIDA Statistics Dashboard"}),(0,Fn.jsxs)("div",{className:"info",children:["Dashboard UI to explore usage statistics in the form of plots for services distributed in the ",(0,Fn.jsx)("a",{href:"http://www.orfeus-eu.org/data/eida/",children:"EIDA"})," federation.",(0,Fn.jsx)("br",{}),"For more details, visit the ",(0,Fn.jsx)("a",{href:"https://ws.resif.fr/eidaws/statistics/1/",children:"statistics webservice"}),".",(0,Fn.jsx)("br",{}),"The code of the current dashboard is hosted at ",(0,Fn.jsx)("a",{href:"https://github.com/EIDA/statsboard",children:"github"}),".",(0,Fn.jsx)("br",{}),"The starting date of collecting statistics data is 2020-11.",(0,Fn.jsx)("br",{}),"For members of EIDA federation, choose the authentication below for full access to data."]}),(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)(Of,{control:(0,Fn.jsx)(yd,{checked:i,onChange:function(){a(!i),v(void 0),M("eida"),O([]),R(""),N([]),U(""),q("")}}),label:"Authentication"}),i&&(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)("label",{children:"Select token file: "}),(0,Fn.jsx)("input",{type:"file",onChange:function(e){return v(e.target.files[0])}}),(0,Fn.jsxs)("div",{className:"upload-note",children:["To redeem an EIDA authentication token file visit ",(0,Fn.jsx)("a",{href:"https://geofon.gfz-potsdam.de/eas/",children:"https://geofon.gfz-potsdam.de/eas"}),"."]})]})]}),("network"===T||"station"===T)&&(0,Fn.jsxs)("div",{id:"limit",children:[(0,Fn.jsxs)("label",{children:["Show only top items in the plots and group the rest",(0,Fn.jsxs)("span",{style:{fontSize:"14px"},children:[(0,Fn.jsx)("br",{}),(0,Fn.jsx)("br",{}),"Enter 0 to show all items: "]})]}),(0,Fn.jsx)(Il,{label:"Top N",type:"number",size:"small",sx:{mx:1,my:-1,maxWidth:100},defaultValue:10,inputProps:{min:0},InputLabelProps:{shrink:!0},onChange:function(e){return Y(parseInt(e.target.value,10))}})]})]}),(0,Fn.jsxs)(Ld,{item:!0,xs:5,mt:2,children:[(0,Fn.jsx)("div",{children:(0,Fn.jsx)(yh,{dateAdapter:_g,children:(0,Fn.jsx)(ag,{label:"Start Time",sx:{my:1},views:["year","month"],slotProps:{textField:{size:"small"}},format:"MM-YYYY",onChange:function(e){return x(e?e.$y+"-"+(e.$M+1):void 0)}})})}),(0,Fn.jsx)("div",{children:(0,Fn.jsx)(yh,{dateAdapter:_g,children:(0,Fn.jsx)(ag,{label:"End Time",sx:{my:1},views:["year","month"],slotProps:{textField:{size:"small"}},format:"MM-YYYY",onChange:function(e){return w(e?e.$y+"-"+(e.$M+1):void 0)}})})}),(0,Fn.jsx)("div",{children:(0,Fn.jsxs)(Ga,{children:[(0,Fn.jsx)(za,{id:"demo-row-radio-buttons-group-label",children:"Level"}),(0,Fn.jsxs)(od,{row:!0,"aria-labelledby":"demo-row-radio-buttons-group-label",name:"row-radio-buttons-group",children:[(0,Fn.jsx)(Of,{value:"eida",control:(0,Fn.jsx)(Qf,{checked:"eida"===T,onChange:function(e){M(e.target.value),O([]),R(""),N([]),U(""),q("")}}),label:"EIDA"}),(0,Fn.jsx)(Of,{value:"node",control:(0,Fn.jsx)(Qf,{checked:"node"===T,onChange:function(e){M(e.target.value),N([]),U(""),q("")}}),label:"Node"}),(0,Fn.jsx)(Of,{value:"network",control:(0,Fn.jsx)(Qf,{checked:"network"===T,onChange:function(e){M(e.target.value),q("")}}),label:"Network"}),i&&(0,Fn.jsx)(Of,{value:"station",control:(0,Fn.jsx)(Qf,{checked:"station"===T,onChange:function(e){return M(e.target.value)}}),label:"Station"})]})]})}),"eida"!==T&&(0,Fn.jsx)("div",{children:(0,Fn.jsx)(Jc,{className:"autocomplete",sx:{my:1,minWidth:300},size:"small",freeSolo:!0,multiple:!0,onInputChange:function(e){return R(e.target.value)},onChange:function(e,t){O(t),R("")},options:te,open:J,onOpen:function(){return Q(!0)},onClose:function(){return Q(!1)},isOptionEqualToValue:function(e,t){return e===t},loading:ne,renderInput:function(t){return(0,Fn.jsx)(Il,l(l({},t),{},{label:"Node",InputProps:l(l({},t.InputProps),{},{endAdornment:(0,Fn.jsxs)(e.Fragment,{children:[ne?(0,Fn.jsx)(gf,{color:"inherit",size:20}):null,t.InputProps.endAdornment]})})}))}})}),("network"===T||"station"===T)&&(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)(Jc,{className:"autocomplete",sx:{my:1,minWidth:300},size:"small",freeSolo:!0,multiple:i,onInputChange:function(e){U(e.target.value),e.target.value&&(F.length>0||e.target.value.includes(","))?c(!0):c(!1)},onChange:function(e,t){N(t),U(""),t.length>1?c(!0):c(!1)},options:ce,open:se,onOpen:function(){return le(!0)},onClose:function(){le(!1),pe(!1)},isOptionEqualToValue:function(e,t){return e===t},loading:ve,renderInput:function(t){return(0,Fn.jsx)(Il,l(l({},t),{},{label:"Network",InputProps:l(l({},t.InputProps),{},{endAdornment:(0,Fn.jsxs)(e.Fragment,{children:[ve?(0,Fn.jsx)(gf,{color:"inherit",size:20}):null,t.InputProps.endAdornment]})})}))}}),s&&(0,Fn.jsx)("div",{className:"networks-note",children:"Selecting multiple network requires node operator privileges. Make sure your EIDA account is set up accordingly."})]}),"station"===T&&(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)(Il,{label:"Station",sx:{my:1,minWidth:300},size:"small",variant:"outlined",value:H,onChange:function(e){return q(e.target.value)}}),(0,Fn.jsx)("div",{className:"stations-note",children:"Comma-separated list, e.g. STA1,STA2"})]})]})]}),(0,Fn.jsx)(Ti,{sx:{m:.5},variant:"contained",onClick:Z,children:"Make Plots"}),S&&(0,Fn.jsx)("div",{className:"error-message",children:S}),!S&&(0,Fn.jsxs)(Fn.Fragment,{children:[(0,Fn.jsx)("div",{id:"loading-msg"}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-total"}),(0,Fn.jsxs)(Ld,{container:!0,spacing:2,children:[(0,Fn.jsx)(Ld,{item:!0,xs:12,lg:4,children:(0,Fn.jsx)("div",{className:"plot",id:"total-clients"})}),(0,Fn.jsx)(Ld,{item:!0,xs:12,lg:4,children:(0,Fn.jsx)("div",{className:"plot",id:"total-bytes"})}),(0,Fn.jsx)(Ld,{item:!0,xs:12,lg:4,children:(0,Fn.jsx)("div",{className:"plot",id:"total-requests"})})]}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-month"}),(0,Fn.jsx)("div",{className:"plot",id:"month-plots"}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-year"}),(0,Fn.jsx)("div",{className:"plot",id:"year-plots"}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-map"}),(0,Fn.jsxs)("div",{id:"mapAndBoxes",children:[(0,Fn.jsx)("div",{id:"country-plots"}),(0,Fn.jsx)("div",{id:"nns-checkboxes"})]})]})]})},Tg=function(e){e&&e instanceof Function&&r.e(787).then(r.bind(r,787)).then((function(t){var r=t.getCLS,n=t.getFID,i=t.getFCP,a=t.getLCP,o=t.getTTFB;r(e),n(e),i(e),a(e),o(e)}))};n.createRoot(document.getElementById("root")).render((0,Fn.jsx)(e.StrictMode,{children:(0,Fn.jsx)(kg,{})})),Tg()}()}(); +//# sourceMappingURL=main.c8287e73.js.map \ No newline at end of file diff --git a/static/js/main.7bab7422.js.LICENSE.txt b/static/js/main.c8287e73.js.LICENSE.txt similarity index 100% rename from static/js/main.7bab7422.js.LICENSE.txt rename to static/js/main.c8287e73.js.LICENSE.txt diff --git a/static/js/main.c8287e73.js.map b/static/js/main.c8287e73.js.map new file mode 100644 index 0000000..1d88842 --- /dev/null +++ b/static/js/main.c8287e73.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/main.c8287e73.js","mappings":"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,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,MACJC,GAAI,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ADgB,CAAC,OAAQklE,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAIA,GAAa,EAAG,EAAG,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,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","sources":["js_hll.js","../node_modules/@mui/material/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/@mui/material/node_modules/react-is/index.js","../node_modules/@mui/utils/setRef.js","../node_modules/@mui/utils/useControlled.js","../node_modules/@mui/utils/useEnhancedEffect.js","../node_modules/@mui/utils/useEventCallback.js","../node_modules/@mui/utils/useForkRef.js","../node_modules/@mui/utils/useId.js","../node_modules/country-iso-2-to-3/index.js","../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/customParseFormat.js","../node_modules/dayjs/plugin/isBetween.js","../node_modules/dayjs/plugin/localizedFormat.js","../node_modules/dayjs/plugin/weekOfYear.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.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/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/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../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/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.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/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/clsx/dist/clsx.m.js","../node_modules/@mui/utils/esm/resolveProps.js","../node_modules/@mui/utils/esm/composeClasses/composeClasses.js","../node_modules/@mui/utils/esm/formatMuiErrorMessage.js","../node_modules/@mui/system/esm/colorManipulator.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/@emotion/memoize/dist/emotion-memoize.esm.js","../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","../node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Serializer.js","../node_modules/stylis/src/Parser.js","../node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","../node_modules/stylis/src/Middleware.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js","../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js","../node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","../node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","../node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js","../node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js","../node_modules/@mui/utils/esm/deepmerge.js","../node_modules/@mui/system/esm/createTheme/createBreakpoints.js","../node_modules/@mui/system/esm/createTheme/shape.js","../node_modules/@mui/system/esm/breakpoints.js","../node_modules/@mui/utils/esm/capitalize.js","../node_modules/@mui/system/esm/style.js","../node_modules/@mui/system/esm/merge.js","../node_modules/@mui/system/esm/spacing.js","../node_modules/@mui/system/esm/memoize.js","../node_modules/@mui/system/esm/compose.js","../node_modules/@mui/system/esm/borders.js","../node_modules/@mui/system/esm/cssGrid.js","../node_modules/@mui/system/esm/palette.js","../node_modules/@mui/system/esm/sizing.js","../node_modules/@mui/system/esm/styleFunctionSx/defaultSxConfig.js","../node_modules/@mui/system/esm/styleFunctionSx/styleFunctionSx.js","../node_modules/@mui/system/esm/createTheme/createTheme.js","../node_modules/@mui/system/esm/createTheme/createSpacing.js","../node_modules/@mui/system/esm/propsToClassKey.js","../node_modules/@mui/system/esm/createStyled.js","../node_modules/@mui/material/styles/createMixins.js","../node_modules/@mui/material/colors/common.js","../node_modules/@mui/material/colors/grey.js","../node_modules/@mui/material/colors/purple.js","../node_modules/@mui/material/colors/red.js","../node_modules/@mui/material/colors/orange.js","../node_modules/@mui/material/colors/blue.js","../node_modules/@mui/material/colors/lightBlue.js","../node_modules/@mui/material/colors/green.js","../node_modules/@mui/material/styles/createPalette.js","../node_modules/@mui/material/styles/createTypography.js","../node_modules/@mui/material/styles/shadows.js","../node_modules/@mui/material/styles/createTransitions.js","../node_modules/@mui/material/styles/zIndex.js","../node_modules/@mui/material/styles/createTheme.js","../node_modules/@mui/material/styles/defaultTheme.js","../node_modules/@mui/material/styles/identifier.js","../node_modules/@mui/material/styles/styled.js","../node_modules/@mui/styled-engine/index.js","../node_modules/@mui/system/esm/useThemeProps/getThemeProps.js","../node_modules/@mui/system/esm/useThemeWithoutDefault.js","../node_modules/@mui/system/esm/useTheme.js","../node_modules/@mui/material/styles/useThemeProps.js","../node_modules/@mui/system/esm/useThemeProps/useThemeProps.js","../node_modules/@mui/utils/esm/setRef.js","../node_modules/@mui/utils/esm/useForkRef.js","../node_modules/@mui/material/utils/useForkRef.js","../node_modules/@mui/utils/esm/useEnhancedEffect.js","../node_modules/@mui/utils/esm/useEventCallback.js","../node_modules/@mui/material/utils/useEventCallback.js","../node_modules/@mui/utils/esm/useIsFocusVisible.js","../node_modules/@mui/material/utils/useIsFocusVisible.js","../node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/react-transition-group/esm/TransitionGroupContext.js","../node_modules/react-transition-group/esm/utils/ChildMapping.js","../node_modules/react-transition-group/esm/TransitionGroup.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@emotion/react/dist/emotion-react.browser.esm.js","../node_modules/@mui/material/ButtonBase/Ripple.js","../node_modules/@mui/utils/esm/ClassNameGenerator/ClassNameGenerator.js","../node_modules/@mui/utils/esm/generateUtilityClass/generateUtilityClass.js","../node_modules/@mui/utils/esm/generateUtilityClasses/generateUtilityClasses.js","../node_modules/@mui/material/ButtonBase/touchRippleClasses.js","../node_modules/@mui/material/ButtonBase/TouchRipple.js","../node_modules/@mui/material/ButtonBase/buttonBaseClasses.js","../node_modules/@mui/material/ButtonBase/ButtonBase.js","../node_modules/@mui/material/utils/capitalize.js","../node_modules/@mui/material/Button/buttonClasses.js","../node_modules/@mui/material/ButtonGroup/ButtonGroupContext.js","../node_modules/@mui/material/Button/Button.js","../node_modules/@mui/utils/esm/useId.js","../node_modules/@mui/utils/esm/ownerDocument.js","../node_modules/@mui/utils/esm/ownerWindow.js","../node_modules/@mui/utils/esm/debounce.js","../node_modules/@mui/base/TextareaAutosize/TextareaAutosize.js","../node_modules/@mui/base/utils/isHostComponent.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/utils/useEnhancedEffect.js","../node_modules/@mui/styled-engine/GlobalStyles/GlobalStyles.js","../node_modules/@mui/system/esm/GlobalStyles/GlobalStyles.js","../node_modules/@mui/material/GlobalStyles/GlobalStyles.js","../node_modules/@mui/material/InputBase/utils.js","../node_modules/@mui/material/InputBase/inputBaseClasses.js","../node_modules/@mui/material/InputBase/InputBase.js","../node_modules/@mui/material/Input/inputClasses.js","../node_modules/@mui/material/Input/Input.js","../node_modules/@mui/material/FilledInput/filledInputClasses.js","../node_modules/@mui/material/FilledInput/FilledInput.js","../node_modules/@mui/material/OutlinedInput/NotchedOutline.js","../node_modules/@mui/material/OutlinedInput/outlinedInputClasses.js","../node_modules/@mui/material/OutlinedInput/OutlinedInput.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/material/FormControl/formControlClasses.js","../node_modules/@mui/material/FormControl/FormControl.js","../node_modules/@mui/material/FormHelperText/formHelperTextClasses.js","../node_modules/@mui/material/FormHelperText/FormHelperText.js","../node_modules/@mui/material/utils/ownerDocument.js","../node_modules/@mui/material/List/ListContext.js","../node_modules/@mui/material/List/listClasses.js","../node_modules/@mui/material/List/List.js","../node_modules/@mui/utils/esm/getScrollbarSize.js","../node_modules/@mui/material/utils/getScrollbarSize.js","../node_modules/@mui/material/MenuList/MenuList.js","../node_modules/@mui/base/utils/omitEventHandlers.js","../node_modules/@mui/base/utils/mergeSlotProps.js","../node_modules/@mui/base/utils/extractEventHandlers.js","../node_modules/@mui/base/utils/resolveComponentProps.js","../node_modules/@mui/base/utils/useSlotProps.js","../node_modules/@mui/base/utils/appendOwnerState.js","../node_modules/@mui/material/utils/debounce.js","../node_modules/@mui/material/utils/ownerWindow.js","../node_modules/react-transition-group/esm/config.js","../node_modules/react-transition-group/esm/utils/reflow.js","../node_modules/react-transition-group/esm/Transition.js","../node_modules/@mui/material/styles/useTheme.js","../node_modules/@mui/material/transitions/utils.js","../node_modules/@mui/material/Grow/Grow.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/@mui/base/Portal/Portal.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@mui/base/Modal/ModalManager.js","../node_modules/@mui/base/FocusTrap/FocusTrap.js","../node_modules/@mui/base/Modal/modalClasses.js","../node_modules/@mui/base/utils/ClassNameConfigurator.js","../node_modules/@mui/base/Modal/Modal.js","../node_modules/@mui/material/Fade/Fade.js","../node_modules/@mui/material/Backdrop/backdropClasses.js","../node_modules/@mui/material/Backdrop/Backdrop.js","../node_modules/@mui/material/Modal/Modal.js","../node_modules/@mui/material/styles/getOverlayAlpha.js","../node_modules/@mui/material/Paper/paperClasses.js","../node_modules/@mui/material/Paper/Paper.js","../node_modules/@mui/material/Popover/popoverClasses.js","../node_modules/@mui/material/Popover/Popover.js","../node_modules/@mui/material/Menu/menuClasses.js","../node_modules/@mui/material/Menu/Menu.js","../node_modules/@mui/material/NativeSelect/nativeSelectClasses.js","../node_modules/@mui/material/NativeSelect/NativeSelectInput.js","../node_modules/@mui/utils/esm/useControlled.js","../node_modules/@mui/material/utils/useControlled.js","../node_modules/@mui/material/Select/selectClasses.js","../node_modules/@mui/material/Select/SelectInput.js","../node_modules/@mui/material/SvgIcon/svgIconClasses.js","../node_modules/@mui/material/SvgIcon/SvgIcon.js","../node_modules/@mui/material/utils/createSvgIcon.js","../node_modules/@mui/material/internal/svg-icons/ArrowDropDown.js","../node_modules/@mui/material/Select/Select.js","../node_modules/@mui/material/TextField/textFieldClasses.js","../node_modules/@mui/material/TextField/TextField.js","../node_modules/@mui/utils/esm/usePreviousProps.js","../node_modules/@mui/base/useAutocomplete/useAutocomplete.js","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/@mui/base/Popper/popperClasses.js","../node_modules/@mui/base/Popper/Popper.js","../node_modules/@mui/material/Popper/Popper.js","../node_modules/@mui/material/ListSubheader/listSubheaderClasses.js","../node_modules/@mui/material/ListSubheader/ListSubheader.js","../node_modules/@mui/material/IconButton/iconButtonClasses.js","../node_modules/@mui/material/IconButton/IconButton.js","../node_modules/@mui/material/internal/svg-icons/Cancel.js","../node_modules/@mui/material/Chip/chipClasses.js","../node_modules/@mui/material/Chip/Chip.js","../node_modules/@mui/material/internal/svg-icons/Close.js","../node_modules/@mui/material/Autocomplete/autocompleteClasses.js","../node_modules/@mui/material/Autocomplete/Autocomplete.js","../node_modules/@mui/material/CircularProgress/circularProgressClasses.js","../node_modules/@mui/material/CircularProgress/CircularProgress.js","../node_modules/@mui/system/esm/styleFunctionSx/extendSxProp.js","../node_modules/@mui/material/Typography/typographyClasses.js","../node_modules/@mui/material/Typography/Typography.js","../node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js","../node_modules/@mui/material/FormControlLabel/FormControlLabel.js","../node_modules/@mui/material/internal/switchBaseClasses.js","../node_modules/@mui/material/internal/SwitchBase.js","../node_modules/@mui/material/internal/svg-icons/RadioButtonUnchecked.js","../node_modules/@mui/material/internal/svg-icons/RadioButtonChecked.js","../node_modules/@mui/material/Radio/RadioButtonIcon.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/RadioGroup/RadioGroupContext.js","../node_modules/@mui/material/Radio/radioClasses.js","../node_modules/@mui/material/Radio/Radio.js","../node_modules/@mui/material/RadioGroup/useRadioGroup.js","../node_modules/@mui/material/FormGroup/formGroupClasses.js","../node_modules/@mui/material/FormGroup/FormGroup.js","../node_modules/@mui/material/utils/useId.js","../node_modules/@mui/material/RadioGroup/RadioGroup.js","../node_modules/@mui/material/internal/svg-icons/CheckBoxOutlineBlank.js","../node_modules/@mui/material/internal/svg-icons/CheckBox.js","../node_modules/@mui/material/internal/svg-icons/IndeterminateCheckBox.js","../node_modules/@mui/material/Checkbox/checkboxClasses.js","../node_modules/@mui/material/Checkbox/Checkbox.js","../node_modules/@mui/material/Grid/GridContext.js","../node_modules/@mui/material/Grid/gridClasses.js","../node_modules/@mui/material/Grid/Grid.js","../node_modules/@mui/material/useMediaQuery/useMediaQuery.js","../node_modules/@mui/x-date-pickers/internals/utils/views.js","../node_modules/@mui/x-date-pickers/internals/utils/date-utils.js","../node_modules/@mui/x-date-pickers/internals/utils/time-utils.js","../node_modules/@mui/x-date-pickers/internals/utils/getDefaultReferenceDate.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useField.utils.js","../node_modules/@mui/x-date-pickers/internals/utils/valueManagers.js","../node_modules/@mui/x-date-pickers/LocalizationProvider/LocalizationProvider.js","../node_modules/@mui/x-date-pickers/locales/enUS.js","../node_modules/@mui/x-date-pickers/internals/hooks/useUtils.js","../node_modules/@mui/x-date-pickers/locales/utils/getPickersLocalization.js","../node_modules/@mui/x-date-pickers/internals/components/pickersToolbarClasses.js","../node_modules/@mui/x-date-pickers/internals/components/PickersToolbar.js","../node_modules/@mui/x-date-pickers/DatePicker/datePickerToolbarClasses.js","../node_modules/@mui/x-date-pickers/DatePicker/DatePickerToolbar.js","../node_modules/@mui/x-date-pickers/internals/utils/slots-migration.js","../node_modules/@mui/x-date-pickers/DatePicker/shared.js","../node_modules/@mui/x-date-pickers/internals/utils/validation/validateDate.js","../node_modules/@mui/material/InputAdornment/inputAdornmentClasses.js","../node_modules/@mui/material/InputAdornment/InputAdornment.js","../node_modules/@mui/x-date-pickers/internals/components/pickersPopperClasses.js","../node_modules/@mui/x-date-pickers/internals/utils/utils.js","../node_modules/@mui/x-date-pickers/internals/components/PickersPopper.js","../node_modules/@mui/x-date-pickers/internals/hooks/useValidation.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePickerValue.js","../node_modules/@mui/x-date-pickers/internals/hooks/useOpenState.js","../node_modules/@mui/x-date-pickers/internals/hooks/useViews.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePickerViews.js","../node_modules/@mui/x-date-pickers/internals/hooks/useIsLandscape.js","../node_modules/@mui/x-date-pickers/internals/utils/warning.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePicker.js","../node_modules/@mui/x-date-pickers/internals/hooks/usePicker/usePickerLayoutProps.js","../node_modules/@mui/x-date-pickers/PickersLayout/pickersLayoutClasses.js","../node_modules/@mui/material/DialogActions/dialogActionsClasses.js","../node_modules/@mui/material/DialogActions/DialogActions.js","../node_modules/@mui/x-date-pickers/PickersActionBar/PickersActionBar.js","../node_modules/@mui/material/ListItem/listItemClasses.js","../node_modules/@mui/material/ListItemButton/listItemButtonClasses.js","../node_modules/@mui/material/ListItemSecondaryAction/listItemSecondaryActionClasses.js","../node_modules/@mui/material/ListItemSecondaryAction/ListItemSecondaryAction.js","../node_modules/@mui/material/ListItem/ListItem.js","../node_modules/@mui/x-date-pickers/internals/constants/dimensions.js","../node_modules/@mui/x-date-pickers/PickersShortcuts/PickersShortcuts.js","../node_modules/@mui/x-date-pickers/PickersLayout/usePickerLayout.js","../node_modules/@mui/x-date-pickers/PickersLayout/PickersLayout.js","../node_modules/@mui/x-date-pickers/internals/hooks/useDesktopPicker/useDesktopPicker.js","../node_modules/@mui/x-date-pickers/icons/index.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useFieldState.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useFieldCharacterEditing.js","../node_modules/@mui/x-date-pickers/internals/hooks/useField/useField.js","../node_modules/@mui/x-date-pickers/internals/utils/validation/extractValidationProps.js","../node_modules/@mui/x-date-pickers/internals/utils/fields.js","../node_modules/@mui/x-date-pickers/DateField/useDateField.js","../node_modules/@mui/x-date-pickers/DateField/DateField.js","../node_modules/@mui/x-date-pickers/DateCalendar/useIsDateDisabled.js","../node_modules/@mui/x-date-pickers/DateCalendar/useCalendarState.js","../node_modules/@mui/x-date-pickers/DateCalendar/pickersFadeTransitionGroupClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/PickersFadeTransitionGroup.js","../node_modules/@mui/x-date-pickers/PickersDay/pickersDayClasses.js","../node_modules/@mui/x-date-pickers/PickersDay/PickersDay.js","../node_modules/dom-helpers/esm/removeClass.js","../node_modules/react-transition-group/esm/CSSTransition.js","../node_modules/dom-helpers/esm/addClass.js","../node_modules/dom-helpers/esm/hasClass.js","../node_modules/@mui/x-date-pickers/DateCalendar/pickersSlideTransitionClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/PickersSlideTransition.js","../node_modules/@mui/x-date-pickers/DateCalendar/dayCalendarClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/DayCalendar.js","../node_modules/@mui/x-date-pickers/MonthCalendar/pickersMonthClasses.js","../node_modules/@mui/x-date-pickers/MonthCalendar/PickersMonth.js","../node_modules/@mui/x-date-pickers/MonthCalendar/monthCalendarClasses.js","../node_modules/@mui/x-date-pickers/MonthCalendar/MonthCalendar.js","../node_modules/@mui/x-date-pickers/YearCalendar/pickersYearClasses.js","../node_modules/@mui/x-date-pickers/YearCalendar/PickersYear.js","../node_modules/@mui/x-date-pickers/YearCalendar/yearCalendarClasses.js","../node_modules/@mui/x-date-pickers/YearCalendar/YearCalendar.js","../node_modules/@mui/x-date-pickers/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.js","../node_modules/@mui/x-date-pickers/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js","../node_modules/@mui/x-date-pickers/DateCalendar/pickersCalendarHeaderClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/PickersCalendarHeader.js","../node_modules/@mui/x-date-pickers/internals/hooks/date-helpers-hooks.js","../node_modules/@mui/x-date-pickers/internals/components/PickerViewRoot/PickerViewRoot.js","../node_modules/@mui/x-date-pickers/internals/utils/defaultReduceAnimations.js","../node_modules/@mui/x-date-pickers/DateCalendar/dateCalendarClasses.js","../node_modules/@mui/x-date-pickers/DateCalendar/DateCalendar.js","../node_modules/@mui/x-date-pickers/dateViewRenderers/dateViewRenderers.js","../node_modules/@mui/x-date-pickers/DesktopDatePicker/DesktopDatePicker.js","../node_modules/@mui/material/DialogContent/dialogContentClasses.js","../node_modules/@mui/material/DialogTitle/dialogTitleClasses.js","../node_modules/@mui/material/DialogContent/DialogContent.js","../node_modules/@mui/material/Dialog/dialogClasses.js","../node_modules/@mui/material/Dialog/DialogContext.js","../node_modules/@mui/material/Dialog/Dialog.js","../node_modules/@mui/x-date-pickers/internals/components/PickersModalDialog.js","../node_modules/@mui/x-date-pickers/internals/hooks/useMobilePicker/useMobilePicker.js","../node_modules/@mui/x-date-pickers/MobileDatePicker/MobileDatePicker.js","../node_modules/@mui/x-date-pickers/DatePicker/DatePicker.js","../node_modules/@mui/x-date-pickers/AdapterDayjs/AdapterDayjs.js","App.js","plotsEIDA.js","plotsNode.js","plotsNetwork.js","plotsStation.js","reportWebVitals.js","index.js"],"sourcesContent":["// Code taken and modified from: https://github.com/aggregateknowledge/js-hll\n\nmodule.exports = {\n HLL: HLL,\n fromHexString: fromHexString\n};\n\n// ** Config ***************************************************************\n// default register width and number when loading explicit sets\nvar DEFAULT_REGISTER_WIDTH = 5/*schema v1*/,\n DEFAULT_LOG2M = 13/*schema v1*/;\n\n// -------------------------------------------------------------------------\nvar LOWER = 0/*lower 32bits of the hashed value*/,\n UPPER = 1/*upper 32bits of the hashed value*/;\n\n// ** Set Representation ***************************************************\n/**\n * Creates a new HLL structure with the specified precision.\n *\n * @param {Number} [log2m=DEFAULT_LOG2M] the log-base-2 of the number of\n * registers. This cannot be less than four or greater than 24.\n * @param {Number} [registerWidth=DEFAULT_REGISTER_WIDTH] the width in bits\n * of the register values. This is ceil(log2(log2(expectedUniqueElements)))\n * and cannot be less than one or greater than five.\n * @constructor\n */\n// NOTE: the register width is limited to at most 5 since that provides for\n// a maximum register value of 31 which is the limit of the JavaScript\n// bit shifting operators.\nfunction HLL (log2m, registerWidth) {\n var self = {};\n\n if(arguments.length < 1) log2m = DEFAULT_LOG2M;\n if(arguments.length < 2) registerWidth = DEFAULT_REGISTER_WIDTH;\n if((log2m < 4) || (log2m > 24)) throw new Error(\"Register width must be between 4 and 24 inclusive (log2m = \" + log2m + \").\");\n if((registerWidth < 1) || (registerWidth > 5)) throw new Error(\"Register width must be between 1 and 5 inclusive (registerWidth = \" + registerWidth + \").\");\n\n // .. initialization ...................................................\n self.log2m = log2m;\n self.m = 1 << log2m/*for convenience*/;\n self.registerWidth = registerWidth;\n\n // NOTE: there are two approaches that can be taken on storage:\n // 1. Simply use an array of register values. This results in\n // the easiest to read and maintain code but consumes considerably\n // more memory than is necessary. (64bits are used for every\n // register even though the register width is always less\n // than or equal to 6.)\n // 2. Use an ArrayBuffer to encode exactly '2^log2m * registerWidth'\n // bits. This results in highly complex code to both read and\n // maintain but is provides for optimal storage.\n // Currently the first approach is taken.\n self.registers = [];\n for(var i=self.m-1; i>=0; i--) self.registers.push(0);\n\n // .. initialize meta values ...........................................\n // register count/width meta values\n var maxRegisterValue = ((1 << self.registerWidth/*2^registerWidth*/) - 1) >>> 0;\n var registerIndexMask = ((1 << log2m) - 1) >>> 0/*the mask applied to the lower-4bytes of the hashed value to get the register index*/;\n\n // cardinality estimation meta values\n var PW_BITS = maxRegisterValue - 1,\n L = PW_BITS + log2m,\n TWO_TO_L = Math.pow(2, L)/*L may be larger than 32 so '<<' cannot be used*/;\n\n var LARGE_ESTIMATOR_CUTOFF = (TWO_TO_L / 30),\n SMALL_ESTIMATOR_CUTOFF = 5 * self.registers.length/*m*/ / 2;\n\n var ALPHA_M_SQUARED = cardinalityAlphaMSquared(self.m);\n\n // =====================================================================\n function rho(value/*w*/) {\n // NOTE: by contract the value must be 32bits (therefore only LOWER is needed)\n // NOTE: there are two approaches: mask \"value\" so that there are 1's\n // in the upper bits or do a min. The former is more performant\n // the latter is easier to read.\n var lsb = leastSignificantBit(value[LOWER]) + 1/*since 1-based*/;\n return Math.min(maxRegisterValue, lsb);\n };\n\n /**\n * @param {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values (of a 64bit hashed value)\n * to be added to this set. This must be specified and cannot be\n * null.\n * @returns {hll.HLL}\n */\n self.addRaw = function(hashValue) {\n var registerIndex = hashValue[LOWER] & registerIndexMask/*by contract <32bits so LOWER is sufficient*/;\n var registerValue = rho(shiftRightUnsignedLong(hashValue, log2m));\n self.registers[registerIndex] = Math.max(self.registers[registerIndex], registerValue);\n };\n\n // ---------------------------------------------------------------------\n /**\n * @returns {Number} the estimated cardinality of the set as a floating\n * point number.\n * @see http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf\n */\n self.algorithmCardinality = function() {\n var m = self.m/*for convenience*/;\n\n // compute the \"indicator function\" -- sum(2^(-M[j])) where M[j] is\n // the 'j'th register value\n var sum = 0.0;\n var numberOfZeroes = 0/*\"V\" in the paper*/;\n var registers = self.registers/*for performance*/;\n for(var j=m-1; j>=0; j--) {\n var registerValue = registers[j];\n\n sum += 1.0 / ((1 << registerValue/*2^registerValue*/)/*registerValue < 32 by contract*/ >>> 0)/*unsigned*/;\n if(registerValue == 0) numberOfZeroes++;\n }\n\n // apply the estimate and correction to the indicator function\n var estimator = ALPHA_M_SQUARED / sum;\n if((numberOfZeroes != 0) && (estimator < SMALL_ESTIMATOR_CUTOFF))\n return m * Math.log(m / numberOfZeroes);\n else if(estimator <= LARGE_ESTIMATOR_CUTOFF)\n return estimator;\n else\n return (-1 * TWO_TO_L) * Math.log(1.0 - (estimator / TWO_TO_L));\n };\n\n /**\n * @returns {Number} the estimated cardinality of the set ceil'd\n * up to an integral number.\n * @see http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf\n */\n self.cardinality = function() {\n return Math.ceil(self.algorithmCardinality());\n };\n\n // ---------------------------------------------------------------------\n /**\n * @return {Number} the standard error based on log2m (the number of registers)\n * @see http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf\n */\n self.cardinalityError = function() {\n return 1.04 / Math.sqrt(1 << log2m/*2^log2m = m*/);\n };\n\n // =====================================================================\n /**\n * @param {hll.HLL} otherSet another HLL. log2m and registerWidth\n * must be identical for the two sets otherwise an exception is\n * thrown. This set is not modified in any way.\n * @returns {hll.HLL} the unioned results (which is this object).\n * @throws {Error} if the log2m and registerWidth\n * of this set and the specified one do not match.\n */\n self.union = function(otherSet) {\n // NOTE: currently precluding unioning with different sized sets\n if((self.log2m != otherSet.log2m) || (self.registerWidth != otherSet.registerWidth)) throw new Error(\"Union of sets with different 'log2m' \" + ((self.log2m == otherSet.log2m) ? \"\" : \"(\" + self.log2m + \" != \" + otherSet.log2m + \") \") + \"or 'registerWidth'\" + ((self.registerWidth == otherSet.registerWidth) ? \"\" : \" (\" + self.registerWidth + \" != \" + otherSet.registerWidth + \")\") + \".\");\n\n var selfRegisterCount = self.m,\n otherRegisterCount = otherSet.m;\n var registerCount = Math.min(selfRegisterCount, otherRegisterCount);\n\n // TODO: re-incorporate when contract updated\n // TODO: don't change 'otherSet' since it's not in the contract. Make a clone.\n // // 'fold' the larger set until it is the same size as this set\n // var largerSet = selfRegisterCount > otherRegisterCount ? self : otherSet;\n // while(largerSet.registers.length != registerCount)\n // largerSet.fold();\n\n var selfRegisters = self.registers/*for performance*/,\n otherRegisters = otherSet.registers/*for performance*/;\n for(var i=registerCount-1; i>=0; i--)\n selfRegisters[i] = Math.max(selfRegisters[i], otherRegisters[i]);\n\n return self;\n };\n\n /**\n * 'Folds' a set down to the specified log2m as per\n * {@link http://blog.aggregateknowledge.com/2012/09/12/set-operations-on-hlls-of-different-sizes/}.\n *\n * @param {Number} the desired log2m (which determines the\n * relative error) of the HLL. This cannot be less than one or\n * greater than the current value.\n * @returns {hll.HLL} a duplicate of this set, folded to match the specified\n * log2m. The current set is left untouched.\n * @throws {Error} if the specified log2m is less than two\n * or greater than the current value.\n */\n self.fold = function(log2m) {\n if(log2m == self.log2m) return self.clone()/*trivial case -- by contract it must be a duplicate*/;\n if((log2m < 1) || (log2m > self.log2m)) throw new Error(\"'log2m' cannot be less than 1 or greater than the current value.\");\n\n // assume log2m=6 and registerWidth=5. Then there will be 6bits that\n // compose the index (I) and at most '2^5 - 1 = 31' bits that compose\n // the register value (V):\n // 0b ---- ---- ---V VVVV VVVV VVVV VVVV VVVV VVVV VVVV VVII IIII\n // Folding by one (log2m=6 -> log2m=5) means that one bit that was\n // previously in the index is now part of the register value:\n // 0b ---- ---- ---- VVVV VVVV VVVV VVVV VVVV VVVV VVVV VvVI IIII\n // (shown as a lower case 'v' to make it clear). Since the HLL\n // algorithm uses the least-significant set bit ('1') of the register\n // value, there are two possible cases:\n // 1. The upper bit of the old index (which is now the lower bit\n // of the register value) was set to '1' in which case the new\n // register value is '1';\n // 2. The upper bit of the old index was set to '0' in which case\n // the new register value is 'min(oldRegisterValue + 1, 31)';\n // Case #1 means that the upper half of the registers can be ignored\n // since the *maximum* register value of case #1 is '1' where as the\n // *minimum* register value in case #2 is '1'.\n // This can be easily extended to folding 'n' times.\n // SEE: http://blog.aggregateknowledge.com/2013/03/25/hyperloglog-engineering-choosing-the-right-bits/\n // NOTE: since 'registerWidth' does not change the same 'maxRegisterValue'\n // is to be used\n var hllSet = new HLL(log2m, self.registerWidth);\n var foldedRegisters = hllSet.registers/*for performance*/,\n selfRegisters = self.registers/*for performance*/;\n var difference = self.log2m - log2m,\n foldedM = hllSet.m/*by definition*/;\n for(var i=foldedM-1; i>=0; i--)\n foldedRegisters[i] = Math.min(selfRegisters[i] + difference, maxRegisterValue)/*bound above by 'maxRegisterValue'*/;\n\n return hllSet;\n };\n\n // =====================================================================\n /**\n * @returns {hll.HLL} a clone of this set (with no remaining references\n * to the original set.\n */\n self.clone = function() {\n var clone = new HLL(self.log2m, self.registerWidth);\n // copy all registers\n var selfRegisters = self.registers/*for performance*/,\n cloneRegisters = clone.registers/*for performance*/;\n for(var i=self.m-1; i>=0; i--)\n cloneRegisters[i] = selfRegisters[i];\n\n return clone;\n };\n\n /**\n * @returns {hll.HLL} this object with all of its register values set\n * to zero.\n */\n self.clear = function() {\n var registers = self.registers/*for performance*/;\n for(var i=self.m-1; i>=0; i--)\n registers[i] = 0/*clear*/;\n\n return self;\n };\n\n // =====================================================================\n /**\n * Encodes this structure into a hexadecimal string in the format\n * described in STORAGE.markdown schema version 1. Only\n * FULL representations are supported.\n *\n * @return {String} the string that encodes this HLL structure\n */\n self.toHexString = function() {\n // byte layout VPCB*'\n var writer = new ByteWriter();\n\n // version byte: schema 1, full\n writer.addBits(0x14, 8);\n // parameter byte:\n // * top 3 bits: registerWidth - 1\n // * bottom 5 bits: log2m\n writer.addBits(registerWidth - 1, 3);\n writer.addBits(log2m, 5);\n // cutoff byte\n writer.addBits(0, 8)/*1 bit of padding, explicit enabled = 0, explicit cuttoff = 0*/;\n\n // The data bytes encode the register values in 'registerWidth'-bit-wide\n // \"short words\". The words are stored in _ascending_ index order\n\n // If 'BITS = registerWidth * numberOfRegisters' is not divisible by\n // 8, then 'BITS % 8' padding bits are added to the _bottom_ of the\n // _last_ byte of the array\n\n // The short words are written from the top of the zero-th byte of\n // the array to the bottom of the last byte of the array, with the\n // high bits of the short words toward the high bits of the byte.\n\n var m = self.m/*for performance*/;\n var registers = self.registers/*for performance*/;\n for(var i=0; i4), and cannot be greater than 65536 (216).\n * @returns {Number} gamma times m squared where gamma is based\n * on the value of m\n * @throws {Error} if m is less than 16\n */\nfunction cardinalityAlphaMSquared(m) {\n switch(m) {\n case 1/*2^0*/:\n case 2/*2^1*/:\n case 4/*2^2*/:\n case 8/*2^3*/:\n throw new Error(\"'m' cannot be less than 16 (\" + m + \" < 16).\");\n\n case 16/*2^4*/:\n return 0.673 * m * m;\n\n case 32/*2^5*/:\n return 0.697 * m * m;\n\n case 64/*2^6*/:\n return 0.709 * m * m;\n\n default/*>2^6*/:\n return (0.7213 / (1.0 + 1.079 / m)) * m * m;\n }\n}\n\n// ** Parsing **************************************************************\n// number of bits in a byte\nvar BITS_IN_BYTE = 8;\n\n// schema version constants\nvar SCHEMA1 = 1;\n\n// algorithm constants\nvar algorithm = {\n EMPTY: \"Empty\",\n EXPLICIT: \"Explicit\",\n SPARSE: \"Sparse\",\n FULL: \"Full\",\n UNDEFINED: \"Undefined\"\n};\n\n// schema version 1 algorithm indexes\nvar schema1 = {\n UNDEFINED : 0,\n EMPTY : 1,\n EXPLICIT : 2,\n SPARSE : 3,\n FULL : 4\n};\n\n// =========================================================================\n/**\n * Decodes an HLL encoded in the specified hexadecimal string as defined by\n * STORAGE.markdown.\n *\n * @param {String} string the string to decode\n * @returns {{hllSet: hll.HLL, version: Number, algorithm: String}}\n * set the HLL object loaded from the hex string.\n * version the schema version number.\n * algorithm the name of the encoding {@link hll.algorithm algorithm}.\n */\nfunction fromHexString (string) {\n var arrayBuffer = hexToArrayBuffer(string);\n return parseSet(arrayBuffer);\n};\n\n/**\n * @param {ByteArray} arrayBuffer an encoded HLL as defined by STORAGE.markdown.\n * @returns {{hllSet: hll.HLL, version: Number, algorithm: String}}\n * hllSet the HLL object loaded from the hex string.\n * version the schema version number.\n * algorithm the name of the encoding {@link hll.algorithm algorithm}.\n */\nvar parseSet = function(arrayBuffer) {\n // SEE: STORAGE.markdown\n\n // byte array format: V*\n var bytes = new Uint8Array(arrayBuffer);\n\n // the schema value is stored in the upper nibble of the version byte,\n // while the algorithm version is stored in the lower nibble of that byte\n var version = upperNibble(bytes[0/*V*/]),\n algorithm = lowerNibble(bytes[0/*V*/]);\n\n if(version == SCHEMA1) {\n switch(algorithm) {\n case schema1.UNDEFINED:\n return { hllSet: schema1_empty(arrayBuffer), version: version, algorithm: algorithm.UNDEFINED };\n case schema1.EMPTY:\n return { hllSet: schema1_empty(arrayBuffer), version: version, algorithm: algorithm.EMPTY };\n case schema1.EXPLICIT:\n return { hllSet: schema1_explicit(arrayBuffer), version: version, algorithm: algorithm.EXPLICIT };\n case schema1.SPARSE:\n return { hllSet: schema1_sparse(arrayBuffer), version: version, algorithm: algorithm.SPARSE };\n case schema1.FULL:\n return { hllSet: schema1_full(arrayBuffer), version: version, algorithm: algorithm.FULL };\n default:\n throw new Error(\"Unknown schema version 1 algorithm (index): \" + algorithm);\n }\n } else /*unknown*/\n throw new Error(\"Unknown schema version: \" + version);\n};\n\n// == Schema v1 ============================================================\n// @param {Number} parameterByte the parameter byte that is to be parsed\n// @returns {{ log2m: Number, registerWidth: Number }} the parsed register\n// width and log2m\nfunction schema1_parameters(parameterByte) {\n // highest 3 bits encode the value 'registerWidth - 1' and the remaining\n // 5 bits encode 'log2m'\n return { registerWidth: getBitSequenceFromByte(parameterByte, 0, 3) + 1,\n log2m: getBitSequenceFromByte(parameterByte, 3, 5) };\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'FULL'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_full(arrayBuffer) {\n // byte array format: VPCB*\n var bytes = new Uint8Array(arrayBuffer);\n\n var parameters = schema1_parameters(bytes[1/*P*/]);\n var registerWidth = parameters.registerWidth/*for convenience*/,\n log2m = parameters.log2m/*for convenience*/,\n m = 1 << log2m/*2^log2m*/;\n\n // the values are stored in 'registerWidth' bit wide ascending sequence\n var registers = [];\n var byteOffset = 3 * BITS_IN_BYTE/*VPC*/;\n for(var i=m-1; i>=0; i--) {\n registers.push(getBitSequenceValueFromByteArray(bytes, byteOffset, registerWidth));\n byteOffset += registerWidth;\n }\n\n var hllSet = new HLL(log2m, registerWidth);\n hllSet.registers = registers;\n return hllSet;\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'SPARSE'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_sparse(arrayBuffer) {\n // byte array format: VPCB*\n var bytes = new Uint8Array(arrayBuffer);\n return common_sparse(arrayBuffer, 3/*VPC*/, schema1_parameters(bytes[1/*P*/]));\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'EMPTY'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_empty(arrayBuffer) {\n var bytes = new Uint8Array(arrayBuffer);\n return common_empty(schema1_parameters(bytes[1/*P*/]));\n}\n// @param {ArrayBuffer} arrayBuffer array buffer encoding a schema v1 'EXPLICIT'\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction schema1_explicit(arrayBuffer) {\n // byte array format: VPCB{8}*\n var bytes = new Uint8Array(arrayBuffer);\n return common_explicit(arrayBuffer, 3/*VPC*/, schema1_parameters(bytes[1/*P*/]));\n}\n\n// == Decoding Common ======================================================\n// @param {{ log2m: Number, registerWidth: Number }} parameters the register\n// width and log2m parameters\n// @returns {hll.HLL} a new HLL with the specified parameters\nfunction common_empty(parameters) {\n return new HLL(parameters.log2m, parameters.registerWidth);\n}\n\n// @param {ArrayBuffer} arrayBuffer array buffer encoding an 'EXPLICIT' set\n// @param {Number} offset the offset in the array buffer to the data bytes\n// @param {{ log2m: Number, registerWidth: Number }} parameters the register\n// width and log2m parameters\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction common_explicit(arrayBuffer, offset, parameters) {\n var hllSet = new HLL(parameters.log2m, parameters.registerWidth);\n\n // Each block of 8 bytes represent a signed 64-bit integer (sign bit +\n // 63 value bits). These integers are encoded as big-endian (with sign-bit\n // at highest position), and are the \"contents\" of the multiset.\n var bytes = new Uint8Array(arrayBuffer);\n var byteOffset = offset;\n while(byteOffset < bytes.length) {\n // load the tuple from the byte array at the given offset\n var value = extractLong(bytes, byteOffset);\n hllSet.addRaw(value);\n\n // move forward 8 bytes to the next value;\n byteOffset += 8/*bytes in 'long'*/;\n }\n\n return hllSet;\n}\n\n// @param {ArrayBuffer} arrayBuffer array buffer encoding an 'EXPLICIT' set\n// @param {Number} offset the offset in the byte array to the data bytes\n// @param {{ log2m: Number, registerWidth: Number }} parameters the register\n// width and log2m parameters\n// @returns {hll.HLL} a new HLL decoded from the ArrayBuffer\nfunction common_sparse(arrayBuffer, offset, parameters) {\n var registerWidth = parameters.registerWidth/*for convenience*/,\n log2m = parameters.log2m/*for convenience*/,\n m = 1 << log2m/*2^log2m*/;\n\n var registers = [];\n for(var i=m-1; i>=0; i--) registers.push(0/*initialize*/);\n\n // If 'BITS = registerWidth * m' is not divisible by 8, then 'BITS % 8'\n // padding bits are added to top of the first byte of the array account\n // for this padding\n var bitOffset = offset * BITS_IN_BYTE/*after offset*/;\n bitOffset += (m * registerWidth) % BITS_IN_BYTE;\n\n var bytes = new Uint8Array(arrayBuffer);\n var registerCount = Math.floor(((bytes.length - offset)/*data bytes*/ * BITS_IN_BYTE) / (log2m + registerWidth));\n for(var i=registerCount-1; i>=0; i--) {\n var key = getBitSequenceValueFromByteArray(bytes, bitOffset, log2m);\n bitOffset += log2m;\n var value = getBitSequenceValueFromByteArray(bytes, bitOffset, registerWidth);\n bitOffset += registerWidth;\n\n registers[key] = value;\n }\n\n var hllSet = new HLL(log2m, registerWidth);\n hllSet.registers = registers;\n return hllSet;\n}\n\n/**\n * @fileoverview Utility functions for manipulating bit and byte values in\n * JavaScript. In general there are a few points to remember when working with\n * JavaScript and bit operations:\n *

\n */\n\n// *************************************************************************\nvar BITS_IN_BYTE = 8;\n\n// -------------------------------------------------------------------------\nvar LOWER = 0/*lower 32bits of a 'long' value*/,\n UPPER = 1/*upper 32bits of a 'long' value*/;\n\n// *************************************************************************\n/**\n * @param {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values of a 64bit value.\n * @param {Number} the number of bits to be shifted right. If negative or\n * greater than 63 then it is made positive or bounded to [0, 63]\n * @returns {Array} the specified long value shifted right by the specified\n * amount with the left-padded bits matching that of the sign bit.\n */\nfunction shiftRightLong (longValue, shift) {\n shift &= 63/*by contract*/;\n if(shift == 0) return longValue/*nothing to do*/;\n\n var upper = longValue[UPPER]/*for convenience*/;\n if(shift < 32) {\n var lower = longValue[LOWER]/*for convenience*/;\n return [ ((lower >>> shift) | (upper << (32 - shift))),\n (upper >> shift) ];\n } else { /*shift >= 32*/\n return [ (upper >> (shift - 32)),\n (upper >= 0 ? 0 : -1) ];\n }\n};\n\n/**\n * @param {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values of a 64bit value.\n * @param {Number} the number of bits to be shifted right. If negative or\n * greater than 63 then it is made positive or bounded to [0, 63]\n * @returns {Array} the specified long value shifted right by the specified\n * amount with the left-padded bits set to zero.\n */\nfunction shiftRightUnsignedLong (longValue, shift) {\n shift &= 63/*by contract*/;\n if(shift == 0) return longValue/*nothing to do*/;\n\n var upper = longValue[UPPER]/*for convenience*/;\n if(shift < 32) {\n var lower = longValue[LOWER]/*for convenience*/;\n return [ ((lower >>> shift) | (upper << (32 - shift))),\n (upper >>> shift) ];\n } else if(shift == 32)\n return [ upper, 0/*clear upper*/ ];\n else /*shift > 32*/\n return [ (upper >>> (shift - 32)), 0/*clear upper*/ ];\n};\n\n// -------------------------------------------------------------------------\n/**\n * Load a long (64bit) integer from the given byte array, starting from the\n * given byte position.\n *\n * @param {Array} bytes array of bytes, with long values packed from the 0th\n * byte in 8 byte intervals. Long values are stored big endian.\n * @param {Number} startByteIndex index into the array to the upper byte of\n * the long value\n * @returns {Array} a two element array that contains the upper- (index 1)\n * and lower-32bit (index 0) bit values of the extracted 64bit value.\n */\nfunction extractLong (bytes, startByteIndex) {\n var lower = 0,\n upper = 0;\n\n // load 8 bytes, big endian order\n upper |= bytes[startByteIndex ] << 24;\n upper |= bytes[startByteIndex + 1] << 16;\n upper |= bytes[startByteIndex + 2] << 8;\n upper |= bytes[startByteIndex + 3];\n lower |= bytes[startByteIndex + 4] << 24;\n lower |= bytes[startByteIndex + 5] << 16;\n lower |= bytes[startByteIndex + 6] << 8;\n lower |= bytes[startByteIndex + 7];\n\n return [ lower >>> 0, upper >>> 0 ];\n};\n\n// =========================================================================\n/**\n * @param {Number} byteValue a byte\n * @returns {Number} the upper nibble (4bits) of that byte\n */\nfunction upperNibble (byteValue) {\n return byteValue >> 4;\n};\n\n/**\n * @param {Number} byteValue a byte\n * @returns {Number} the lower nibble (4bits) of that byte\n */\nfunction lowerNibble (byteValue) {\n return byteValue & 0x0F;\n};\n\n// =========================================================================\n/**\n * Decodes an array of bytes from a hex string.\n *\n * @param {String} hex string of hex digits, starts with two characters to\n * be discarded \"\\x\", \"0x\", or similar, the number of hex digits\n * must be an even number, come out to a round number of bytes\n * @returns {ArrayBuffer} an ArrayBuffer of values representing\n * the bytes encoded in the hex string\n */\n function hexToArrayBuffer (hex) {\n hex = hex.substring(2/*discard the first two characters \"0x, \\x\"*/);\n var length = hex.length / 2/*each hex digit is 4bits, or 1/2 byte*/;\n // allocate the byte array of the correct size.\n var arrayBuffer = new ArrayBuffer(length);\n var byteView = new Uint8Array(arrayBuffer);\n\n for(var i=0; istart\n * to start + length in the value\n */\nfunction getBitSequenceFromByte (byteValue, start, length) {\n return (byteValue >>> (BITS_IN_BYTE - (start + length))) &\n ((1 << length) - 1)/*mask of width 'length'*/;\n};\n\n// -------------------------------------------------------------------------\n/**\n * Retrieves the value of the integer between the given start and end bit\n * indexes from an array of bytes in big-endian order.\n *\n * @param {Array} bytes the byte array from which the number is read\n * @param {Number} start the index of the start of the bit sequence\n * @param {Number} length the length of the sequence of bits. This must be\n * less than 32.\n * @returns {Number} the value of the specified sequence of bits\n */\n// TODO: this can use some consistency clean-up\nfunction getBitSequenceValueFromByteArray (bytes, start, length) {\n // determine the start and end byte and bit indices of the requested bit sequence\n var byteStartIndex = start >>> 3/*divide by BITS_IN_BYTE*/;\n var byteEndIndex = (start + length) >>> 3/*divide by BITS_IN_BYTE*/;\n var bitStartIndex = start & 0x07/*% BITS_IN_BYTE*/;\n\n // if the value exists within a single byte, simply grab that value out of\n // the single byte\n if(byteStartIndex == byteEndIndex) return getBitSequenceFromByte(bytes[byteEndIndex], bitStartIndex, length);\n\n var bitEndIndex = (start + length) & 0x07/*% BITS_IN_BYTE*/;\n\n // iterate through the byte array from the end byte index to the start\n // byte index, accumulating the value.\n var result = 0;\n var shift = 0;\n for(var i=byteEndIndex; i>=byteStartIndex; i--) {\n var byteValue;\n if(i == byteStartIndex)\n byteValue = getBitSequenceFromByte(bytes[i], bitStartIndex, BITS_IN_BYTE - bitStartIndex);\n else if(i == byteEndIndex)\n byteValue = getBitSequenceFromByte(bytes[i], 0, bitEndIndex);\n else /*use the entire byte, if it is not the start or end bytes*/\n byteValue = bytes[i];\n\n result |= byteValue << shift;\n\n if(i == byteEndIndex)\n shift += bitEndIndex;\n else\n shift += BITS_IN_BYTE;\n }\n\n return result;\n};\n\n// =========================================================================\n// least significant bit\n// REF: http://stackoverflow.com/questions/757059/position-of-least-significant-bit-that-is-set\n// REF: http://www-graphics.stanford.edu/~seander/bithacks.html\nvar LEAST_SIGNIFICANT_BIT = [/*0-based*/\n -1, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,\n 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0\n];\n/**\n * @param {Number} value a 32bit value for which the least-significant bit\n * set is desired. This cannot be null, greater than 32bits, or unspecified.\n * @returns {Number} the 0-based position of the least-significant bit set.\n */\nfunction leastSignificantBit (value) {\n if(value == 0) return -1/*by contract*/;\n if((value & 0x0000FF) != 0) return LEAST_SIGNIFICANT_BIT[( (value >>> 0) & 0xFF)] + 0;\n if((value & 0x00FFFF) != 0) return LEAST_SIGNIFICANT_BIT[( (value >>> 8) & 0xFF)] + 8;\n if((value & 0xFFFFFF) != 0) return LEAST_SIGNIFICANT_BIT[( (value >>> 16) & 0xFF)] + 16;\n return LEAST_SIGNIFICANT_BIT[( (value >>> 24) & 0xFF)] + 24;\n};\n\n// *************************************************************************\n/**\n * Creates a new mechanism for writing data into a byte array.\n * @constructor\n */\nfunction ByteWriter () {\n var self = this;\n\n var currentByte = 0;\n var bytes = [];\n var remainingBitsInByteCount = BITS_IN_BYTE;\n\n // ---------------------------------------------------------------------\n /**\n * Write bits to the tail end of the byte array writing from the upper\n * bits of each byte.\n *\n * @param {Number} value the value to add to the byte array\n * @param {Number} bitCount number of bits starting from the lower bits\n * of the value to add to the byte array, at most 32 bits\n */\n self.addBits = function(value, bitCount) {\n var remainingBitsInValueCount = bitCount;\n while(remainingBitsInValueCount > 0) {\n // the value is taken from the lower bits of 'value' but read\n // starting from the upper bit(s)\n var writeBitCount = Math.min(remainingBitsInValueCount, remainingBitsInByteCount);\n var writeValue = ((value >>> (remainingBitsInValueCount - writeBitCount)) &\n ((1 << writeBitCount) - 1)/*mask of width 'writeBitCount'*/) >>> 0;\n\n // writing starts at the upper bit(s)\n currentByte |= (writeValue << (remainingBitsInByteCount - writeBitCount));\n\n remainingBitsInValueCount -= writeBitCount;\n remainingBitsInByteCount -= writeBitCount;\n if(remainingBitsInByteCount <= 0) {\n bytes.push(currentByte);\n currentByte = 0/*clear*/;\n remainingBitsInByteCount = BITS_IN_BYTE/*reset*/;\n } /* else -- not a full byte yet */\n }\n };\n\n /**\n * @returns {Array} the bytes that have been {@link #addBits() added}\n * to this writer. Modifying this array will modify the internal\n * storage.\n */\n self.getBytes = function() {\n if(remainingBitsInByteCount < BITS_IN_BYTE) { /*bits in currentByte haven't been added to bytes yet*/\n var copyBytes = bytes.slice(0)/*clone*/;\n copyBytes.push(currentByte);\n return copyBytes;\n } else/*no addition bits have been added*/\n return bytes;\n };\n};\n","/**\n * @license React\n * react-is.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 b=Symbol.for(\"react.element\"),c=Symbol.for(\"react.portal\"),d=Symbol.for(\"react.fragment\"),e=Symbol.for(\"react.strict_mode\"),f=Symbol.for(\"react.profiler\"),g=Symbol.for(\"react.provider\"),h=Symbol.for(\"react.context\"),k=Symbol.for(\"react.server_context\"),l=Symbol.for(\"react.forward_ref\"),m=Symbol.for(\"react.suspense\"),n=Symbol.for(\"react.suspense_list\"),p=Symbol.for(\"react.memo\"),q=Symbol.for(\"react.lazy\"),t=Symbol.for(\"react.offscreen\"),u;u=Symbol.for(\"react.module.reference\");\nfunction v(a){if(\"object\"===typeof a&&null!==a){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}exports.ContextConsumer=h;exports.ContextProvider=g;exports.Element=b;exports.ForwardRef=l;exports.Fragment=d;exports.Lazy=q;exports.Memo=p;exports.Portal=c;exports.Profiler=f;exports.StrictMode=e;exports.Suspense=m;\nexports.SuspenseList=n;exports.isAsyncMode=function(){return!1};exports.isConcurrentMode=function(){return!1};exports.isContextConsumer=function(a){return v(a)===h};exports.isContextProvider=function(a){return v(a)===g};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===b};exports.isForwardRef=function(a){return v(a)===l};exports.isFragment=function(a){return v(a)===d};exports.isLazy=function(a){return v(a)===q};exports.isMemo=function(a){return v(a)===p};\nexports.isPortal=function(a){return v(a)===c};exports.isProfiler=function(a){return v(a)===f};exports.isStrictMode=function(a){return v(a)===e};exports.isSuspense=function(a){return v(a)===m};exports.isSuspenseList=function(a){return v(a)===n};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===d||a===f||a===e||a===m||a===n||a===t||\"object\"===typeof a&&null!==a&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||void 0!==a.getModuleId)?!0:!1};exports.typeOf=v;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = setRef;\n/**\n * TODO v5: consider making it private\n *\n * passes {value} to {ref}\n *\n * WARNING: Be sure to only call this inside a callback that is passed as a ref.\n * Otherwise, make sure to cleanup the previous {ref} if it changes. See\n * https://github.com/mui/material-ui/issues/13539\n *\n * Useful if you want to expose the ref of an inner component to the public API\n * while still using it inside the component.\n * @param ref A ref callback or ref object. If anything falsy, this is a no-op.\n */\nfunction setRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref) {\n ref.current = value;\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useControlled;\nvar React = _interopRequireWildcard(require(\"react\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n/* eslint-disable react-hooks/rules-of-hooks, react-hooks/exhaustive-deps */\n\nfunction useControlled({\n controlled,\n default: defaultProp,\n name,\n state = 'value'\n}) {\n // isControlled is ignored in the hook dependency lists as it should never change.\n const {\n current: isControlled\n } = React.useRef(controlled !== undefined);\n const [valueState, setValue] = React.useState(defaultProp);\n const value = isControlled ? controlled : valueState;\n if (process.env.NODE_ENV !== 'production') {\n React.useEffect(() => {\n if (isControlled !== (controlled !== undefined)) {\n console.error([`MUI: A component is changing the ${isControlled ? '' : 'un'}controlled ${state} state of ${name} to be ${isControlled ? 'un' : ''}controlled.`, 'Elements should not switch from uncontrolled to controlled (or vice versa).', `Decide between using a controlled or uncontrolled ${name} ` + 'element for the lifetime of the component.', \"The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.\", 'More info: https://fb.me/react-controlled-components'].join('\\n'));\n }\n }, [state, name, controlled]);\n const {\n current: defaultValue\n } = React.useRef(defaultProp);\n React.useEffect(() => {\n if (!isControlled && defaultValue !== defaultProp) {\n console.error([`MUI: A component is changing the default ${state} state of an uncontrolled ${name} after being initialized. ` + `To suppress this warning opt to use a controlled ${name}.`].join('\\n'));\n }\n }, [JSON.stringify(defaultProp)]);\n }\n const setValueIfUncontrolled = React.useCallback(newValue => {\n if (!isControlled) {\n setValue(newValue);\n }\n }, []);\n return [value, setValueIfUncontrolled];\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar React = _interopRequireWildcard(require(\"react\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nconst useEnhancedEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar _default = useEnhancedEffect;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useEventCallback;\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _useEnhancedEffect = _interopRequireDefault(require(\"./useEnhancedEffect\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n/**\n * https://github.com/facebook/react/issues/14099#issuecomment-440013892\n */\nfunction useEventCallback(fn) {\n const ref = React.useRef(fn);\n (0, _useEnhancedEffect.default)(() => {\n ref.current = fn;\n });\n return React.useCallback((...args) =>\n // @ts-expect-error hide `this`\n // tslint:disable-next-line:ban-comma-operator\n (0, ref.current)(...args), []);\n}","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useForkRef;\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _setRef = _interopRequireDefault(require(\"./setRef\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction useForkRef(...refs) {\n /**\n * This will create a new function if the refs passed to this hook change and are all defined.\n * This means react will call the old forkRef with `null` and the new forkRef\n * with the ref. Cleanup naturally emerges from this behavior.\n */\n return React.useMemo(() => {\n if (refs.every(ref => ref == null)) {\n return null;\n }\n return instance => {\n refs.forEach(ref => {\n (0, _setRef.default)(ref, instance);\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useId;\nvar React = _interopRequireWildcard(require(\"react\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nlet globalId = 0;\nfunction useGlobalId(idOverride) {\n const [defaultId, setDefaultId] = React.useState(idOverride);\n const id = idOverride || defaultId;\n React.useEffect(() => {\n if (defaultId == null) {\n // Fallback to this default id when possible.\n // Use the incrementing value for client-side rendering only.\n // We can't use it server-side.\n // If you want to use random values please consider the Birthday Problem: https://en.wikipedia.org/wiki/Birthday_problem\n globalId += 1;\n setDefaultId(`mui-${globalId}`);\n }\n }, [defaultId]);\n return id;\n}\n\n// downstream bundlers may remove unnecessary concatenation, but won't remove toString call -- Workaround for https://github.com/webpack/webpack/issues/14814\nconst maybeReactUseId = React['useId'.toString()];\n/**\n *\n * @example
\n * @param idOverride\n * @returns {string}\n */\nfunction useId(idOverride) {\n if (maybeReactUseId !== undefined) {\n const reactId = maybeReactUseId();\n return idOverride != null ? idOverride : reactId;\n }\n // eslint-disable-next-line react-hooks/rules-of-hooks -- `React.useId` is invariant at runtime.\n return useGlobalId(idOverride);\n}","var countryISOMapping = {\n AF: 'AFG',\n AX: 'ALA',\n AL: 'ALB',\n DZ: 'DZA',\n AS: 'ASM',\n AD: 'AND',\n AO: 'AGO',\n AI: 'AIA',\n AQ: 'ATA',\n AG: 'ATG',\n AR: 'ARG',\n AM: 'ARM',\n AW: 'ABW',\n AU: 'AUS',\n AT: 'AUT',\n AZ: 'AZE',\n BS: 'BHS',\n BH: 'BHR',\n BD: 'BGD',\n BB: 'BRB',\n BY: 'BLR',\n BE: 'BEL',\n BZ: 'BLZ',\n BJ: 'BEN',\n BM: 'BMU',\n BT: 'BTN',\n BO: 'BOL',\n BA: 'BIH',\n BW: 'BWA',\n BV: 'BVT',\n BR: 'BRA',\n VG: 'VGB',\n IO: 'IOT',\n BN: 'BRN',\n BG: 'BGR',\n BF: 'BFA',\n BI: 'BDI',\n KH: 'KHM',\n CM: 'CMR',\n CA: 'CAN',\n CV: 'CPV',\n KY: 'CYM',\n CF: 'CAF',\n TD: 'TCD',\n CL: 'CHL',\n CN: 'CHN',\n HK: 'HKG',\n MO: 'MAC',\n CX: 'CXR',\n CC: 'CCK',\n CO: 'COL',\n KM: 'COM',\n CG: 'COG',\n CD: 'COD',\n CK: 'COK',\n CR: 'CRI',\n CI: 'CIV',\n HR: 'HRV',\n CU: 'CUB',\n CY: 'CYP',\n CZ: 'CZE',\n DK: 'DNK',\n DJ: 'DJI',\n DM: 'DMA',\n DO: 'DOM',\n EC: 'ECU',\n EG: 'EGY',\n SV: 'SLV',\n GQ: 'GNQ',\n ER: 'ERI',\n EE: 'EST',\n ET: 'ETH',\n FK: 'FLK',\n FO: 'FRO',\n FJ: 'FJI',\n FI: 'FIN',\n FR: 'FRA',\n GF: 'GUF',\n PF: 'PYF',\n TF: 'ATF',\n GA: 'GAB',\n GM: 'GMB',\n GE: 'GEO',\n DE: 'DEU',\n GH: 'GHA',\n GI: 'GIB',\n GR: 'GRC',\n GL: 'GRL',\n GD: 'GRD',\n GP: 'GLP',\n GU: 'GUM',\n GT: 'GTM',\n GG: 'GGY',\n GN: 'GIN',\n GW: 'GNB',\n GY: 'GUY',\n HT: 'HTI',\n HM: 'HMD',\n VA: 'VAT',\n HN: 'HND',\n HU: 'HUN',\n IS: 'ISL',\n IN: 'IND',\n ID: 'IDN',\n IR: 'IRN',\n IQ: 'IRQ',\n IE: 'IRL',\n IM: 'IMN',\n IL: 'ISR',\n IT: 'ITA',\n JM: 'JAM',\n JP: 'JPN',\n JE: 'JEY',\n JO: 'JOR',\n KZ: 'KAZ',\n KE: 'KEN',\n KI: 'KIR',\n KP: 'PRK',\n KR: 'KOR',\n KW: 'KWT',\n KG: 'KGZ',\n LA: 'LAO',\n LV: 'LVA',\n LB: 'LBN',\n LS: 'LSO',\n LR: 'LBR',\n LY: 'LBY',\n LI: 'LIE',\n LT: 'LTU',\n LU: 'LUX',\n MK: 'MKD',\n MG: 'MDG',\n MW: 'MWI',\n MY: 'MYS',\n MV: 'MDV',\n ML: 'MLI',\n MT: 'MLT',\n MH: 'MHL',\n MQ: 'MTQ',\n MR: 'MRT',\n MU: 'MUS',\n YT: 'MYT',\n MX: 'MEX',\n FM: 'FSM',\n MD: 'MDA',\n MC: 'MCO',\n MN: 'MNG',\n ME: 'MNE',\n MS: 'MSR',\n MA: 'MAR',\n MZ: 'MOZ',\n MM: 'MMR',\n NA: 'NAM',\n NR: 'NRU',\n NP: 'NPL',\n NL: 'NLD',\n AN: 'ANT',\n NC: 'NCL',\n NZ: 'NZL',\n NI: 'NIC',\n NE: 'NER',\n NG: 'NGA',\n NU: 'NIU',\n NF: 'NFK',\n MP: 'MNP',\n NO: 'NOR',\n OM: 'OMN',\n PK: 'PAK',\n PW: 'PLW',\n PS: 'PSE',\n PA: 'PAN',\n PG: 'PNG',\n PY: 'PRY',\n PE: 'PER',\n PH: 'PHL',\n PN: 'PCN',\n PL: 'POL',\n PT: 'PRT',\n PR: 'PRI',\n QA: 'QAT',\n RE: 'REU',\n RO: 'ROU',\n RU: 'RUS',\n RW: 'RWA',\n BL: 'BLM',\n SH: 'SHN',\n KN: 'KNA',\n LC: 'LCA',\n MF: 'MAF',\n PM: 'SPM',\n VC: 'VCT',\n WS: 'WSM',\n SM: 'SMR',\n ST: 'STP',\n SA: 'SAU',\n SN: 'SEN',\n RS: 'SRB',\n SC: 'SYC',\n SL: 'SLE',\n SG: 'SGP',\n SK: 'SVK',\n SI: 'SVN',\n SB: 'SLB',\n SO: 'SOM',\n ZA: 'ZAF',\n GS: 'SGS',\n SS: 'SSD',\n ES: 'ESP',\n LK: 'LKA',\n SD: 'SDN',\n SR: 'SUR',\n SJ: 'SJM',\n SZ: 'SWZ',\n SE: 'SWE',\n CH: 'CHE',\n SY: 'SYR',\n TW: 'TWN',\n TJ: 'TJK',\n TZ: 'TZA',\n TH: 'THA',\n TL: 'TLS',\n TG: 'TGO',\n TK: 'TKL',\n TO: 'TON',\n TT: 'TTO',\n TN: 'TUN',\n TR: 'TUR',\n TM: 'TKM',\n TC: 'TCA',\n TV: 'TUV',\n UG: 'UGA',\n UA: 'UKR',\n AE: 'ARE',\n GB: 'GBR',\n US: 'USA',\n UM: 'UMI',\n UY: 'URY',\n UZ: 'UZB',\n VU: 'VUT',\n VE: 'VEN',\n VN: 'VNM',\n VI: 'VIR',\n WF: 'WLF',\n EH: 'ESH',\n YE: 'YEM',\n ZM: 'ZMB',\n ZW: 'ZWE',\n XK: 'XKX'\n}\n\nmodule.exports = function getCountryISO3(countryCode) {\n return countryISOMapping[countryCode]\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",f=\"month\",h=\"quarter\",c=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},w=function(t,e){if(p(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=v;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t)}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return O},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t)68?1900:2e3)};var a=function(e){return function(t){this[e]=+t}},f=[/[+-]\\d\\d:?(\\d\\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if(\"Z\"===e)return 0;var t=e.match(/([+-]|\\d\\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:\"+\"===t[0]?-n:n}(e)}],h=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?\"pm\":\"PM\");return n},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\\d/,function(e){this.milliseconds=100*+e}],SS:[n,function(e){this.milliseconds=10*+e}],SSS:[/\\d{3}/,function(e){this.milliseconds=+e}],s:[r,a(\"seconds\")],ss:[r,a(\"seconds\")],m:[r,a(\"minutes\")],mm:[r,a(\"minutes\")],H:[r,a(\"hours\")],h:[r,a(\"hours\")],HH:[r,a(\"hours\")],hh:[r,a(\"hours\")],D:[r,a(\"day\")],DD:[n,a(\"day\")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\\[|\\]/g,\"\")===e&&(this.day=r)}],M:[r,a(\"month\")],MM:[n,a(\"month\")],MMM:[i,function(e){var t=h(\"months\"),n=(h(\"monthsShort\")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(e){var t=h(\"months\").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\\d+/,a(\"year\")],YY:[n,function(e){this.year=s(e)}],YYYY:[/\\d{4}/,a(\"year\")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=s.length,f=0;f-1)return new Date((\"X\"===t?1e3:1)*e);var r=c(t)(e),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,h=r.seconds,u=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=h||0,g=u||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(e){return new Date(\"\")}}(t,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date(\"\")),o={}}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(\"\"))}else i.call(this,e)}}}));","!function(e,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isBetween=i()}(this,(function(){\"use strict\";return function(e,i,t){i.prototype.isBetween=function(e,i,s,f){var n=t(e),o=t(i),r=\"(\"===(f=f||\"()\")[0],u=\")\"===f[1];return(r?this.isAfter(n,s):!this.isBefore(n,s))&&(u?this.isBefore(o,s):!this.isAfter(o,s))||(r?this.isBefore(n,s):!this.isAfter(n,s))&&(u?this.isAfter(o,s):!this.isBefore(o,s))}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_localizedFormat=t()}(this,(function(){\"use strict\";var e={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\"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t=\"YYYY-MM-DDTHH:mm:ssZ\");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_weekOfYear=t()}(this,(function(){\"use strict\";var e=\"week\",t=\"year\";return function(i,n,r){var f=n.prototype;f.week=function(i){if(void 0===i&&(i=null),null!==i)return this.add(7*(i-this.week()),\"day\");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,\"millisecond\"),o=this.diff(a,e,!0);return o<0?r(this).startOf(\"week\").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}));","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.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'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\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>>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","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}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","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}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","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}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\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}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// 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\t// no module.id needed\n\t\t// no module.loaded needed\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// 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};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\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 + \".\" + \"c8b1fb18\" + \".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__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"statsboard:\";\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__.p = \"/statsboard/\";","__webpack_require__.b = document.baseURI || self.location.href;\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[\"webpackChunkstatsboard\"] = self[\"webpackChunkstatsboard\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","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\";\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}","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\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}","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}","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}","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t {\n if (propName.toString().match(/^(components|slots)$/)) {\n output[propName] = {\n ...defaultProps[propName],\n ...output[propName]\n };\n } else if (propName.toString().match(/^(componentsProps|slotProps)$/)) {\n const defaultSlotProps = defaultProps[propName] || {};\n const slotProps = props[propName];\n output[propName] = {};\n if (!slotProps || !Object.keys(slotProps)) {\n // Reduce the iteration if the slot props is empty\n output[propName] = defaultSlotProps;\n } else if (!defaultSlotProps || !Object.keys(defaultSlotProps)) {\n // Reduce the iteration if the default slot props is empty\n output[propName] = slotProps;\n } else {\n output[propName] = {\n ...slotProps\n };\n Object.keys(defaultSlotProps).forEach(slotPropName => {\n output[propName][slotPropName] = resolveProps(defaultSlotProps[slotPropName], slotProps[slotPropName]);\n });\n }\n } else if (output[propName] === undefined) {\n output[propName] = defaultProps[propName];\n }\n });\n return output;\n}","export default function composeClasses(slots, getUtilityClass, classes = undefined) {\n const output = {};\n Object.keys(slots).forEach(\n // `Objet.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.\n // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208\n slot => {\n output[slot] = slots[slot].reduce((acc, key) => {\n if (key) {\n const utilityClass = getUtilityClass(key);\n if (utilityClass !== '') {\n acc.push(utilityClass);\n }\n if (classes && classes[key]) {\n acc.push(classes[key]);\n }\n }\n return acc;\n }, []).join(' ');\n });\n return output;\n}","/**\n * WARNING: Don't import this directly.\n * Use `MuiError` from `@mui/utils/macros/MuiError.macro` instead.\n * @param {number} code\n */\nexport default function formatMuiErrorMessage(code) {\n // Apply babel-plugin-transform-template-literals in loose mode\n // loose mode is safe iff we're concatenating primitives\n // see https://babeljs.io/docs/en/babel-plugin-transform-template-literals#loose\n /* eslint-disable prefer-template */\n let url = 'https://mui.com/production-error/?code=' + code;\n for (let i = 1; i < arguments.length; i += 1) {\n // rest params over-transpile for this case\n // eslint-disable-next-line prefer-rest-params\n url += '&args[]=' + encodeURIComponent(arguments[i]);\n }\n return 'Minified MUI error #' + code + '; visit ' + url + ' for the full message.';\n /* eslint-enable prefer-template */\n}","import { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\n/* eslint-disable @typescript-eslint/naming-convention */\n/**\n * Returns a number whose value is limited to the given range.\n * @param {number} value The value to be clamped\n * @param {number} min The lower boundary of the output range\n * @param {number} max The upper boundary of the output range\n * @returns {number} A number in the range [min, max]\n */\nfunction clamp(value, min = 0, max = 1) {\n if (process.env.NODE_ENV !== 'production') {\n if (value < min || value > max) {\n console.error(`MUI: The value provided ${value} is out of range [${min}, ${max}].`);\n }\n }\n return Math.min(Math.max(min, value), max);\n}\n\n/**\n * Converts a color from CSS hex format to CSS rgb format.\n * @param {string} color - Hex color, i.e. #nnn or #nnnnnn\n * @returns {string} A CSS rgb color string\n */\nexport function hexToRgb(color) {\n color = color.slice(1);\n const re = new RegExp(`.{1,${color.length >= 6 ? 2 : 1}}`, 'g');\n let colors = color.match(re);\n if (colors && colors[0].length === 1) {\n colors = colors.map(n => n + n);\n }\n return colors ? `rgb${colors.length === 4 ? 'a' : ''}(${colors.map((n, index) => {\n return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;\n }).join(', ')})` : '';\n}\nfunction intToHex(int) {\n const hex = int.toString(16);\n return hex.length === 1 ? `0${hex}` : hex;\n}\n\n/**\n * Returns an object with the type and values of a color.\n *\n * Note: Does not support rgb % values.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {object} - A MUI color object: {type: string, values: number[]}\n */\nexport function decomposeColor(color) {\n // Idempotent\n if (color.type) {\n return color;\n }\n if (color.charAt(0) === '#') {\n return decomposeColor(hexToRgb(color));\n }\n const marker = color.indexOf('(');\n const type = color.substring(0, marker);\n if (['rgb', 'rgba', 'hsl', 'hsla', 'color'].indexOf(type) === -1) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: Unsupported \\`${color}\\` color.\nThe following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().` : _formatMuiErrorMessage(9, color));\n }\n let values = color.substring(marker + 1, color.length - 1);\n let colorSpace;\n if (type === 'color') {\n values = values.split(' ');\n colorSpace = values.shift();\n if (values.length === 4 && values[3].charAt(0) === '/') {\n values[3] = values[3].slice(1);\n }\n if (['srgb', 'display-p3', 'a98-rgb', 'prophoto-rgb', 'rec-2020'].indexOf(colorSpace) === -1) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: unsupported \\`${colorSpace}\\` color space.\nThe following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.` : _formatMuiErrorMessage(10, colorSpace));\n }\n } else {\n values = values.split(',');\n }\n values = values.map(value => parseFloat(value));\n return {\n type,\n values,\n colorSpace\n };\n}\n\n/**\n * Returns a channel created from the input color.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {string} - The channel for the color, that can be used in rgba or hsla colors\n */\nexport const colorChannel = color => {\n const decomposedColor = decomposeColor(color);\n return decomposedColor.values.slice(0, 3).map((val, idx) => decomposedColor.type.indexOf('hsl') !== -1 && idx !== 0 ? `${val}%` : val).join(' ');\n};\nexport const private_safeColorChannel = (color, warning) => {\n try {\n return colorChannel(color);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n};\n\n/**\n * Converts a color object with type and values to a string.\n * @param {object} color - Decomposed color\n * @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla', 'color'\n * @param {array} color.values - [n,n,n] or [n,n,n,n]\n * @returns {string} A CSS color string\n */\nexport function recomposeColor(color) {\n const {\n type,\n colorSpace\n } = color;\n let {\n values\n } = color;\n if (type.indexOf('rgb') !== -1) {\n // Only convert the first 3 values to int (i.e. not alpha)\n values = values.map((n, i) => i < 3 ? parseInt(n, 10) : n);\n } else if (type.indexOf('hsl') !== -1) {\n values[1] = `${values[1]}%`;\n values[2] = `${values[2]}%`;\n }\n if (type.indexOf('color') !== -1) {\n values = `${colorSpace} ${values.join(' ')}`;\n } else {\n values = `${values.join(', ')}`;\n }\n return `${type}(${values})`;\n}\n\n/**\n * Converts a color from CSS rgb format to CSS hex format.\n * @param {string} color - RGB color, i.e. rgb(n, n, n)\n * @returns {string} A CSS rgb color string, i.e. #nnnnnn\n */\nexport function rgbToHex(color) {\n // Idempotent\n if (color.indexOf('#') === 0) {\n return color;\n }\n const {\n values\n } = decomposeColor(color);\n return `#${values.map((n, i) => intToHex(i === 3 ? Math.round(255 * n) : n)).join('')}`;\n}\n\n/**\n * Converts a color from hsl format to rgb format.\n * @param {string} color - HSL color values\n * @returns {string} rgb color values\n */\nexport function hslToRgb(color) {\n color = decomposeColor(color);\n const {\n values\n } = color;\n const h = values[0];\n const s = values[1] / 100;\n const l = values[2] / 100;\n const a = s * Math.min(l, 1 - l);\n const f = (n, k = (n + h / 30) % 12) => l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n let type = 'rgb';\n const rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)];\n if (color.type === 'hsla') {\n type += 'a';\n rgb.push(values[3]);\n }\n return recomposeColor({\n type,\n values: rgb\n });\n}\n/**\n * The relative brightness of any point in a color space,\n * normalized to 0 for darkest black and 1 for lightest white.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {number} The relative brightness of the color in the range 0 - 1\n */\nexport function getLuminance(color) {\n color = decomposeColor(color);\n let rgb = color.type === 'hsl' || color.type === 'hsla' ? decomposeColor(hslToRgb(color)).values : color.values;\n rgb = rgb.map(val => {\n if (color.type !== 'color') {\n val /= 255; // normalized\n }\n\n return val <= 0.03928 ? val / 12.92 : ((val + 0.055) / 1.055) ** 2.4;\n });\n\n // Truncate at 3 digits\n return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3));\n}\n\n/**\n * Calculates the contrast ratio between two colors.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n * @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @returns {number} A contrast ratio value in the range 0 - 21.\n */\nexport function getContrastRatio(foreground, background) {\n const lumA = getLuminance(foreground);\n const lumB = getLuminance(background);\n return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05);\n}\n\n/**\n * Sets the absolute transparency of a color.\n * Any existing alpha values are overwritten.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} value - value to set the alpha channel to in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function alpha(color, value) {\n color = decomposeColor(color);\n value = clamp(value);\n if (color.type === 'rgb' || color.type === 'hsl') {\n color.type += 'a';\n }\n if (color.type === 'color') {\n color.values[3] = `/${value}`;\n } else {\n color.values[3] = value;\n }\n return recomposeColor(color);\n}\nexport function private_safeAlpha(color, value, warning) {\n try {\n return alpha(color, value);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Darkens a color.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function darken(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clamp(coefficient);\n if (color.type.indexOf('hsl') !== -1) {\n color.values[2] *= 1 - coefficient;\n } else if (color.type.indexOf('rgb') !== -1 || color.type.indexOf('color') !== -1) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] *= 1 - coefficient;\n }\n }\n return recomposeColor(color);\n}\nexport function private_safeDarken(color, coefficient, warning) {\n try {\n return darken(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Lightens a color.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function lighten(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clamp(coefficient);\n if (color.type.indexOf('hsl') !== -1) {\n color.values[2] += (100 - color.values[2]) * coefficient;\n } else if (color.type.indexOf('rgb') !== -1) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] += (255 - color.values[i]) * coefficient;\n }\n } else if (color.type.indexOf('color') !== -1) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] += (1 - color.values[i]) * coefficient;\n }\n }\n return recomposeColor(color);\n}\nexport function private_safeLighten(color, coefficient, warning) {\n try {\n return lighten(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Darken or lighten a color, depending on its luminance.\n * Light colors are darkened, dark colors are lightened.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient=0.15 - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function emphasize(color, coefficient = 0.15) {\n return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient);\n}\nexport function private_safeEmphasize(color, coefficient, warning) {\n try {\n return private_safeEmphasize(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\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}","function memoize(fn) {\n var cache = Object.create(null);\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport { memoize as default };\n","import memoize from '@emotion/memoize';\n\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport { isPropValid as default };\n","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n","import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\nexport var LAYER = '@layer'\n","import {IMPORT, LAYER, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase LAYER: if (element.children.length) break\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f') != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset: if (ampersand == -1) characters = replace(characters, /\\f/g, '')\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d l m s\n\t\t\t\t\t\t\t\t\tcase 100: case 108: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import {MS, MOZ, WEBKIT, RULESET, KEYFRAMES, DECLARATION} from './Enum.js'\nimport {match, charat, substr, strlen, sizeof, replace, combine} from './Utility.js'\nimport {copy, tokenize} from './Tokenizer.js'\nimport {serialize} from './Serializer.js'\nimport {prefix} from './Prefixer.js'\n\n/**\n * @param {function[]} collection\n * @return {function}\n */\nexport function middleware (collection) {\n\tvar length = sizeof(collection)\n\n\treturn function (element, index, children, callback) {\n\t\tvar output = ''\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t\toutput += collection[i](element, index, children, callback) || ''\n\n\t\treturn output\n\t}\n}\n\n/**\n * @param {function} callback\n * @return {function}\n */\nexport function rulesheet (callback) {\n\treturn function (element) {\n\t\tif (!element.root)\n\t\t\tif (element = element.return)\n\t\t\t\tcallback(element)\n\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n */\nexport function prefixer (element, index, children, callback) {\n\tif (element.length > -1)\n\t\tif (!element.return)\n\t\t\tswitch (element.type) {\n\t\t\t\tcase DECLARATION: element.return = prefix(element.value, element.length, children)\n\t\t\t\t\treturn\n\t\t\t\tcase KEYFRAMES:\n\t\t\t\t\treturn serialize([copy(element, {value: replace(element.value, '@', '@' + WEBKIT)})], callback)\n\t\t\t\tcase RULESET:\n\t\t\t\t\tif (element.length)\n\t\t\t\t\t\treturn combine(element.props, function (value) {\n\t\t\t\t\t\t\tswitch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n\t\t\t\t\t\t\t\t// :read-(only|write)\n\t\t\t\t\t\t\t\tcase ':read-only': case ':read-write':\n\t\t\t\t\t\t\t\t\treturn serialize([copy(element, {props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]})], callback)\n\t\t\t\t\t\t\t\t// :placeholder\n\t\t\t\t\t\t\t\tcase '::placeholder':\n\t\t\t\t\t\t\t\t\treturn serialize([\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]})\n\t\t\t\t\t\t\t\t\t], callback)\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn ''\n\t\t\t\t\t\t})\n\t\t\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n */\nexport function namespace (element) {\n\tswitch (element.type) {\n\t\tcase RULESET:\n\t\t\telement.props = element.props.map(function (value) {\n\t\t\t\treturn combine(tokenize(value), function (value, index, children) {\n\t\t\t\t\tswitch (charat(value, 0)) {\n\t\t\t\t\t\t// \\f\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\t\treturn substr(value, 1, strlen(value))\n\t\t\t\t\t\t// \\0 ( + > ~\n\t\t\t\t\t\tcase 0: case 40: case 43: case 62: case 126:\n\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t// :\n\t\t\t\t\t\tcase 58:\n\t\t\t\t\t\t\tif (children[++index] === 'global')\n\t\t\t\t\t\t\t\tchildren[index] = '', children[++index] = '\\f' + substr(children[index], index = 1, -1)\n\t\t\t\t\t\t// \\s\n\t\t\t\t\t\tcase 32:\n\t\t\t\t\t\t\treturn index === 1 ? '' : value\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tswitch (index) {\n\t\t\t\t\t\t\t\tcase 0: element = value\n\t\t\t\t\t\t\t\t\treturn sizeof(children) > 1 ? '' : value\n\t\t\t\t\t\t\t\tcase index = sizeof(children) - 1: case 2:\n\t\t\t\t\t\t\t\t\treturn index === 2 ? value + element + element : value + element\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t}\n}\n","var unitlessKeys = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport { unitlessKeys as default };\n","import hashString from '@emotion/hash';\nimport unitless from '@emotion/unitless';\nimport memoize from '@emotion/memoize';\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\nvar UNDEFINED_AS_OBJECT_KEY_ERROR = \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\";\nvar hyphenateRegex = /[A-Z]|^ms/g;\nvar animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;\n\nvar isCustomProperty = function isCustomProperty(property) {\n return property.charCodeAt(1) === 45;\n};\n\nvar isProcessableValue = function isProcessableValue(value) {\n return value != null && typeof value !== 'boolean';\n};\n\nvar processStyleName = /* #__PURE__ */memoize(function (styleName) {\n return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();\n});\n\nvar processStyleValue = function processStyleValue(key, value) {\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n if (typeof value === 'string') {\n return value.replace(animationRegex, function (match, p1, p2) {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n };\n return p1;\n });\n }\n }\n }\n\n if (unitless[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {\n return value + 'px';\n }\n\n return value;\n};\n\nif (process.env.NODE_ENV !== 'production') {\n var contentValuePattern = /(var|attr|counters?|url|element|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n var contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n var oldProcessStyleValue = processStyleValue;\n var msPattern = /^-ms-/;\n var hyphenPattern = /-(.)/g;\n var hyphenatedCache = {};\n\n processStyleValue = function processStyleValue(key, value) {\n if (key === 'content') {\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n throw new Error(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\" + value + \"\\\"'`\");\n }\n }\n\n var processed = oldProcessStyleValue(key, value);\n\n if (processed !== '' && !isCustomProperty(key) && key.indexOf('-') !== -1 && hyphenatedCache[key] === undefined) {\n hyphenatedCache[key] = true;\n console.error(\"Using kebab-case for css properties in objects is not supported. Did you mean \" + key.replace(msPattern, 'ms-').replace(hyphenPattern, function (str, _char) {\n return _char.toUpperCase();\n }) + \"?\");\n }\n\n return processed;\n };\n}\n\nvar noComponentSelectorMessage = 'Component selectors can only be used in conjunction with ' + '@emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware ' + 'compiler transform.';\n\nfunction handleInterpolation(mergedProps, registered, interpolation) {\n if (interpolation == null) {\n return '';\n }\n\n if (interpolation.__emotion_styles !== undefined) {\n if (process.env.NODE_ENV !== 'production' && interpolation.toString() === 'NO_COMPONENT_SELECTOR') {\n throw new Error(noComponentSelectorMessage);\n }\n\n return interpolation;\n }\n\n switch (typeof interpolation) {\n case 'boolean':\n {\n return '';\n }\n\n case 'object':\n {\n if (interpolation.anim === 1) {\n cursor = {\n name: interpolation.name,\n styles: interpolation.styles,\n next: cursor\n };\n return interpolation.name;\n }\n\n if (interpolation.styles !== undefined) {\n var next = interpolation.next;\n\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n };\n next = next.next;\n }\n }\n\n var styles = interpolation.styles + \";\";\n\n if (process.env.NODE_ENV !== 'production' && interpolation.map !== undefined) {\n styles += interpolation.map;\n }\n\n return styles;\n }\n\n return createStringFromObject(mergedProps, registered, interpolation);\n }\n\n case 'function':\n {\n if (mergedProps !== undefined) {\n var previousCursor = cursor;\n var result = interpolation(mergedProps);\n cursor = previousCursor;\n return handleInterpolation(mergedProps, registered, result);\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('Functions that are interpolated in css calls will be stringified.\\n' + 'If you want to have a css call based on props, create a function that returns a css call like this\\n' + 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' + 'It can be called directly with props or interpolated in a styled call like this\\n' + \"let SomeComponent = styled('div')`${dynamicStyle}`\");\n }\n\n break;\n }\n\n case 'string':\n if (process.env.NODE_ENV !== 'production') {\n var matched = [];\n var replaced = interpolation.replace(animationRegex, function (match, p1, p2) {\n var fakeVarName = \"animation\" + matched.length;\n matched.push(\"const \" + fakeVarName + \" = keyframes`\" + p2.replace(/^@keyframes animation-\\w+/, '') + \"`\");\n return \"${\" + fakeVarName + \"}\";\n });\n\n if (matched.length) {\n console.error('`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\n' + 'Instead of doing this:\\n\\n' + [].concat(matched, [\"`\" + replaced + \"`\"]).join('\\n') + '\\n\\nYou should wrap it with `css` like this:\\n\\n' + (\"css`\" + replaced + \"`\"));\n }\n }\n\n break;\n } // finalize string values (regular strings and functions interpolated into css calls)\n\n\n if (registered == null) {\n return interpolation;\n }\n\n var cached = registered[interpolation];\n return cached !== undefined ? cached : interpolation;\n}\n\nfunction createStringFromObject(mergedProps, registered, obj) {\n var string = '';\n\n if (Array.isArray(obj)) {\n for (var i = 0; i < obj.length; i++) {\n string += handleInterpolation(mergedProps, registered, obj[i]) + \";\";\n }\n } else {\n for (var _key in obj) {\n var value = obj[_key];\n\n if (typeof value !== 'object') {\n if (registered != null && registered[value] !== undefined) {\n string += _key + \"{\" + registered[value] + \"}\";\n } else if (isProcessableValue(value)) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value) + \";\";\n }\n } else {\n if (_key === 'NO_COMPONENT_SELECTOR' && process.env.NODE_ENV !== 'production') {\n throw new Error(noComponentSelectorMessage);\n }\n\n if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {\n for (var _i = 0; _i < value.length; _i++) {\n if (isProcessableValue(value[_i])) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value[_i]) + \";\";\n }\n }\n } else {\n var interpolated = handleInterpolation(mergedProps, registered, value);\n\n switch (_key) {\n case 'animation':\n case 'animationName':\n {\n string += processStyleName(_key) + \":\" + interpolated + \";\";\n break;\n }\n\n default:\n {\n if (process.env.NODE_ENV !== 'production' && _key === 'undefined') {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR);\n }\n\n string += _key + \"{\" + interpolated + \"}\";\n }\n }\n }\n }\n }\n }\n\n return string;\n}\n\nvar labelPattern = /label:\\s*([^\\s;\\n{]+)\\s*(;|$)/g;\nvar sourceMapPattern;\n\nif (process.env.NODE_ENV !== 'production') {\n sourceMapPattern = /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//g;\n} // this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\n\n\nvar cursor;\nvar serializeStyles = function serializeStyles(args, registered, mergedProps) {\n if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {\n return args[0];\n }\n\n var stringMode = true;\n var styles = '';\n cursor = undefined;\n var strings = args[0];\n\n if (strings == null || strings.raw === undefined) {\n stringMode = false;\n styles += handleInterpolation(mergedProps, registered, strings);\n } else {\n if (process.env.NODE_ENV !== 'production' && strings[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[0];\n } // we start at 1 since we've already handled the first arg\n\n\n for (var i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i]);\n\n if (stringMode) {\n if (process.env.NODE_ENV !== 'production' && strings[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[i];\n }\n }\n\n var sourceMap;\n\n if (process.env.NODE_ENV !== 'production') {\n styles = styles.replace(sourceMapPattern, function (match) {\n sourceMap = match;\n return '';\n });\n } // using a global regex with .exec is stateful so lastIndex has to be reset each time\n\n\n labelPattern.lastIndex = 0;\n var identifierName = '';\n var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName += '-' + // $FlowFixMe we know it's not null\n match[1];\n }\n\n var name = hashString(styles) + identifierName;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe SerializedStyles type doesn't have toString property (and we don't want to add it)\n return {\n name: name,\n styles: styles,\n map: sourceMap,\n next: cursor,\n toString: function toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\";\n }\n };\n }\n\n return {\n name: name,\n styles: styles,\n next: cursor\n };\n};\n\nexport { serializeStyles };\n","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport { murmur2 as default };\n","import * as React from 'react';\n\nvar syncFallback = function syncFallback(create) {\n return create();\n};\n\nvar useInsertionEffect = React['useInsertion' + 'Effect'] ? React['useInsertion' + 'Effect'] : false;\nvar useInsertionEffectAlwaysWithSyncFallback = useInsertionEffect || syncFallback;\nvar useInsertionEffectWithLayoutFallback = useInsertionEffect || React.useLayoutEffect;\n\nexport { useInsertionEffectAlwaysWithSyncFallback, useInsertionEffectWithLayoutFallback };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","var isBrowser = \"object\" !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport * as React from 'react';\nimport isPropValid from '@emotion/is-prop-valid';\nimport { withEmotionCache, ThemeContext } from '@emotion/react';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar testOmitPropsOnStringTag = isPropValid;\n\nvar testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {\n return key !== 'theme';\n};\n\nvar getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {\n return typeof tag === 'string' && // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;\n};\nvar composeShouldForwardProps = function composeShouldForwardProps(tag, options, isReal) {\n var shouldForwardProp;\n\n if (options) {\n var optionsShouldForwardProp = options.shouldForwardProp;\n shouldForwardProp = tag.__emotion_forwardProp && optionsShouldForwardProp ? function (propName) {\n return tag.__emotion_forwardProp(propName) && optionsShouldForwardProp(propName);\n } : optionsShouldForwardProp;\n }\n\n if (typeof shouldForwardProp !== 'function' && isReal) {\n shouldForwardProp = tag.__emotion_forwardProp;\n }\n\n return shouldForwardProp;\n};\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar createStyled = function createStyled(tag, options) {\n if (process.env.NODE_ENV !== 'production') {\n if (tag === undefined) {\n throw new Error('You are trying to create a styled element with an undefined component.\\nYou may have forgotten to import it.');\n }\n }\n\n var isReal = tag.__emotion_real === tag;\n var baseTag = isReal && tag.__emotion_base || tag;\n var identifierName;\n var targetClassName;\n\n if (options !== undefined) {\n identifierName = options.label;\n targetClassName = options.target;\n }\n\n var shouldForwardProp = composeShouldForwardProps(tag, options, isReal);\n var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);\n var shouldUseAs = !defaultShouldForwardProp('as');\n return function () {\n var args = arguments;\n var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];\n\n if (identifierName !== undefined) {\n styles.push(\"label:\" + identifierName + \";\");\n }\n\n if (args[0] == null || args[0].raw === undefined) {\n styles.push.apply(styles, args);\n } else {\n if (process.env.NODE_ENV !== 'production' && args[0][0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[0][0]);\n var len = args.length;\n var i = 1;\n\n for (; i < len; i++) {\n if (process.env.NODE_ENV !== 'production' && args[0][i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[i], args[0][i]);\n }\n } // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class\n\n\n var Styled = withEmotionCache(function (props, cache, ref) {\n var FinalTag = shouldUseAs && props.as || baseTag;\n var className = '';\n var classInterpolations = [];\n var mergedProps = props;\n\n if (props.theme == null) {\n mergedProps = {};\n\n for (var key in props) {\n mergedProps[key] = props[key];\n }\n\n mergedProps.theme = React.useContext(ThemeContext);\n }\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, classInterpolations, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(styles.concat(classInterpolations), cache.registered, mergedProps);\n className += cache.key + \"-\" + serialized.name;\n\n if (targetClassName !== undefined) {\n className += \" \" + targetClassName;\n }\n\n var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(FinalTag) : defaultShouldForwardProp;\n var newProps = {};\n\n for (var _key in props) {\n if (shouldUseAs && _key === 'as') continue;\n\n if ( // $FlowFixMe\n finalShouldForwardProp(_key)) {\n newProps[_key] = props[_key];\n }\n }\n\n newProps.className = className;\n newProps.ref = ref;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof FinalTag === 'string'\n }), /*#__PURE__*/React.createElement(FinalTag, newProps));\n });\n Styled.displayName = identifierName !== undefined ? identifierName : \"Styled(\" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + \")\";\n Styled.defaultProps = tag.defaultProps;\n Styled.__emotion_real = Styled;\n Styled.__emotion_base = baseTag;\n Styled.__emotion_styles = styles;\n Styled.__emotion_forwardProp = shouldForwardProp;\n Object.defineProperty(Styled, 'toString', {\n value: function value() {\n if (targetClassName === undefined && process.env.NODE_ENV !== 'production') {\n return 'NO_COMPONENT_SELECTOR';\n } // $FlowFixMe: coerce undefined to string\n\n\n return \".\" + targetClassName;\n }\n });\n\n Styled.withComponent = function (nextTag, nextOptions) {\n return createStyled(nextTag, _extends({}, options, nextOptions, {\n shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)\n })).apply(void 0, styles);\n };\n\n return Styled;\n };\n};\n\nexport { createStyled as default };\n","import createStyled from '../base/dist/emotion-styled-base.browser.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport 'react';\nimport '@emotion/is-prop-valid';\nimport '@emotion/react';\nimport '@emotion/utils';\nimport '@emotion/serialize';\nimport '@emotion/use-insertion-effect-with-fallbacks';\n\nvar tags = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\nvar newStyled = createStyled.bind();\ntags.forEach(function (tagName) {\n // $FlowFixMe: we can ignore this because its exposed type is defined by the CreateStyled type\n newStyled[tagName] = newStyled(tagName);\n});\n\nexport { newStyled as default };\n","export function isPlainObject(item) {\n return item !== null && typeof item === 'object' && item.constructor === Object;\n}\nfunction deepClone(source) {\n if (!isPlainObject(source)) {\n return source;\n }\n const output = {};\n Object.keys(source).forEach(key => {\n output[key] = deepClone(source[key]);\n });\n return output;\n}\nexport default function deepmerge(target, source, options = {\n clone: true\n}) {\n const output = options.clone ? {\n ...target\n } : target;\n if (isPlainObject(target) && isPlainObject(source)) {\n Object.keys(source).forEach(key => {\n // Avoid prototype pollution\n if (key === '__proto__') {\n return;\n }\n if (isPlainObject(source[key]) && key in target && isPlainObject(target[key])) {\n // Since `output` is a clone of `target` and we have narrowed `target` in this block we can cast to the same type.\n output[key] = deepmerge(target[key], source[key], options);\n } else if (options.clone) {\n output[key] = isPlainObject(source[key]) ? deepClone(source[key]) : source[key];\n } else {\n output[key] = source[key];\n }\n });\n }\n return output;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"values\", \"unit\", \"step\"];\n// Sorted ASC by size. That's important.\n// It can't be configured as it's used statically for propTypes.\nexport const breakpointKeys = ['xs', 'sm', 'md', 'lg', 'xl'];\nconst sortBreakpointsValues = values => {\n const breakpointsAsArray = Object.keys(values).map(key => ({\n key,\n val: values[key]\n })) || [];\n // Sort in ascending order\n breakpointsAsArray.sort((breakpoint1, breakpoint2) => breakpoint1.val - breakpoint2.val);\n return breakpointsAsArray.reduce((acc, obj) => {\n return _extends({}, acc, {\n [obj.key]: obj.val\n });\n }, {});\n};\n\n// Keep in mind that @media is inclusive by the CSS specification.\nexport default function createBreakpoints(breakpoints) {\n const {\n // The breakpoint **start** at this value.\n // For instance with the first breakpoint xs: [xs, sm).\n values = {\n xs: 0,\n // phone\n sm: 600,\n // tablet\n md: 900,\n // small laptop\n lg: 1200,\n // desktop\n xl: 1536 // large screen\n },\n\n unit = 'px',\n step = 5\n } = breakpoints,\n other = _objectWithoutPropertiesLoose(breakpoints, _excluded);\n const sortedValues = sortBreakpointsValues(values);\n const keys = Object.keys(sortedValues);\n function up(key) {\n const value = typeof values[key] === 'number' ? values[key] : key;\n return `@media (min-width:${value}${unit})`;\n }\n function down(key) {\n const value = typeof values[key] === 'number' ? values[key] : key;\n return `@media (max-width:${value - step / 100}${unit})`;\n }\n function between(start, end) {\n const endIndex = keys.indexOf(end);\n return `@media (min-width:${typeof values[start] === 'number' ? values[start] : start}${unit}) and ` + `(max-width:${(endIndex !== -1 && typeof values[keys[endIndex]] === 'number' ? values[keys[endIndex]] : end) - step / 100}${unit})`;\n }\n function only(key) {\n if (keys.indexOf(key) + 1 < keys.length) {\n return between(key, keys[keys.indexOf(key) + 1]);\n }\n return up(key);\n }\n function not(key) {\n // handle first and last key separately, for better readability\n const keyIndex = keys.indexOf(key);\n if (keyIndex === 0) {\n return up(keys[1]);\n }\n if (keyIndex === keys.length - 1) {\n return down(keys[keyIndex]);\n }\n return between(key, keys[keys.indexOf(key) + 1]).replace('@media', '@media not all and');\n }\n return _extends({\n keys,\n values: sortedValues,\n up,\n down,\n between,\n only,\n not,\n unit\n }, other);\n}","const shape = {\n borderRadius: 4\n};\nexport default shape;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport PropTypes from 'prop-types';\nimport { deepmerge } from '@mui/utils';\nimport merge from './merge';\n\n// The breakpoint **start** at this value.\n// For instance with the first breakpoint xs: [xs, sm[.\nexport const values = {\n xs: 0,\n // phone\n sm: 600,\n // tablet\n md: 900,\n // small laptop\n lg: 1200,\n // desktop\n xl: 1536 // large screen\n};\n\nconst defaultBreakpoints = {\n // Sorted ASC by size. That's important.\n // It can't be configured as it's used statically for propTypes.\n keys: ['xs', 'sm', 'md', 'lg', 'xl'],\n up: key => `@media (min-width:${values[key]}px)`\n};\nexport function handleBreakpoints(props, propValue, styleFromPropValue) {\n const theme = props.theme || {};\n if (Array.isArray(propValue)) {\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n return propValue.reduce((acc, item, index) => {\n acc[themeBreakpoints.up(themeBreakpoints.keys[index])] = styleFromPropValue(propValue[index]);\n return acc;\n }, {});\n }\n if (typeof propValue === 'object') {\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n return Object.keys(propValue).reduce((acc, breakpoint) => {\n // key is breakpoint\n if (Object.keys(themeBreakpoints.values || values).indexOf(breakpoint) !== -1) {\n const mediaKey = themeBreakpoints.up(breakpoint);\n acc[mediaKey] = styleFromPropValue(propValue[breakpoint], breakpoint);\n } else {\n const cssKey = breakpoint;\n acc[cssKey] = propValue[cssKey];\n }\n return acc;\n }, {});\n }\n const output = styleFromPropValue(propValue);\n return output;\n}\nfunction breakpoints(styleFunction) {\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const newStyleFunction = props => {\n const theme = props.theme || {};\n const base = styleFunction(props);\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n const extended = themeBreakpoints.keys.reduce((acc, key) => {\n if (props[key]) {\n acc = acc || {};\n acc[themeBreakpoints.up(key)] = styleFunction(_extends({\n theme\n }, props[key]));\n }\n return acc;\n }, null);\n return merge(base, extended);\n };\n newStyleFunction.propTypes = process.env.NODE_ENV !== 'production' ? _extends({}, styleFunction.propTypes, {\n xs: PropTypes.object,\n sm: PropTypes.object,\n md: PropTypes.object,\n lg: PropTypes.object,\n xl: PropTypes.object\n }) : {};\n newStyleFunction.filterProps = ['xs', 'sm', 'md', 'lg', 'xl', ...styleFunction.filterProps];\n return newStyleFunction;\n}\nexport function createEmptyBreakpointObject(breakpointsInput = {}) {\n var _breakpointsInput$key;\n const breakpointsInOrder = (_breakpointsInput$key = breakpointsInput.keys) == null ? void 0 : _breakpointsInput$key.reduce((acc, key) => {\n const breakpointStyleKey = breakpointsInput.up(key);\n acc[breakpointStyleKey] = {};\n return acc;\n }, {});\n return breakpointsInOrder || {};\n}\nexport function removeUnusedBreakpoints(breakpointKeys, style) {\n return breakpointKeys.reduce((acc, key) => {\n const breakpointOutput = acc[key];\n const isBreakpointUnused = !breakpointOutput || Object.keys(breakpointOutput).length === 0;\n if (isBreakpointUnused) {\n delete acc[key];\n }\n return acc;\n }, style);\n}\nexport function mergeBreakpointsInOrder(breakpointsInput, ...styles) {\n const emptyBreakpoints = createEmptyBreakpointObject(breakpointsInput);\n const mergedOutput = [emptyBreakpoints, ...styles].reduce((prev, next) => deepmerge(prev, next), {});\n return removeUnusedBreakpoints(Object.keys(emptyBreakpoints), mergedOutput);\n}\n\n// compute base for responsive values; e.g.,\n// [1,2,3] => {xs: true, sm: true, md: true}\n// {xs: 1, sm: 2, md: 3} => {xs: true, sm: true, md: true}\nexport function computeBreakpointsBase(breakpointValues, themeBreakpoints) {\n // fixed value\n if (typeof breakpointValues !== 'object') {\n return {};\n }\n const base = {};\n const breakpointsKeys = Object.keys(themeBreakpoints);\n if (Array.isArray(breakpointValues)) {\n breakpointsKeys.forEach((breakpoint, i) => {\n if (i < breakpointValues.length) {\n base[breakpoint] = true;\n }\n });\n } else {\n breakpointsKeys.forEach(breakpoint => {\n if (breakpointValues[breakpoint] != null) {\n base[breakpoint] = true;\n }\n });\n }\n return base;\n}\nexport function resolveBreakpointValues({\n values: breakpointValues,\n breakpoints: themeBreakpoints,\n base: customBase\n}) {\n const base = customBase || computeBreakpointsBase(breakpointValues, themeBreakpoints);\n const keys = Object.keys(base);\n if (keys.length === 0) {\n return breakpointValues;\n }\n let previous;\n return keys.reduce((acc, breakpoint, i) => {\n if (Array.isArray(breakpointValues)) {\n acc[breakpoint] = breakpointValues[i] != null ? breakpointValues[i] : breakpointValues[previous];\n previous = i;\n } else if (typeof breakpointValues === 'object') {\n acc[breakpoint] = breakpointValues[breakpoint] != null ? breakpointValues[breakpoint] : breakpointValues[previous];\n previous = breakpoint;\n } else {\n acc[breakpoint] = breakpointValues;\n }\n return acc;\n }, {});\n}\nexport default breakpoints;","import _formatMuiErrorMessage from \"./formatMuiErrorMessage\";\n// It should to be noted that this function isn't equivalent to `text-transform: capitalize`.\n//\n// A strict capitalization should uppercase the first letter of each word in the sentence.\n// We only handle the first word.\nexport default function capitalize(string) {\n if (typeof string !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: \\`capitalize(string)\\` expects a string argument.` : _formatMuiErrorMessage(7));\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n}","import { unstable_capitalize as capitalize } from '@mui/utils';\nimport responsivePropType from './responsivePropType';\nimport { handleBreakpoints } from './breakpoints';\nexport function getPath(obj, path, checkVars = true) {\n if (!path || typeof path !== 'string') {\n return null;\n }\n\n // Check if CSS variables are used\n if (obj && obj.vars && checkVars) {\n const val = `vars.${path}`.split('.').reduce((acc, item) => acc && acc[item] ? acc[item] : null, obj);\n if (val != null) {\n return val;\n }\n }\n return path.split('.').reduce((acc, item) => {\n if (acc && acc[item] != null) {\n return acc[item];\n }\n return null;\n }, obj);\n}\nexport function getStyleValue(themeMapping, transform, propValueFinal, userValue = propValueFinal) {\n let value;\n if (typeof themeMapping === 'function') {\n value = themeMapping(propValueFinal);\n } else if (Array.isArray(themeMapping)) {\n value = themeMapping[propValueFinal] || userValue;\n } else {\n value = getPath(themeMapping, propValueFinal) || userValue;\n }\n if (transform) {\n value = transform(value, userValue, themeMapping);\n }\n return value;\n}\nfunction style(options) {\n const {\n prop,\n cssProperty = options.prop,\n themeKey,\n transform\n } = options;\n\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const fn = props => {\n if (props[prop] == null) {\n return null;\n }\n const propValue = props[prop];\n const theme = props.theme;\n const themeMapping = getPath(theme, themeKey) || {};\n const styleFromPropValue = propValueFinal => {\n let value = getStyleValue(themeMapping, transform, propValueFinal);\n if (propValueFinal === value && typeof propValueFinal === 'string') {\n // Haven't found value\n value = getStyleValue(themeMapping, transform, `${prop}${propValueFinal === 'default' ? '' : capitalize(propValueFinal)}`, propValueFinal);\n }\n if (cssProperty === false) {\n return value;\n }\n return {\n [cssProperty]: value\n };\n };\n return handleBreakpoints(props, propValue, styleFromPropValue);\n };\n fn.propTypes = process.env.NODE_ENV !== 'production' ? {\n [prop]: responsivePropType\n } : {};\n fn.filterProps = [prop];\n return fn;\n}\nexport default style;","import { deepmerge } from '@mui/utils';\nfunction merge(acc, item) {\n if (!item) {\n return acc;\n }\n return deepmerge(acc, item, {\n clone: false // No need to clone deep, it's way faster.\n });\n}\n\nexport default merge;","import responsivePropType from './responsivePropType';\nimport { handleBreakpoints } from './breakpoints';\nimport { getPath } from './style';\nimport merge from './merge';\nimport memoize from './memoize';\nconst properties = {\n m: 'margin',\n p: 'padding'\n};\nconst directions = {\n t: 'Top',\n r: 'Right',\n b: 'Bottom',\n l: 'Left',\n x: ['Left', 'Right'],\n y: ['Top', 'Bottom']\n};\nconst aliases = {\n marginX: 'mx',\n marginY: 'my',\n paddingX: 'px',\n paddingY: 'py'\n};\n\n// memoize() impact:\n// From 300,000 ops/sec\n// To 350,000 ops/sec\nconst getCssProperties = memoize(prop => {\n // It's not a shorthand notation.\n if (prop.length > 2) {\n if (aliases[prop]) {\n prop = aliases[prop];\n } else {\n return [prop];\n }\n }\n const [a, b] = prop.split('');\n const property = properties[a];\n const direction = directions[b] || '';\n return Array.isArray(direction) ? direction.map(dir => property + dir) : [property + direction];\n});\nexport const marginKeys = ['m', 'mt', 'mr', 'mb', 'ml', 'mx', 'my', 'margin', 'marginTop', 'marginRight', 'marginBottom', 'marginLeft', 'marginX', 'marginY', 'marginInline', 'marginInlineStart', 'marginInlineEnd', 'marginBlock', 'marginBlockStart', 'marginBlockEnd'];\nexport const paddingKeys = ['p', 'pt', 'pr', 'pb', 'pl', 'px', 'py', 'padding', 'paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft', 'paddingX', 'paddingY', 'paddingInline', 'paddingInlineStart', 'paddingInlineEnd', 'paddingBlock', 'paddingBlockStart', 'paddingBlockEnd'];\nconst spacingKeys = [...marginKeys, ...paddingKeys];\nexport function createUnaryUnit(theme, themeKey, defaultValue, propName) {\n var _getPath;\n const themeSpacing = (_getPath = getPath(theme, themeKey, false)) != null ? _getPath : defaultValue;\n if (typeof themeSpacing === 'number') {\n return abs => {\n if (typeof abs === 'string') {\n return abs;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (typeof abs !== 'number') {\n console.error(`MUI: Expected ${propName} argument to be a number or a string, got ${abs}.`);\n }\n }\n return themeSpacing * abs;\n };\n }\n if (Array.isArray(themeSpacing)) {\n return abs => {\n if (typeof abs === 'string') {\n return abs;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(abs)) {\n console.error([`MUI: The \\`theme.${themeKey}\\` array type cannot be combined with non integer values.` + `You should either use an integer value that can be used as index, or define the \\`theme.${themeKey}\\` as a number.`].join('\\n'));\n } else if (abs > themeSpacing.length - 1) {\n console.error([`MUI: The value provided (${abs}) overflows.`, `The supported values are: ${JSON.stringify(themeSpacing)}.`, `${abs} > ${themeSpacing.length - 1}, you need to add the missing values.`].join('\\n'));\n }\n }\n return themeSpacing[abs];\n };\n }\n if (typeof themeSpacing === 'function') {\n return themeSpacing;\n }\n if (process.env.NODE_ENV !== 'production') {\n console.error([`MUI: The \\`theme.${themeKey}\\` value (${themeSpacing}) is invalid.`, 'It should be a number, an array or a function.'].join('\\n'));\n }\n return () => undefined;\n}\nexport function createUnarySpacing(theme) {\n return createUnaryUnit(theme, 'spacing', 8, 'spacing');\n}\nexport function getValue(transformer, propValue) {\n if (typeof propValue === 'string' || propValue == null) {\n return propValue;\n }\n const abs = Math.abs(propValue);\n const transformed = transformer(abs);\n if (propValue >= 0) {\n return transformed;\n }\n if (typeof transformed === 'number') {\n return -transformed;\n }\n return `-${transformed}`;\n}\nexport function getStyleFromPropValue(cssProperties, transformer) {\n return propValue => cssProperties.reduce((acc, cssProperty) => {\n acc[cssProperty] = getValue(transformer, propValue);\n return acc;\n }, {});\n}\nfunction resolveCssProperty(props, keys, prop, transformer) {\n // Using a hash computation over an array iteration could be faster, but with only 28 items,\n // it's doesn't worth the bundle size.\n if (keys.indexOf(prop) === -1) {\n return null;\n }\n const cssProperties = getCssProperties(prop);\n const styleFromPropValue = getStyleFromPropValue(cssProperties, transformer);\n const propValue = props[prop];\n return handleBreakpoints(props, propValue, styleFromPropValue);\n}\nfunction style(props, keys) {\n const transformer = createUnarySpacing(props.theme);\n return Object.keys(props).map(prop => resolveCssProperty(props, keys, prop, transformer)).reduce(merge, {});\n}\nexport function margin(props) {\n return style(props, marginKeys);\n}\nmargin.propTypes = process.env.NODE_ENV !== 'production' ? marginKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\nmargin.filterProps = marginKeys;\nexport function padding(props) {\n return style(props, paddingKeys);\n}\npadding.propTypes = process.env.NODE_ENV !== 'production' ? paddingKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\npadding.filterProps = paddingKeys;\nfunction spacing(props) {\n return style(props, spacingKeys);\n}\nspacing.propTypes = process.env.NODE_ENV !== 'production' ? spacingKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\nspacing.filterProps = spacingKeys;\nexport default spacing;","export default function memoize(fn) {\n const cache = {};\n return arg => {\n if (cache[arg] === undefined) {\n cache[arg] = fn(arg);\n }\n return cache[arg];\n };\n}","import merge from './merge';\nfunction compose(...styles) {\n const handlers = styles.reduce((acc, style) => {\n style.filterProps.forEach(prop => {\n acc[prop] = style;\n });\n return acc;\n }, {});\n\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const fn = props => {\n return Object.keys(props).reduce((acc, prop) => {\n if (handlers[prop]) {\n return merge(acc, handlers[prop](props));\n }\n return acc;\n }, {});\n };\n fn.propTypes = process.env.NODE_ENV !== 'production' ? styles.reduce((acc, style) => Object.assign(acc, style.propTypes), {}) : {};\n fn.filterProps = styles.reduce((acc, style) => acc.concat(style.filterProps), []);\n return fn;\n}\nexport default compose;","import responsivePropType from './responsivePropType';\nimport style from './style';\nimport compose from './compose';\nimport { createUnaryUnit, getValue } from './spacing';\nimport { handleBreakpoints } from './breakpoints';\nexport function borderTransform(value) {\n if (typeof value !== 'number') {\n return value;\n }\n return `${value}px solid`;\n}\nexport const border = style({\n prop: 'border',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderTop = style({\n prop: 'borderTop',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderRight = style({\n prop: 'borderRight',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderBottom = style({\n prop: 'borderBottom',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderLeft = style({\n prop: 'borderLeft',\n themeKey: 'borders',\n transform: borderTransform\n});\nexport const borderColor = style({\n prop: 'borderColor',\n themeKey: 'palette'\n});\nexport const borderTopColor = style({\n prop: 'borderTopColor',\n themeKey: 'palette'\n});\nexport const borderRightColor = style({\n prop: 'borderRightColor',\n themeKey: 'palette'\n});\nexport const borderBottomColor = style({\n prop: 'borderBottomColor',\n themeKey: 'palette'\n});\nexport const borderLeftColor = style({\n prop: 'borderLeftColor',\n themeKey: 'palette'\n});\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const borderRadius = props => {\n if (props.borderRadius !== undefined && props.borderRadius !== null) {\n const transformer = createUnaryUnit(props.theme, 'shape.borderRadius', 4, 'borderRadius');\n const styleFromPropValue = propValue => ({\n borderRadius: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.borderRadius, styleFromPropValue);\n }\n return null;\n};\nborderRadius.propTypes = process.env.NODE_ENV !== 'production' ? {\n borderRadius: responsivePropType\n} : {};\nborderRadius.filterProps = ['borderRadius'];\nconst borders = compose(border, borderTop, borderRight, borderBottom, borderLeft, borderColor, borderTopColor, borderRightColor, borderBottomColor, borderLeftColor, borderRadius);\nexport default borders;","import style from './style';\nimport compose from './compose';\nimport { createUnaryUnit, getValue } from './spacing';\nimport { handleBreakpoints } from './breakpoints';\nimport responsivePropType from './responsivePropType';\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const gap = props => {\n if (props.gap !== undefined && props.gap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'gap');\n const styleFromPropValue = propValue => ({\n gap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.gap, styleFromPropValue);\n }\n return null;\n};\ngap.propTypes = process.env.NODE_ENV !== 'production' ? {\n gap: responsivePropType\n} : {};\ngap.filterProps = ['gap'];\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const columnGap = props => {\n if (props.columnGap !== undefined && props.columnGap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'columnGap');\n const styleFromPropValue = propValue => ({\n columnGap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.columnGap, styleFromPropValue);\n }\n return null;\n};\ncolumnGap.propTypes = process.env.NODE_ENV !== 'production' ? {\n columnGap: responsivePropType\n} : {};\ncolumnGap.filterProps = ['columnGap'];\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const rowGap = props => {\n if (props.rowGap !== undefined && props.rowGap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'rowGap');\n const styleFromPropValue = propValue => ({\n rowGap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.rowGap, styleFromPropValue);\n }\n return null;\n};\nrowGap.propTypes = process.env.NODE_ENV !== 'production' ? {\n rowGap: responsivePropType\n} : {};\nrowGap.filterProps = ['rowGap'];\nexport const gridColumn = style({\n prop: 'gridColumn'\n});\nexport const gridRow = style({\n prop: 'gridRow'\n});\nexport const gridAutoFlow = style({\n prop: 'gridAutoFlow'\n});\nexport const gridAutoColumns = style({\n prop: 'gridAutoColumns'\n});\nexport const gridAutoRows = style({\n prop: 'gridAutoRows'\n});\nexport const gridTemplateColumns = style({\n prop: 'gridTemplateColumns'\n});\nexport const gridTemplateRows = style({\n prop: 'gridTemplateRows'\n});\nexport const gridTemplateAreas = style({\n prop: 'gridTemplateAreas'\n});\nexport const gridArea = style({\n prop: 'gridArea'\n});\nconst grid = compose(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea);\nexport default grid;","import style from './style';\nimport compose from './compose';\nexport function paletteTransform(value, userValue) {\n if (userValue === 'grey') {\n return userValue;\n }\n return value;\n}\nexport const color = style({\n prop: 'color',\n themeKey: 'palette',\n transform: paletteTransform\n});\nexport const bgcolor = style({\n prop: 'bgcolor',\n cssProperty: 'backgroundColor',\n themeKey: 'palette',\n transform: paletteTransform\n});\nexport const backgroundColor = style({\n prop: 'backgroundColor',\n themeKey: 'palette',\n transform: paletteTransform\n});\nconst palette = compose(color, bgcolor, backgroundColor);\nexport default palette;","import style from './style';\nimport compose from './compose';\nimport { handleBreakpoints, values as breakpointsValues } from './breakpoints';\nexport function sizingTransform(value) {\n return value <= 1 && value !== 0 ? `${value * 100}%` : value;\n}\nexport const width = style({\n prop: 'width',\n transform: sizingTransform\n});\nexport const maxWidth = props => {\n if (props.maxWidth !== undefined && props.maxWidth !== null) {\n const styleFromPropValue = propValue => {\n var _props$theme, _props$theme$breakpoi, _props$theme$breakpoi2;\n const breakpoint = ((_props$theme = props.theme) == null ? void 0 : (_props$theme$breakpoi = _props$theme.breakpoints) == null ? void 0 : (_props$theme$breakpoi2 = _props$theme$breakpoi.values) == null ? void 0 : _props$theme$breakpoi2[propValue]) || breakpointsValues[propValue];\n return {\n maxWidth: breakpoint || sizingTransform(propValue)\n };\n };\n return handleBreakpoints(props, props.maxWidth, styleFromPropValue);\n }\n return null;\n};\nmaxWidth.filterProps = ['maxWidth'];\nexport const minWidth = style({\n prop: 'minWidth',\n transform: sizingTransform\n});\nexport const height = style({\n prop: 'height',\n transform: sizingTransform\n});\nexport const maxHeight = style({\n prop: 'maxHeight',\n transform: sizingTransform\n});\nexport const minHeight = style({\n prop: 'minHeight',\n transform: sizingTransform\n});\nexport const sizeWidth = style({\n prop: 'size',\n cssProperty: 'width',\n transform: sizingTransform\n});\nexport const sizeHeight = style({\n prop: 'size',\n cssProperty: 'height',\n transform: sizingTransform\n});\nexport const boxSizing = style({\n prop: 'boxSizing'\n});\nconst sizing = compose(width, maxWidth, minWidth, height, maxHeight, minHeight, boxSizing);\nexport default sizing;","import { padding, margin } from '../spacing';\nimport { borderRadius, borderTransform } from '../borders';\nimport { gap, rowGap, columnGap } from '../cssGrid';\nimport { paletteTransform } from '../palette';\nimport { maxWidth, sizingTransform } from '../sizing';\nconst defaultSxConfig = {\n // borders\n border: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderTop: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderRight: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderBottom: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderLeft: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderColor: {\n themeKey: 'palette'\n },\n borderTopColor: {\n themeKey: 'palette'\n },\n borderRightColor: {\n themeKey: 'palette'\n },\n borderBottomColor: {\n themeKey: 'palette'\n },\n borderLeftColor: {\n themeKey: 'palette'\n },\n borderRadius: {\n themeKey: 'shape.borderRadius',\n style: borderRadius\n },\n // palette\n color: {\n themeKey: 'palette',\n transform: paletteTransform\n },\n bgcolor: {\n themeKey: 'palette',\n cssProperty: 'backgroundColor',\n transform: paletteTransform\n },\n backgroundColor: {\n themeKey: 'palette',\n transform: paletteTransform\n },\n // spacing\n p: {\n style: padding\n },\n pt: {\n style: padding\n },\n pr: {\n style: padding\n },\n pb: {\n style: padding\n },\n pl: {\n style: padding\n },\n px: {\n style: padding\n },\n py: {\n style: padding\n },\n padding: {\n style: padding\n },\n paddingTop: {\n style: padding\n },\n paddingRight: {\n style: padding\n },\n paddingBottom: {\n style: padding\n },\n paddingLeft: {\n style: padding\n },\n paddingX: {\n style: padding\n },\n paddingY: {\n style: padding\n },\n paddingInline: {\n style: padding\n },\n paddingInlineStart: {\n style: padding\n },\n paddingInlineEnd: {\n style: padding\n },\n paddingBlock: {\n style: padding\n },\n paddingBlockStart: {\n style: padding\n },\n paddingBlockEnd: {\n style: padding\n },\n m: {\n style: margin\n },\n mt: {\n style: margin\n },\n mr: {\n style: margin\n },\n mb: {\n style: margin\n },\n ml: {\n style: margin\n },\n mx: {\n style: margin\n },\n my: {\n style: margin\n },\n margin: {\n style: margin\n },\n marginTop: {\n style: margin\n },\n marginRight: {\n style: margin\n },\n marginBottom: {\n style: margin\n },\n marginLeft: {\n style: margin\n },\n marginX: {\n style: margin\n },\n marginY: {\n style: margin\n },\n marginInline: {\n style: margin\n },\n marginInlineStart: {\n style: margin\n },\n marginInlineEnd: {\n style: margin\n },\n marginBlock: {\n style: margin\n },\n marginBlockStart: {\n style: margin\n },\n marginBlockEnd: {\n style: margin\n },\n // display\n displayPrint: {\n cssProperty: false,\n transform: value => ({\n '@media print': {\n display: value\n }\n })\n },\n display: {},\n overflow: {},\n textOverflow: {},\n visibility: {},\n whiteSpace: {},\n // flexbox\n flexBasis: {},\n flexDirection: {},\n flexWrap: {},\n justifyContent: {},\n alignItems: {},\n alignContent: {},\n order: {},\n flex: {},\n flexGrow: {},\n flexShrink: {},\n alignSelf: {},\n justifyItems: {},\n justifySelf: {},\n // grid\n gap: {\n style: gap\n },\n rowGap: {\n style: rowGap\n },\n columnGap: {\n style: columnGap\n },\n gridColumn: {},\n gridRow: {},\n gridAutoFlow: {},\n gridAutoColumns: {},\n gridAutoRows: {},\n gridTemplateColumns: {},\n gridTemplateRows: {},\n gridTemplateAreas: {},\n gridArea: {},\n // positions\n position: {},\n zIndex: {\n themeKey: 'zIndex'\n },\n top: {},\n right: {},\n bottom: {},\n left: {},\n // shadows\n boxShadow: {\n themeKey: 'shadows'\n },\n // sizing\n width: {\n transform: sizingTransform\n },\n maxWidth: {\n style: maxWidth\n },\n minWidth: {\n transform: sizingTransform\n },\n height: {\n transform: sizingTransform\n },\n maxHeight: {\n transform: sizingTransform\n },\n minHeight: {\n transform: sizingTransform\n },\n boxSizing: {},\n // typography\n fontFamily: {\n themeKey: 'typography'\n },\n fontSize: {\n themeKey: 'typography'\n },\n fontStyle: {\n themeKey: 'typography'\n },\n fontWeight: {\n themeKey: 'typography'\n },\n letterSpacing: {},\n textTransform: {},\n lineHeight: {},\n textAlign: {},\n typography: {\n cssProperty: false,\n themeKey: 'typography'\n }\n};\nexport default defaultSxConfig;","import { unstable_capitalize as capitalize } from '@mui/utils';\nimport merge from '../merge';\nimport { getPath, getStyleValue as getValue } from '../style';\nimport { handleBreakpoints, createEmptyBreakpointObject, removeUnusedBreakpoints } from '../breakpoints';\nimport defaultSxConfig from './defaultSxConfig';\nfunction objectsHaveSameKeys(...objects) {\n const allKeys = objects.reduce((keys, object) => keys.concat(Object.keys(object)), []);\n const union = new Set(allKeys);\n return objects.every(object => union.size === Object.keys(object).length);\n}\nfunction callIfFn(maybeFn, arg) {\n return typeof maybeFn === 'function' ? maybeFn(arg) : maybeFn;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function unstable_createStyleFunctionSx() {\n function getThemeValue(prop, val, theme, config) {\n const props = {\n [prop]: val,\n theme\n };\n const options = config[prop];\n if (!options) {\n return {\n [prop]: val\n };\n }\n const {\n cssProperty = prop,\n themeKey,\n transform,\n style\n } = options;\n if (val == null) {\n return null;\n }\n if (themeKey === 'typography' && val === 'inherit') {\n return {\n [prop]: val\n };\n }\n const themeMapping = getPath(theme, themeKey) || {};\n if (style) {\n return style(props);\n }\n const styleFromPropValue = propValueFinal => {\n let value = getValue(themeMapping, transform, propValueFinal);\n if (propValueFinal === value && typeof propValueFinal === 'string') {\n // Haven't found value\n value = getValue(themeMapping, transform, `${prop}${propValueFinal === 'default' ? '' : capitalize(propValueFinal)}`, propValueFinal);\n }\n if (cssProperty === false) {\n return value;\n }\n return {\n [cssProperty]: value\n };\n };\n return handleBreakpoints(props, val, styleFromPropValue);\n }\n function styleFunctionSx(props) {\n var _theme$unstable_sxCon;\n const {\n sx,\n theme = {}\n } = props || {};\n if (!sx) {\n return null; // Emotion & styled-components will neglect null\n }\n\n const config = (_theme$unstable_sxCon = theme.unstable_sxConfig) != null ? _theme$unstable_sxCon : defaultSxConfig;\n\n /*\n * Receive `sxInput` as object or callback\n * and then recursively check keys & values to create media query object styles.\n * (the result will be used in `styled`)\n */\n function traverse(sxInput) {\n let sxObject = sxInput;\n if (typeof sxInput === 'function') {\n sxObject = sxInput(theme);\n } else if (typeof sxInput !== 'object') {\n // value\n return sxInput;\n }\n if (!sxObject) {\n return null;\n }\n const emptyBreakpoints = createEmptyBreakpointObject(theme.breakpoints);\n const breakpointsKeys = Object.keys(emptyBreakpoints);\n let css = emptyBreakpoints;\n Object.keys(sxObject).forEach(styleKey => {\n const value = callIfFn(sxObject[styleKey], theme);\n if (value !== null && value !== undefined) {\n if (typeof value === 'object') {\n if (config[styleKey]) {\n css = merge(css, getThemeValue(styleKey, value, theme, config));\n } else {\n const breakpointsValues = handleBreakpoints({\n theme\n }, value, x => ({\n [styleKey]: x\n }));\n if (objectsHaveSameKeys(breakpointsValues, value)) {\n css[styleKey] = styleFunctionSx({\n sx: value,\n theme\n });\n } else {\n css = merge(css, breakpointsValues);\n }\n }\n } else {\n css = merge(css, getThemeValue(styleKey, value, theme, config));\n }\n }\n });\n return removeUnusedBreakpoints(breakpointsKeys, css);\n }\n return Array.isArray(sx) ? sx.map(traverse) : traverse(sx);\n }\n return styleFunctionSx;\n}\nconst styleFunctionSx = unstable_createStyleFunctionSx();\nstyleFunctionSx.filterProps = ['sx'];\nexport default styleFunctionSx;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"breakpoints\", \"palette\", \"spacing\", \"shape\"];\nimport { deepmerge } from '@mui/utils';\nimport createBreakpoints from './createBreakpoints';\nimport shape from './shape';\nimport createSpacing from './createSpacing';\nimport styleFunctionSx from '../styleFunctionSx/styleFunctionSx';\nimport defaultSxConfig from '../styleFunctionSx/defaultSxConfig';\nfunction createTheme(options = {}, ...args) {\n const {\n breakpoints: breakpointsInput = {},\n palette: paletteInput = {},\n spacing: spacingInput,\n shape: shapeInput = {}\n } = options,\n other = _objectWithoutPropertiesLoose(options, _excluded);\n const breakpoints = createBreakpoints(breakpointsInput);\n const spacing = createSpacing(spacingInput);\n let muiTheme = deepmerge({\n breakpoints,\n direction: 'ltr',\n components: {},\n // Inject component definitions.\n palette: _extends({\n mode: 'light'\n }, paletteInput),\n spacing,\n shape: _extends({}, shape, shapeInput)\n }, other);\n muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);\n muiTheme.unstable_sxConfig = _extends({}, defaultSxConfig, other == null ? void 0 : other.unstable_sxConfig);\n muiTheme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n return muiTheme;\n}\nexport default createTheme;","import { createUnarySpacing } from '../spacing';\n\n// The different signatures imply different meaning for their arguments that can't be expressed structurally.\n// We express the difference with variable names.\n/* tslint:disable:unified-signatures */\n/* tslint:enable:unified-signatures */\n\nexport default function createSpacing(spacingInput = 8) {\n // Already transformed.\n if (spacingInput.mui) {\n return spacingInput;\n }\n\n // Material Design layouts are visually balanced. Most measurements align to an 8dp grid, which aligns both spacing and the overall layout.\n // Smaller components, such as icons, can align to a 4dp grid.\n // https://m2.material.io/design/layout/understanding-layout.html\n const transform = createUnarySpacing({\n spacing: spacingInput\n });\n const spacing = (...argsInput) => {\n if (process.env.NODE_ENV !== 'production') {\n if (!(argsInput.length <= 4)) {\n console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${argsInput.length}`);\n }\n }\n const args = argsInput.length === 0 ? [1] : argsInput;\n return args.map(argument => {\n const output = transform(argument);\n return typeof output === 'number' ? `${output}px` : output;\n }).join(' ');\n };\n spacing.mui = true;\n return spacing;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"variant\"];\nimport { unstable_capitalize as capitalize } from '@mui/utils';\nfunction isEmpty(string) {\n return string.length === 0;\n}\n\n/**\n * Generates string classKey based on the properties provided. It starts with the\n * variant if defined, and then it appends all other properties in alphabetical order.\n * @param {object} props - the properties for which the classKey should be created.\n */\nexport default function propsToClassKey(props) {\n const {\n variant\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n let classKey = variant || '';\n Object.keys(other).sort().forEach(key => {\n if (key === 'color') {\n classKey += isEmpty(classKey) ? props[key] : capitalize(props[key]);\n } else {\n classKey += `${isEmpty(classKey) ? key : capitalize(key)}${capitalize(props[key].toString())}`;\n }\n });\n return classKey;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"name\", \"slot\", \"skipVariantsResolver\", \"skipSx\", \"overridesResolver\"];\n/* eslint-disable no-underscore-dangle */\nimport styledEngineStyled, { internal_processStyles as processStyles } from '@mui/styled-engine';\nimport { getDisplayName } from '@mui/utils';\nimport createTheme from './createTheme';\nimport propsToClassKey from './propsToClassKey';\nimport styleFunctionSx from './styleFunctionSx';\nfunction isEmpty(obj) {\n return Object.keys(obj).length === 0;\n}\n\n// https://github.com/emotion-js/emotion/blob/26ded6109fcd8ca9875cc2ce4564fee678a3f3c5/packages/styled/src/utils.js#L40\nfunction isStringTag(tag) {\n return typeof tag === 'string' &&\n // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96;\n}\nconst getStyleOverrides = (name, theme) => {\n if (theme.components && theme.components[name] && theme.components[name].styleOverrides) {\n return theme.components[name].styleOverrides;\n }\n return null;\n};\nconst getVariantStyles = (name, theme) => {\n let variants = [];\n if (theme && theme.components && theme.components[name] && theme.components[name].variants) {\n variants = theme.components[name].variants;\n }\n const variantsStyles = {};\n variants.forEach(definition => {\n const key = propsToClassKey(definition.props);\n variantsStyles[key] = definition.style;\n });\n return variantsStyles;\n};\nconst variantsResolver = (props, styles, theme, name) => {\n var _theme$components, _theme$components$nam;\n const {\n ownerState = {}\n } = props;\n const variantsStyles = [];\n const themeVariants = theme == null ? void 0 : (_theme$components = theme.components) == null ? void 0 : (_theme$components$nam = _theme$components[name]) == null ? void 0 : _theme$components$nam.variants;\n if (themeVariants) {\n themeVariants.forEach(themeVariant => {\n let isMatch = true;\n Object.keys(themeVariant.props).forEach(key => {\n if (ownerState[key] !== themeVariant.props[key] && props[key] !== themeVariant.props[key]) {\n isMatch = false;\n }\n });\n if (isMatch) {\n variantsStyles.push(styles[propsToClassKey(themeVariant.props)]);\n }\n });\n }\n return variantsStyles;\n};\n\n// Update /system/styled/#api in case if this changes\nexport function shouldForwardProp(prop) {\n return prop !== 'ownerState' && prop !== 'theme' && prop !== 'sx' && prop !== 'as';\n}\nexport const systemDefaultTheme = createTheme();\nconst lowercaseFirstLetter = string => {\n return string.charAt(0).toLowerCase() + string.slice(1);\n};\nfunction resolveTheme({\n defaultTheme,\n theme,\n themeId\n}) {\n return isEmpty(theme) ? defaultTheme : theme[themeId] || theme;\n}\nexport default function createStyled(input = {}) {\n const {\n themeId,\n defaultTheme = systemDefaultTheme,\n rootShouldForwardProp = shouldForwardProp,\n slotShouldForwardProp = shouldForwardProp\n } = input;\n const systemSx = props => {\n return styleFunctionSx(_extends({}, props, {\n theme: resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }))\n }));\n };\n systemSx.__mui_systemSx = true;\n return (tag, inputOptions = {}) => {\n // Filter out the `sx` style function from the previous styled component to prevent unnecessary styles generated by the composite components.\n processStyles(tag, styles => styles.filter(style => !(style != null && style.__mui_systemSx)));\n const {\n name: componentName,\n slot: componentSlot,\n skipVariantsResolver: inputSkipVariantsResolver,\n skipSx: inputSkipSx,\n overridesResolver\n } = inputOptions,\n options = _objectWithoutPropertiesLoose(inputOptions, _excluded);\n\n // if skipVariantsResolver option is defined, take the value, otherwise, true for root and false for other slots.\n const skipVariantsResolver = inputSkipVariantsResolver !== undefined ? inputSkipVariantsResolver : componentSlot && componentSlot !== 'Root' || false;\n const skipSx = inputSkipSx || false;\n let label;\n if (process.env.NODE_ENV !== 'production') {\n if (componentName) {\n label = `${componentName}-${lowercaseFirstLetter(componentSlot || 'Root')}`;\n }\n }\n let shouldForwardPropOption = shouldForwardProp;\n if (componentSlot === 'Root') {\n shouldForwardPropOption = rootShouldForwardProp;\n } else if (componentSlot) {\n // any other slot specified\n shouldForwardPropOption = slotShouldForwardProp;\n } else if (isStringTag(tag)) {\n // for string (html) tag, preserve the behavior in emotion & styled-components.\n shouldForwardPropOption = undefined;\n }\n const defaultStyledResolver = styledEngineStyled(tag, _extends({\n shouldForwardProp: shouldForwardPropOption,\n label\n }, options));\n const muiStyledResolver = (styleArg, ...expressions) => {\n const expressionsWithDefaultTheme = expressions ? expressions.map(stylesArg => {\n // On the server Emotion doesn't use React.forwardRef for creating components, so the created\n // component stays as a function. This condition makes sure that we do not interpolate functions\n // which are basically components used as a selectors.\n return typeof stylesArg === 'function' && stylesArg.__emotion_real !== stylesArg ? props => {\n return stylesArg(_extends({}, props, {\n theme: resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }))\n }));\n } : stylesArg;\n }) : [];\n let transformedStyleArg = styleArg;\n if (componentName && overridesResolver) {\n expressionsWithDefaultTheme.push(props => {\n const theme = resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }));\n const styleOverrides = getStyleOverrides(componentName, theme);\n if (styleOverrides) {\n const resolvedStyleOverrides = {};\n Object.entries(styleOverrides).forEach(([slotKey, slotStyle]) => {\n resolvedStyleOverrides[slotKey] = typeof slotStyle === 'function' ? slotStyle(_extends({}, props, {\n theme\n })) : slotStyle;\n });\n return overridesResolver(props, resolvedStyleOverrides);\n }\n return null;\n });\n }\n if (componentName && !skipVariantsResolver) {\n expressionsWithDefaultTheme.push(props => {\n const theme = resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }));\n return variantsResolver(props, getVariantStyles(componentName, theme), theme, componentName);\n });\n }\n if (!skipSx) {\n expressionsWithDefaultTheme.push(systemSx);\n }\n const numOfCustomFnsApplied = expressionsWithDefaultTheme.length - expressions.length;\n if (Array.isArray(styleArg) && numOfCustomFnsApplied > 0) {\n const placeholders = new Array(numOfCustomFnsApplied).fill('');\n // If the type is array, than we need to add placeholders in the template for the overrides, variants and the sx styles.\n transformedStyleArg = [...styleArg, ...placeholders];\n transformedStyleArg.raw = [...styleArg.raw, ...placeholders];\n } else if (typeof styleArg === 'function' &&\n // On the server Emotion doesn't use React.forwardRef for creating components, so the created\n // component stays as a function. This condition makes sure that we do not interpolate functions\n // which are basically components used as a selectors.\n styleArg.__emotion_real !== styleArg) {\n // If the type is function, we need to define the default theme.\n transformedStyleArg = props => styleArg(_extends({}, props, {\n theme: resolveTheme(_extends({}, props, {\n defaultTheme,\n themeId\n }))\n }));\n }\n const Component = defaultStyledResolver(transformedStyleArg, ...expressionsWithDefaultTheme);\n if (process.env.NODE_ENV !== 'production') {\n let displayName;\n if (componentName) {\n displayName = `${componentName}${componentSlot || ''}`;\n }\n if (displayName === undefined) {\n displayName = `Styled(${getDisplayName(tag)})`;\n }\n Component.displayName = displayName;\n }\n if (tag.muiName) {\n Component.muiName = tag.muiName;\n }\n return Component;\n };\n if (defaultStyledResolver.withConfig) {\n muiStyledResolver.withConfig = defaultStyledResolver.withConfig;\n }\n return muiStyledResolver;\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function createMixins(breakpoints, mixins) {\n return _extends({\n toolbar: {\n minHeight: 56,\n [breakpoints.up('xs')]: {\n '@media (orientation: landscape)': {\n minHeight: 48\n }\n },\n [breakpoints.up('sm')]: {\n minHeight: 64\n }\n }\n }, mixins);\n}","const common = {\n black: '#000',\n white: '#fff'\n};\nexport default common;","const grey = {\n 50: '#fafafa',\n 100: '#f5f5f5',\n 200: '#eeeeee',\n 300: '#e0e0e0',\n 400: '#bdbdbd',\n 500: '#9e9e9e',\n 600: '#757575',\n 700: '#616161',\n 800: '#424242',\n 900: '#212121',\n A100: '#f5f5f5',\n A200: '#eeeeee',\n A400: '#bdbdbd',\n A700: '#616161'\n};\nexport default grey;","const purple = {\n 50: '#f3e5f5',\n 100: '#e1bee7',\n 200: '#ce93d8',\n 300: '#ba68c8',\n 400: '#ab47bc',\n 500: '#9c27b0',\n 600: '#8e24aa',\n 700: '#7b1fa2',\n 800: '#6a1b9a',\n 900: '#4a148c',\n A100: '#ea80fc',\n A200: '#e040fb',\n A400: '#d500f9',\n A700: '#aa00ff'\n};\nexport default purple;","const red = {\n 50: '#ffebee',\n 100: '#ffcdd2',\n 200: '#ef9a9a',\n 300: '#e57373',\n 400: '#ef5350',\n 500: '#f44336',\n 600: '#e53935',\n 700: '#d32f2f',\n 800: '#c62828',\n 900: '#b71c1c',\n A100: '#ff8a80',\n A200: '#ff5252',\n A400: '#ff1744',\n A700: '#d50000'\n};\nexport default red;","const orange = {\n 50: '#fff3e0',\n 100: '#ffe0b2',\n 200: '#ffcc80',\n 300: '#ffb74d',\n 400: '#ffa726',\n 500: '#ff9800',\n 600: '#fb8c00',\n 700: '#f57c00',\n 800: '#ef6c00',\n 900: '#e65100',\n A100: '#ffd180',\n A200: '#ffab40',\n A400: '#ff9100',\n A700: '#ff6d00'\n};\nexport default orange;","const blue = {\n 50: '#e3f2fd',\n 100: '#bbdefb',\n 200: '#90caf9',\n 300: '#64b5f6',\n 400: '#42a5f5',\n 500: '#2196f3',\n 600: '#1e88e5',\n 700: '#1976d2',\n 800: '#1565c0',\n 900: '#0d47a1',\n A100: '#82b1ff',\n A200: '#448aff',\n A400: '#2979ff',\n A700: '#2962ff'\n};\nexport default blue;","const lightBlue = {\n 50: '#e1f5fe',\n 100: '#b3e5fc',\n 200: '#81d4fa',\n 300: '#4fc3f7',\n 400: '#29b6f6',\n 500: '#03a9f4',\n 600: '#039be5',\n 700: '#0288d1',\n 800: '#0277bd',\n 900: '#01579b',\n A100: '#80d8ff',\n A200: '#40c4ff',\n A400: '#00b0ff',\n A700: '#0091ea'\n};\nexport default lightBlue;","const green = {\n 50: '#e8f5e9',\n 100: '#c8e6c9',\n 200: '#a5d6a7',\n 300: '#81c784',\n 400: '#66bb6a',\n 500: '#4caf50',\n 600: '#43a047',\n 700: '#388e3c',\n 800: '#2e7d32',\n 900: '#1b5e20',\n A100: '#b9f6ca',\n A200: '#69f0ae',\n A400: '#00e676',\n A700: '#00c853'\n};\nexport default green;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\nconst _excluded = [\"mode\", \"contrastThreshold\", \"tonalOffset\"];\nimport { deepmerge } from '@mui/utils';\nimport { darken, getContrastRatio, lighten } from '@mui/system';\nimport common from '../colors/common';\nimport grey from '../colors/grey';\nimport purple from '../colors/purple';\nimport red from '../colors/red';\nimport orange from '../colors/orange';\nimport blue from '../colors/blue';\nimport lightBlue from '../colors/lightBlue';\nimport green from '../colors/green';\nexport const light = {\n // The colors used to style the text.\n text: {\n // The most important text.\n primary: 'rgba(0, 0, 0, 0.87)',\n // Secondary text.\n secondary: 'rgba(0, 0, 0, 0.6)',\n // Disabled text have even lower visual prominence.\n disabled: 'rgba(0, 0, 0, 0.38)'\n },\n // The color used to divide different elements.\n divider: 'rgba(0, 0, 0, 0.12)',\n // The background colors used to style the surfaces.\n // Consistency between these values is important.\n background: {\n paper: common.white,\n default: common.white\n },\n // The colors used to style the action elements.\n action: {\n // The color of an active action like an icon button.\n active: 'rgba(0, 0, 0, 0.54)',\n // The color of an hovered action.\n hover: 'rgba(0, 0, 0, 0.04)',\n hoverOpacity: 0.04,\n // The color of a selected action.\n selected: 'rgba(0, 0, 0, 0.08)',\n selectedOpacity: 0.08,\n // The color of a disabled action.\n disabled: 'rgba(0, 0, 0, 0.26)',\n // The background color of a disabled action.\n disabledBackground: 'rgba(0, 0, 0, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(0, 0, 0, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.12\n }\n};\nexport const dark = {\n text: {\n primary: common.white,\n secondary: 'rgba(255, 255, 255, 0.7)',\n disabled: 'rgba(255, 255, 255, 0.5)',\n icon: 'rgba(255, 255, 255, 0.5)'\n },\n divider: 'rgba(255, 255, 255, 0.12)',\n background: {\n paper: '#121212',\n default: '#121212'\n },\n action: {\n active: common.white,\n hover: 'rgba(255, 255, 255, 0.08)',\n hoverOpacity: 0.08,\n selected: 'rgba(255, 255, 255, 0.16)',\n selectedOpacity: 0.16,\n disabled: 'rgba(255, 255, 255, 0.3)',\n disabledBackground: 'rgba(255, 255, 255, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(255, 255, 255, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.24\n }\n};\nfunction addLightOrDark(intent, direction, shade, tonalOffset) {\n const tonalOffsetLight = tonalOffset.light || tonalOffset;\n const tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5;\n if (!intent[direction]) {\n if (intent.hasOwnProperty(shade)) {\n intent[direction] = intent[shade];\n } else if (direction === 'light') {\n intent.light = lighten(intent.main, tonalOffsetLight);\n } else if (direction === 'dark') {\n intent.dark = darken(intent.main, tonalOffsetDark);\n }\n }\n}\nfunction getDefaultPrimary(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: blue[200],\n light: blue[50],\n dark: blue[400]\n };\n }\n return {\n main: blue[700],\n light: blue[400],\n dark: blue[800]\n };\n}\nfunction getDefaultSecondary(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: purple[200],\n light: purple[50],\n dark: purple[400]\n };\n }\n return {\n main: purple[500],\n light: purple[300],\n dark: purple[700]\n };\n}\nfunction getDefaultError(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: red[500],\n light: red[300],\n dark: red[700]\n };\n }\n return {\n main: red[700],\n light: red[400],\n dark: red[800]\n };\n}\nfunction getDefaultInfo(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: lightBlue[400],\n light: lightBlue[300],\n dark: lightBlue[700]\n };\n }\n return {\n main: lightBlue[700],\n light: lightBlue[500],\n dark: lightBlue[900]\n };\n}\nfunction getDefaultSuccess(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: green[400],\n light: green[300],\n dark: green[700]\n };\n }\n return {\n main: green[800],\n light: green[500],\n dark: green[900]\n };\n}\nfunction getDefaultWarning(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: orange[400],\n light: orange[300],\n dark: orange[700]\n };\n }\n return {\n main: '#ed6c02',\n // closest to orange[800] that pass 3:1.\n light: orange[500],\n dark: orange[900]\n };\n}\nexport default function createPalette(palette) {\n const {\n mode = 'light',\n contrastThreshold = 3,\n tonalOffset = 0.2\n } = palette,\n other = _objectWithoutPropertiesLoose(palette, _excluded);\n const primary = palette.primary || getDefaultPrimary(mode);\n const secondary = palette.secondary || getDefaultSecondary(mode);\n const error = palette.error || getDefaultError(mode);\n const info = palette.info || getDefaultInfo(mode);\n const success = palette.success || getDefaultSuccess(mode);\n const warning = palette.warning || getDefaultWarning(mode);\n\n // Use the same logic as\n // Bootstrap: https://github.com/twbs/bootstrap/blob/1d6e3710dd447de1a200f29e8fa521f8a0908f70/scss/_functions.scss#L59\n // and material-components-web https://github.com/material-components/material-components-web/blob/ac46b8863c4dab9fc22c4c662dc6bd1b65dd652f/packages/mdc-theme/_functions.scss#L54\n function getContrastText(background) {\n const contrastText = getContrastRatio(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary;\n if (process.env.NODE_ENV !== 'production') {\n const contrast = getContrastRatio(background, contrastText);\n if (contrast < 3) {\n console.error([`MUI: The contrast ratio of ${contrast}:1 for ${contrastText} on ${background}`, 'falls below the WCAG recommended absolute minimum contrast ratio of 3:1.', 'https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast'].join('\\n'));\n }\n }\n return contrastText;\n }\n const augmentColor = ({\n color,\n name,\n mainShade = 500,\n lightShade = 300,\n darkShade = 700\n }) => {\n color = _extends({}, color);\n if (!color.main && color[mainShade]) {\n color.main = color[mainShade];\n }\n if (!color.hasOwnProperty('main')) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The color${name ? ` (${name})` : ''} provided to augmentColor(color) is invalid.\nThe color object needs to have a \\`main\\` property or a \\`${mainShade}\\` property.` : _formatMuiErrorMessage(11, name ? ` (${name})` : '', mainShade));\n }\n if (typeof color.main !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The color${name ? ` (${name})` : ''} provided to augmentColor(color) is invalid.\n\\`color.main\\` should be a string, but \\`${JSON.stringify(color.main)}\\` was provided instead.\n\nDid you intend to use one of the following approaches?\n\nimport { green } from \"@mui/material/colors\";\n\nconst theme1 = createTheme({ palette: {\n primary: green,\n} });\n\nconst theme2 = createTheme({ palette: {\n primary: { main: green[500] },\n} });` : _formatMuiErrorMessage(12, name ? ` (${name})` : '', JSON.stringify(color.main)));\n }\n addLightOrDark(color, 'light', lightShade, tonalOffset);\n addLightOrDark(color, 'dark', darkShade, tonalOffset);\n if (!color.contrastText) {\n color.contrastText = getContrastText(color.main);\n }\n return color;\n };\n const modes = {\n dark,\n light\n };\n if (process.env.NODE_ENV !== 'production') {\n if (!modes[mode]) {\n console.error(`MUI: The palette mode \\`${mode}\\` is not supported.`);\n }\n }\n const paletteOutput = deepmerge(_extends({\n // A collection of common colors.\n common: _extends({}, common),\n // prevent mutable object.\n // The palette mode, can be light or dark.\n mode,\n // The colors used to represent primary interface elements for a user.\n primary: augmentColor({\n color: primary,\n name: 'primary'\n }),\n // The colors used to represent secondary interface elements for a user.\n secondary: augmentColor({\n color: secondary,\n name: 'secondary',\n mainShade: 'A400',\n lightShade: 'A200',\n darkShade: 'A700'\n }),\n // The colors used to represent interface elements that the user should be made aware of.\n error: augmentColor({\n color: error,\n name: 'error'\n }),\n // The colors used to represent potentially dangerous actions or important messages.\n warning: augmentColor({\n color: warning,\n name: 'warning'\n }),\n // The colors used to present information to the user that is neutral and not necessarily important.\n info: augmentColor({\n color: info,\n name: 'info'\n }),\n // The colors used to indicate the successful completion of an action that user triggered.\n success: augmentColor({\n color: success,\n name: 'success'\n }),\n // The grey colors.\n grey,\n // Used by `getContrastText()` to maximize the contrast between\n // the background and the text.\n contrastThreshold,\n // Takes a background color and returns the text color that maximizes the contrast.\n getContrastText,\n // Generate a rich color object.\n augmentColor,\n // Used by the functions below to shift a color's luminance by approximately\n // two indexes within its tonal palette.\n // E.g., shift from Red 500 to Red 300 or Red 700.\n tonalOffset\n }, modes[mode]), other);\n return paletteOutput;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"fontFamily\", \"fontSize\", \"fontWeightLight\", \"fontWeightRegular\", \"fontWeightMedium\", \"fontWeightBold\", \"htmlFontSize\", \"allVariants\", \"pxToRem\"];\nimport { deepmerge } from '@mui/utils';\nfunction round(value) {\n return Math.round(value * 1e5) / 1e5;\n}\nconst caseAllCaps = {\n textTransform: 'uppercase'\n};\nconst defaultFontFamily = '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif';\n\n/**\n * @see @link{https://m2.material.io/design/typography/the-type-system.html}\n * @see @link{https://m2.material.io/design/typography/understanding-typography.html}\n */\nexport default function createTypography(palette, typography) {\n const _ref = typeof typography === 'function' ? typography(palette) : typography,\n {\n fontFamily = defaultFontFamily,\n // The default font size of the Material Specification.\n fontSize = 14,\n // px\n fontWeightLight = 300,\n fontWeightRegular = 400,\n fontWeightMedium = 500,\n fontWeightBold = 700,\n // Tell MUI what's the font-size on the html element.\n // 16px is the default font-size used by browsers.\n htmlFontSize = 16,\n // Apply the CSS properties to all the variants.\n allVariants,\n pxToRem: pxToRem2\n } = _ref,\n other = _objectWithoutPropertiesLoose(_ref, _excluded);\n if (process.env.NODE_ENV !== 'production') {\n if (typeof fontSize !== 'number') {\n console.error('MUI: `fontSize` is required to be a number.');\n }\n if (typeof htmlFontSize !== 'number') {\n console.error('MUI: `htmlFontSize` is required to be a number.');\n }\n }\n const coef = fontSize / 14;\n const pxToRem = pxToRem2 || (size => `${size / htmlFontSize * coef}rem`);\n const buildVariant = (fontWeight, size, lineHeight, letterSpacing, casing) => _extends({\n fontFamily,\n fontWeight,\n fontSize: pxToRem(size),\n // Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/\n lineHeight\n }, fontFamily === defaultFontFamily ? {\n letterSpacing: `${round(letterSpacing / size)}em`\n } : {}, casing, allVariants);\n const variants = {\n h1: buildVariant(fontWeightLight, 96, 1.167, -1.5),\n h2: buildVariant(fontWeightLight, 60, 1.2, -0.5),\n h3: buildVariant(fontWeightRegular, 48, 1.167, 0),\n h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25),\n h5: buildVariant(fontWeightRegular, 24, 1.334, 0),\n h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15),\n subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15),\n subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1),\n body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15),\n body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15),\n button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps),\n caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),\n overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps),\n inherit: {\n fontFamily: 'inherit',\n fontWeight: 'inherit',\n fontSize: 'inherit',\n lineHeight: 'inherit',\n letterSpacing: 'inherit'\n }\n };\n return deepmerge(_extends({\n htmlFontSize,\n pxToRem,\n fontFamily,\n fontSize,\n fontWeightLight,\n fontWeightRegular,\n fontWeightMedium,\n fontWeightBold\n }, variants), other, {\n clone: false // No need to clone deep\n });\n}","const shadowKeyUmbraOpacity = 0.2;\nconst shadowKeyPenumbraOpacity = 0.14;\nconst shadowAmbientShadowOpacity = 0.12;\nfunction createShadow(...px) {\n return [`${px[0]}px ${px[1]}px ${px[2]}px ${px[3]}px rgba(0,0,0,${shadowKeyUmbraOpacity})`, `${px[4]}px ${px[5]}px ${px[6]}px ${px[7]}px rgba(0,0,0,${shadowKeyPenumbraOpacity})`, `${px[8]}px ${px[9]}px ${px[10]}px ${px[11]}px rgba(0,0,0,${shadowAmbientShadowOpacity})`].join(',');\n}\n\n// Values from https://github.com/material-components/material-components-web/blob/be8747f94574669cb5e7add1a7c54fa41a89cec7/packages/mdc-elevation/_variables.scss\nconst shadows = ['none', createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)];\nexport default shadows;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"duration\", \"easing\", \"delay\"];\n// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves\n// to learn the context in which each easing should be used.\nexport const easing = {\n // This is the most common easing curve.\n easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',\n // Objects enter the screen at full velocity from off-screen and\n // slowly decelerate to a resting point.\n easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',\n // Objects leave the screen at full velocity. They do not decelerate when off-screen.\n easeIn: 'cubic-bezier(0.4, 0, 1, 1)',\n // The sharp curve is used by objects that may return to the screen at any time.\n sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'\n};\n\n// Follow https://m2.material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations\n// to learn when use what timing\nexport const duration = {\n shortest: 150,\n shorter: 200,\n short: 250,\n // most basic recommended timing\n standard: 300,\n // this is to be used in complex animations\n complex: 375,\n // recommended when something is entering screen\n enteringScreen: 225,\n // recommended when something is leaving screen\n leavingScreen: 195\n};\nfunction formatMs(milliseconds) {\n return `${Math.round(milliseconds)}ms`;\n}\nfunction getAutoHeightDuration(height) {\n if (!height) {\n return 0;\n }\n const constant = height / 36;\n\n // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10\n return Math.round((4 + 15 * constant ** 0.25 + constant / 5) * 10);\n}\nexport default function createTransitions(inputTransitions) {\n const mergedEasing = _extends({}, easing, inputTransitions.easing);\n const mergedDuration = _extends({}, duration, inputTransitions.duration);\n const create = (props = ['all'], options = {}) => {\n const {\n duration: durationOption = mergedDuration.standard,\n easing: easingOption = mergedEasing.easeInOut,\n delay = 0\n } = options,\n other = _objectWithoutPropertiesLoose(options, _excluded);\n if (process.env.NODE_ENV !== 'production') {\n const isString = value => typeof value === 'string';\n // IE11 support, replace with Number.isNaN\n // eslint-disable-next-line no-restricted-globals\n const isNumber = value => !isNaN(parseFloat(value));\n if (!isString(props) && !Array.isArray(props)) {\n console.error('MUI: Argument \"props\" must be a string or Array.');\n }\n if (!isNumber(durationOption) && !isString(durationOption)) {\n console.error(`MUI: Argument \"duration\" must be a number or a string but found ${durationOption}.`);\n }\n if (!isString(easingOption)) {\n console.error('MUI: Argument \"easing\" must be a string.');\n }\n if (!isNumber(delay) && !isString(delay)) {\n console.error('MUI: Argument \"delay\" must be a number or a string.');\n }\n if (Object.keys(other).length !== 0) {\n console.error(`MUI: Unrecognized argument(s) [${Object.keys(other).join(',')}].`);\n }\n }\n return (Array.isArray(props) ? props : [props]).map(animatedProp => `${animatedProp} ${typeof durationOption === 'string' ? durationOption : formatMs(durationOption)} ${easingOption} ${typeof delay === 'string' ? delay : formatMs(delay)}`).join(',');\n };\n return _extends({\n getAutoHeightDuration,\n create\n }, inputTransitions, {\n easing: mergedEasing,\n duration: mergedDuration\n });\n}","// We need to centralize the zIndex definitions as they work\n// like global values in the browser.\nconst zIndex = {\n mobileStepper: 1000,\n fab: 1050,\n speedDial: 1050,\n appBar: 1100,\n drawer: 1200,\n modal: 1300,\n snackbar: 1400,\n tooltip: 1500\n};\nexport default zIndex;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\nconst _excluded = [\"breakpoints\", \"mixins\", \"spacing\", \"palette\", \"transitions\", \"typography\", \"shape\"];\nimport { deepmerge } from '@mui/utils';\nimport { createTheme as systemCreateTheme, unstable_defaultSxConfig as defaultSxConfig, unstable_styleFunctionSx as styleFunctionSx } from '@mui/system';\nimport generateUtilityClass from '../generateUtilityClass';\nimport createMixins from './createMixins';\nimport createPalette from './createPalette';\nimport createTypography from './createTypography';\nimport shadows from './shadows';\nimport createTransitions from './createTransitions';\nimport zIndex from './zIndex';\nfunction createTheme(options = {}, ...args) {\n const {\n mixins: mixinsInput = {},\n palette: paletteInput = {},\n transitions: transitionsInput = {},\n typography: typographyInput = {}\n } = options,\n other = _objectWithoutPropertiesLoose(options, _excluded);\n if (options.vars) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: \\`vars\\` is a private field used for CSS variables support.\nPlease use another name.` : _formatMuiErrorMessage(18));\n }\n const palette = createPalette(paletteInput);\n const systemTheme = systemCreateTheme(options);\n let muiTheme = deepmerge(systemTheme, {\n mixins: createMixins(systemTheme.breakpoints, mixinsInput),\n palette,\n // Don't use [...shadows] until you've verified its transpiled code is not invoking the iterator protocol.\n shadows: shadows.slice(),\n typography: createTypography(palette, typographyInput),\n transitions: createTransitions(transitionsInput),\n zIndex: _extends({}, zIndex)\n });\n muiTheme = deepmerge(muiTheme, other);\n muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);\n if (process.env.NODE_ENV !== 'production') {\n // TODO v6: Refactor to use globalStateClassesMapping from @mui/utils once `readOnly` state class is used in Rating component.\n const stateClasses = ['active', 'checked', 'completed', 'disabled', 'error', 'expanded', 'focused', 'focusVisible', 'required', 'selected'];\n const traverse = (node, component) => {\n let key;\n\n // eslint-disable-next-line guard-for-in, no-restricted-syntax\n for (key in node) {\n const child = node[key];\n if (stateClasses.indexOf(key) !== -1 && Object.keys(child).length > 0) {\n if (process.env.NODE_ENV !== 'production') {\n const stateClass = generateUtilityClass('', key);\n console.error([`MUI: The \\`${component}\\` component increases ` + `the CSS specificity of the \\`${key}\\` internal state.`, 'You can not override it like this: ', JSON.stringify(node, null, 2), '', `Instead, you need to use the '&.${stateClass}' syntax:`, JSON.stringify({\n root: {\n [`&.${stateClass}`]: child\n }\n }, null, 2), '', 'https://mui.com/r/state-classes-guide'].join('\\n'));\n }\n // Remove the style to prevent global conflicts.\n node[key] = {};\n }\n }\n };\n Object.keys(muiTheme.components).forEach(component => {\n const styleOverrides = muiTheme.components[component].styleOverrides;\n if (styleOverrides && component.indexOf('Mui') === 0) {\n traverse(styleOverrides, component);\n }\n });\n }\n muiTheme.unstable_sxConfig = _extends({}, defaultSxConfig, other == null ? void 0 : other.unstable_sxConfig);\n muiTheme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n return muiTheme;\n}\nlet warnedOnce = false;\nexport function createMuiTheme(...args) {\n if (process.env.NODE_ENV !== 'production') {\n if (!warnedOnce) {\n warnedOnce = true;\n console.error(['MUI: the createMuiTheme function was renamed to createTheme.', '', \"You should use `import { createTheme } from '@mui/material/styles'`\"].join('\\n'));\n }\n }\n return createTheme(...args);\n}\nexport default createTheme;","import createTheme from './createTheme';\nconst defaultTheme = createTheme();\nexport default defaultTheme;","export default '$$material';","import { createStyled, shouldForwardProp } from '@mui/system';\nimport defaultTheme from './defaultTheme';\nimport THEME_ID from './identifier';\nexport const rootShouldForwardProp = prop => shouldForwardProp(prop) && prop !== 'classes';\nexport const slotShouldForwardProp = shouldForwardProp;\nconst styled = createStyled({\n themeId: THEME_ID,\n defaultTheme,\n rootShouldForwardProp\n});\nexport default styled;","/**\n * @mui/styled-engine v5.13.2\n *\n * @license MIT\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/* eslint-disable no-underscore-dangle */\nimport emStyled from '@emotion/styled';\nexport default function styled(tag, options) {\n const stylesFactory = emStyled(tag, options);\n if (process.env.NODE_ENV !== 'production') {\n return (...styles) => {\n const component = typeof tag === 'string' ? `\"${tag}\"` : 'component';\n if (styles.length === 0) {\n console.error([`MUI: Seems like you called \\`styled(${component})()\\` without a \\`style\\` argument.`, 'You must provide a `styles` argument: `styled(\"div\")(styleYouForgotToPass)`.'].join('\\n'));\n } else if (styles.some(style => style === undefined)) {\n console.error(`MUI: the styled(${component})(...args) API requires all its args to be defined.`);\n }\n return stylesFactory(...styles);\n };\n }\n return stylesFactory;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const internal_processStyles = (tag, processor) => {\n // Emotion attaches all the styles as `__emotion_styles`.\n // Ref: https://github.com/emotion-js/emotion/blob/16d971d0da229596d6bcc39d282ba9753c9ee7cf/packages/styled/src/base.js#L186\n if (Array.isArray(tag.__emotion_styles)) {\n tag.__emotion_styles = processor(tag.__emotion_styles);\n }\n};\nexport { ThemeContext, keyframes, css } from '@emotion/react';\nexport { default as StyledEngineProvider } from './StyledEngineProvider';\nexport { default as GlobalStyles } from './GlobalStyles';","import { internal_resolveProps as resolveProps } from '@mui/utils';\nexport default function getThemeProps(params) {\n const {\n theme,\n name,\n props\n } = params;\n if (!theme || !theme.components || !theme.components[name] || !theme.components[name].defaultProps) {\n return props;\n }\n return resolveProps(theme.components[name].defaultProps, props);\n}","import * as React from 'react';\nimport { ThemeContext } from '@mui/styled-engine';\nfunction isObjectEmpty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction useTheme(defaultTheme = null) {\n const contextTheme = React.useContext(ThemeContext);\n return !contextTheme || isObjectEmpty(contextTheme) ? defaultTheme : contextTheme;\n}\nexport default useTheme;","import createTheme from './createTheme';\nimport useThemeWithoutDefault from './useThemeWithoutDefault';\nexport const systemDefaultTheme = createTheme();\nfunction useTheme(defaultTheme = systemDefaultTheme) {\n return useThemeWithoutDefault(defaultTheme);\n}\nexport default useTheme;","import { useThemeProps as systemUseThemeProps } from '@mui/system';\nimport defaultTheme from './defaultTheme';\nimport THEME_ID from './identifier';\nexport default function useThemeProps({\n props,\n name\n}) {\n return systemUseThemeProps({\n props,\n name,\n defaultTheme,\n themeId: THEME_ID\n });\n}","import getThemeProps from './getThemeProps';\nimport useTheme from '../useTheme';\nexport default function useThemeProps({\n props,\n name,\n defaultTheme,\n themeId\n}) {\n let theme = useTheme(defaultTheme);\n if (themeId) {\n theme = theme[themeId] || theme;\n }\n const mergedProps = getThemeProps({\n theme,\n name,\n props\n });\n return mergedProps;\n}","/**\n * TODO v5: consider making it private\n *\n * passes {value} to {ref}\n *\n * WARNING: Be sure to only call this inside a callback that is passed as a ref.\n * Otherwise, make sure to cleanup the previous {ref} if it changes. See\n * https://github.com/mui/material-ui/issues/13539\n *\n * Useful if you want to expose the ref of an inner component to the public API\n * while still using it inside the component.\n * @param ref A ref callback or ref object. If anything falsy, this is a no-op.\n */\nexport default function setRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref) {\n ref.current = value;\n }\n}","import * as React from 'react';\nimport setRef from './setRef';\nexport default function useForkRef(...refs) {\n /**\n * This will create a new function if the refs passed to this hook change and are all defined.\n * This means react will call the old forkRef with `null` and the new forkRef\n * with the ref. Cleanup naturally emerges from this behavior.\n */\n return React.useMemo(() => {\n if (refs.every(ref => ref == null)) {\n return null;\n }\n return instance => {\n refs.forEach(ref => {\n setRef(ref, instance);\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}","import { unstable_useForkRef as useForkRef } from '@mui/utils';\nexport default useForkRef;","import * as React from 'react';\nconst useEnhancedEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nexport default useEnhancedEffect;","import * as React from 'react';\nimport useEnhancedEffect from './useEnhancedEffect';\n\n/**\n * https://github.com/facebook/react/issues/14099#issuecomment-440013892\n */\nexport default function useEventCallback(fn) {\n const ref = React.useRef(fn);\n useEnhancedEffect(() => {\n ref.current = fn;\n });\n return React.useCallback((...args) =>\n // @ts-expect-error hide `this`\n // tslint:disable-next-line:ban-comma-operator\n (0, ref.current)(...args), []);\n}","import { unstable_useEventCallback as useEventCallback } from '@mui/utils';\nexport default useEventCallback;","// based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js\nimport * as React from 'react';\nlet hadKeyboardEvent = true;\nlet hadFocusVisibleRecently = false;\nlet hadFocusVisibleRecentlyTimeout;\nconst inputTypesWhitelist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n};\n\n/**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} node\n * @returns {boolean}\n */\nfunction focusTriggersKeyboardModality(node) {\n const {\n type,\n tagName\n } = node;\n if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {\n return true;\n }\n if (tagName === 'TEXTAREA' && !node.readOnly) {\n return true;\n }\n if (node.isContentEditable) {\n return true;\n }\n return false;\n}\n\n/**\n * Keep track of our keyboard modality state with `hadKeyboardEvent`.\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * @param {KeyboardEvent} event\n */\nfunction handleKeyDown(event) {\n if (event.metaKey || event.altKey || event.ctrlKey) {\n return;\n }\n hadKeyboardEvent = true;\n}\n\n/**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n */\nfunction handlePointerDown() {\n hadKeyboardEvent = false;\n}\nfunction handleVisibilityChange() {\n if (this.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n }\n}\nfunction prepare(doc) {\n doc.addEventListener('keydown', handleKeyDown, true);\n doc.addEventListener('mousedown', handlePointerDown, true);\n doc.addEventListener('pointerdown', handlePointerDown, true);\n doc.addEventListener('touchstart', handlePointerDown, true);\n doc.addEventListener('visibilitychange', handleVisibilityChange, true);\n}\nexport function teardown(doc) {\n doc.removeEventListener('keydown', handleKeyDown, true);\n doc.removeEventListener('mousedown', handlePointerDown, true);\n doc.removeEventListener('pointerdown', handlePointerDown, true);\n doc.removeEventListener('touchstart', handlePointerDown, true);\n doc.removeEventListener('visibilitychange', handleVisibilityChange, true);\n}\nfunction isFocusVisible(event) {\n const {\n target\n } = event;\n try {\n return target.matches(':focus-visible');\n } catch (error) {\n // Browsers not implementing :focus-visible will throw a SyntaxError.\n // We use our own heuristic for those browsers.\n // Rethrow might be better if it's not the expected error but do we really\n // want to crash if focus-visible malfunctioned?\n }\n\n // No need for validFocusTarget check. The user does that by attaching it to\n // focusable events only.\n return hadKeyboardEvent || focusTriggersKeyboardModality(target);\n}\nexport default function useIsFocusVisible() {\n const ref = React.useCallback(node => {\n if (node != null) {\n prepare(node.ownerDocument);\n }\n }, []);\n const isFocusVisibleRef = React.useRef(false);\n\n /**\n * Should be called if a blur event is fired\n */\n function handleBlurVisible() {\n // checking against potential state variable does not suffice if we focus and blur synchronously.\n // React wouldn't have time to trigger a re-render so `focusVisible` would be stale.\n // Ideally we would adjust `isFocusVisible(event)` to look at `relatedTarget` for blur events.\n // This doesn't work in IE11 due to https://github.com/facebook/react/issues/3751\n // TODO: check again if React releases their internal changes to focus event handling (https://github.com/facebook/react/pull/19186).\n if (isFocusVisibleRef.current) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(() => {\n hadFocusVisibleRecently = false;\n }, 100);\n isFocusVisibleRef.current = false;\n return true;\n }\n return false;\n }\n\n /**\n * Should be called if a blur event is fired\n */\n function handleFocusVisible(event) {\n if (isFocusVisible(event)) {\n isFocusVisibleRef.current = true;\n return true;\n }\n return false;\n }\n return {\n isFocusVisibleRef,\n onFocus: handleFocusVisible,\n onBlur: handleBlurVisible,\n ref\n };\n}","import { unstable_useIsFocusVisible as useIsFocusVisible } from '@mui/utils';\nexport default useIsFocusVisible;","export default function _taggedTemplateLiteral(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n return Object.freeze(Object.defineProperties(strings, {\n raw: {\n value: Object.freeze(raw)\n }\n }));\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 _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","import React from 'react';\nexport default React.createContext(null);","import { Children, cloneElement, isValidElement } from 'react';\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\n\nexport function getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && isValidElement(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\nexport function mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nexport function getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\nexport function getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!isValidElement(child)) return;\n var hasPrev = (key in prevChildMapping);\n var hasNext = (key in nextChildMapping);\n var prevChild = prevChildMapping[key];\n var isLeaving = isValidElement(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = cloneElement(child, {\n in: false\n });\n } else if (hasNext && hasPrev && isValidElement(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { getChildMapping, getInitialChildMapping, getNextChildMapping } from './utils/ChildMapping';\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n/**\n * The `` component manages a set of transition components\n * (`` and ``) in a list. Like with the transition\n * components, `` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the ``.\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\nvar TransitionGroup = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_this)); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n contextValue: {\n isMounting: true\n },\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.mounted = true;\n this.setState({\n contextValue: {\n isMounting: false\n }\n });\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? getInitialChildMapping(nextProps, handleExited) : getNextChildMapping(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n } // node is `undefined` when user provided `nodeRef` prop\n ;\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = getChildMapping(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var contextValue = this.state.contextValue;\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Component, props, children));\n };\n\n return TransitionGroup;\n}(React.Component);\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `
` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: PropTypes.any,\n\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: PropTypes.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: PropTypes.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\nexport default TransitionGroup;","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 { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction Ripple(props) {\n const {\n className,\n classes,\n pulsate = false,\n rippleX,\n rippleY,\n rippleSize,\n in: inProp,\n onExited,\n timeout\n } = props;\n const [leaving, setLeaving] = React.useState(false);\n const rippleClassName = clsx(className, classes.ripple, classes.rippleVisible, pulsate && classes.ripplePulsate);\n const rippleStyles = {\n width: rippleSize,\n height: rippleSize,\n top: -(rippleSize / 2) + rippleY,\n left: -(rippleSize / 2) + rippleX\n };\n const childClassName = clsx(classes.child, leaving && classes.childLeaving, pulsate && classes.childPulsate);\n if (!inProp && !leaving) {\n setLeaving(true);\n }\n React.useEffect(() => {\n if (!inProp && onExited != null) {\n // react-transition-group#onExited\n const timeoutId = setTimeout(onExited, timeout);\n return () => {\n clearTimeout(timeoutId);\n };\n }\n return undefined;\n }, [onExited, inProp, timeout]);\n return /*#__PURE__*/_jsx(\"span\", {\n className: rippleClassName,\n style: rippleStyles,\n children: /*#__PURE__*/_jsx(\"span\", {\n className: childClassName\n })\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? Ripple.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n /**\n * @ignore - injected from TransitionGroup\n */\n in: PropTypes.bool,\n /**\n * @ignore - injected from TransitionGroup\n */\n onExited: PropTypes.func,\n /**\n * If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.\n */\n pulsate: PropTypes.bool,\n /**\n * Diameter of the ripple.\n */\n rippleSize: PropTypes.number,\n /**\n * Horizontal position of the ripple center.\n */\n rippleX: PropTypes.number,\n /**\n * Vertical position of the ripple center.\n */\n rippleY: PropTypes.number,\n /**\n * exit delay\n */\n timeout: PropTypes.number.isRequired\n} : void 0;\nexport default Ripple;","const defaultGenerator = componentName => componentName;\nconst createClassNameGenerator = () => {\n let generate = defaultGenerator;\n return {\n configure(generator) {\n generate = generator;\n },\n generate(componentName) {\n return generate(componentName);\n },\n reset() {\n generate = defaultGenerator;\n }\n };\n};\nconst ClassNameGenerator = createClassNameGenerator();\nexport default ClassNameGenerator;","import ClassNameGenerator from '../ClassNameGenerator';\nconst globalStateClassesMapping = {\n active: 'active',\n checked: 'checked',\n completed: 'completed',\n disabled: 'disabled',\n readOnly: 'readOnly',\n error: 'error',\n expanded: 'expanded',\n focused: 'focused',\n focusVisible: 'focusVisible',\n required: 'required',\n selected: 'selected'\n};\nexport default function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {\n const globalStateClass = globalStateClassesMapping[slot];\n return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator.generate(componentName)}-${slot}`;\n}","import generateUtilityClass from '../generateUtilityClass';\nexport default function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {\n const result = {};\n slots.forEach(slot => {\n result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);\n });\n return result;\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTouchRippleUtilityClass(slot) {\n return generateUtilityClass('MuiTouchRipple', slot);\n}\nconst touchRippleClasses = generateUtilityClasses('MuiTouchRipple', ['root', 'ripple', 'rippleVisible', 'ripplePulsate', 'child', 'childLeaving', 'childPulsate']);\nexport default touchRippleClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"center\", \"classes\", \"className\"];\nlet _ = t => t,\n _t,\n _t2,\n _t3,\n _t4;\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { TransitionGroup } from 'react-transition-group';\nimport clsx from 'clsx';\nimport { keyframes } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport Ripple from './Ripple';\nimport touchRippleClasses from './touchRippleClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DURATION = 550;\nexport const DELAY_RIPPLE = 80;\nconst enterKeyframe = keyframes(_t || (_t = _`\n 0% {\n transform: scale(0);\n opacity: 0.1;\n }\n\n 100% {\n transform: scale(1);\n opacity: 0.3;\n }\n`));\nconst exitKeyframe = keyframes(_t2 || (_t2 = _`\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n`));\nconst pulsateKeyframe = keyframes(_t3 || (_t3 = _`\n 0% {\n transform: scale(1);\n }\n\n 50% {\n transform: scale(0.92);\n }\n\n 100% {\n transform: scale(1);\n }\n`));\nexport const TouchRippleRoot = styled('span', {\n name: 'MuiTouchRipple',\n slot: 'Root'\n})({\n overflow: 'hidden',\n pointerEvents: 'none',\n position: 'absolute',\n zIndex: 0,\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n borderRadius: 'inherit'\n});\n\n// This `styled()` function invokes keyframes. `styled-components` only supports keyframes\n// in string templates. Do not convert these styles in JS object as it will break.\nexport const TouchRippleRipple = styled(Ripple, {\n name: 'MuiTouchRipple',\n slot: 'Ripple'\n})(_t4 || (_t4 = _`\n opacity: 0;\n position: absolute;\n\n &.${0} {\n opacity: 0.3;\n transform: scale(1);\n animation-name: ${0};\n animation-duration: ${0}ms;\n animation-timing-function: ${0};\n }\n\n &.${0} {\n animation-duration: ${0}ms;\n }\n\n & .${0} {\n opacity: 1;\n display: block;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: currentColor;\n }\n\n & .${0} {\n opacity: 0;\n animation-name: ${0};\n animation-duration: ${0}ms;\n animation-timing-function: ${0};\n }\n\n & .${0} {\n position: absolute;\n /* @noflip */\n left: 0px;\n top: 0;\n animation-name: ${0};\n animation-duration: 2500ms;\n animation-timing-function: ${0};\n animation-iteration-count: infinite;\n animation-delay: 200ms;\n }\n`), touchRippleClasses.rippleVisible, enterKeyframe, DURATION, ({\n theme\n}) => theme.transitions.easing.easeInOut, touchRippleClasses.ripplePulsate, ({\n theme\n}) => theme.transitions.duration.shorter, touchRippleClasses.child, touchRippleClasses.childLeaving, exitKeyframe, DURATION, ({\n theme\n}) => theme.transitions.easing.easeInOut, touchRippleClasses.childPulsate, pulsateKeyframe, ({\n theme\n}) => theme.transitions.easing.easeInOut);\n\n/**\n * @ignore - internal component.\n *\n * TODO v5: Make private\n */\nconst TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTouchRipple'\n });\n const {\n center: centerProp = false,\n classes = {},\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [ripples, setRipples] = React.useState([]);\n const nextKey = React.useRef(0);\n const rippleCallback = React.useRef(null);\n React.useEffect(() => {\n if (rippleCallback.current) {\n rippleCallback.current();\n rippleCallback.current = null;\n }\n }, [ripples]);\n\n // Used to filter out mouse emulated events on mobile.\n const ignoringMouseDown = React.useRef(false);\n // We use a timer in order to only show the ripples for touch \"click\" like events.\n // We don't want to display the ripple for touch scroll events.\n const startTimer = React.useRef(null);\n\n // This is the hook called once the previous timeout is ready.\n const startTimerCommit = React.useRef(null);\n const container = React.useRef(null);\n React.useEffect(() => {\n return () => {\n clearTimeout(startTimer.current);\n };\n }, []);\n const startCommit = React.useCallback(params => {\n const {\n pulsate,\n rippleX,\n rippleY,\n rippleSize,\n cb\n } = params;\n setRipples(oldRipples => [...oldRipples, /*#__PURE__*/_jsx(TouchRippleRipple, {\n classes: {\n ripple: clsx(classes.ripple, touchRippleClasses.ripple),\n rippleVisible: clsx(classes.rippleVisible, touchRippleClasses.rippleVisible),\n ripplePulsate: clsx(classes.ripplePulsate, touchRippleClasses.ripplePulsate),\n child: clsx(classes.child, touchRippleClasses.child),\n childLeaving: clsx(classes.childLeaving, touchRippleClasses.childLeaving),\n childPulsate: clsx(classes.childPulsate, touchRippleClasses.childPulsate)\n },\n timeout: DURATION,\n pulsate: pulsate,\n rippleX: rippleX,\n rippleY: rippleY,\n rippleSize: rippleSize\n }, nextKey.current)]);\n nextKey.current += 1;\n rippleCallback.current = cb;\n }, [classes]);\n const start = React.useCallback((event = {}, options = {}, cb = () => {}) => {\n const {\n pulsate = false,\n center = centerProp || options.pulsate,\n fakeElement = false // For test purposes\n } = options;\n if ((event == null ? void 0 : event.type) === 'mousedown' && ignoringMouseDown.current) {\n ignoringMouseDown.current = false;\n return;\n }\n if ((event == null ? void 0 : event.type) === 'touchstart') {\n ignoringMouseDown.current = true;\n }\n const element = fakeElement ? null : container.current;\n const rect = element ? element.getBoundingClientRect() : {\n width: 0,\n height: 0,\n left: 0,\n top: 0\n };\n\n // Get the size of the ripple\n let rippleX;\n let rippleY;\n let rippleSize;\n if (center || event === undefined || event.clientX === 0 && event.clientY === 0 || !event.clientX && !event.touches) {\n rippleX = Math.round(rect.width / 2);\n rippleY = Math.round(rect.height / 2);\n } else {\n const {\n clientX,\n clientY\n } = event.touches && event.touches.length > 0 ? event.touches[0] : event;\n rippleX = Math.round(clientX - rect.left);\n rippleY = Math.round(clientY - rect.top);\n }\n if (center) {\n rippleSize = Math.sqrt((2 * rect.width ** 2 + rect.height ** 2) / 3);\n\n // For some reason the animation is broken on Mobile Chrome if the size is even.\n if (rippleSize % 2 === 0) {\n rippleSize += 1;\n }\n } else {\n const sizeX = Math.max(Math.abs((element ? element.clientWidth : 0) - rippleX), rippleX) * 2 + 2;\n const sizeY = Math.max(Math.abs((element ? element.clientHeight : 0) - rippleY), rippleY) * 2 + 2;\n rippleSize = Math.sqrt(sizeX ** 2 + sizeY ** 2);\n }\n\n // Touche devices\n if (event != null && event.touches) {\n // check that this isn't another touchstart due to multitouch\n // otherwise we will only clear a single timer when unmounting while two\n // are running\n if (startTimerCommit.current === null) {\n // Prepare the ripple effect.\n startTimerCommit.current = () => {\n startCommit({\n pulsate,\n rippleX,\n rippleY,\n rippleSize,\n cb\n });\n };\n // Delay the execution of the ripple effect.\n startTimer.current = setTimeout(() => {\n if (startTimerCommit.current) {\n startTimerCommit.current();\n startTimerCommit.current = null;\n }\n }, DELAY_RIPPLE); // We have to make a tradeoff with this value.\n }\n } else {\n startCommit({\n pulsate,\n rippleX,\n rippleY,\n rippleSize,\n cb\n });\n }\n }, [centerProp, startCommit]);\n const pulsate = React.useCallback(() => {\n start({}, {\n pulsate: true\n });\n }, [start]);\n const stop = React.useCallback((event, cb) => {\n clearTimeout(startTimer.current);\n\n // The touch interaction occurs too quickly.\n // We still want to show ripple effect.\n if ((event == null ? void 0 : event.type) === 'touchend' && startTimerCommit.current) {\n startTimerCommit.current();\n startTimerCommit.current = null;\n startTimer.current = setTimeout(() => {\n stop(event, cb);\n });\n return;\n }\n startTimerCommit.current = null;\n setRipples(oldRipples => {\n if (oldRipples.length > 0) {\n return oldRipples.slice(1);\n }\n return oldRipples;\n });\n rippleCallback.current = cb;\n }, []);\n React.useImperativeHandle(ref, () => ({\n pulsate,\n start,\n stop\n }), [pulsate, start, stop]);\n return /*#__PURE__*/_jsx(TouchRippleRoot, _extends({\n className: clsx(touchRippleClasses.root, classes.root, className),\n ref: container\n }, other, {\n children: /*#__PURE__*/_jsx(TransitionGroup, {\n component: null,\n exit: true,\n children: ripples\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TouchRipple.propTypes = {\n /**\n * If `true`, the ripple starts at the center of the component\n * rather than at the point of interaction.\n */\n center: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string\n} : void 0;\nexport default TouchRipple;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getButtonBaseUtilityClass(slot) {\n return generateUtilityClass('MuiButtonBase', slot);\n}\nconst buttonBaseClasses = generateUtilityClasses('MuiButtonBase', ['root', 'disabled', 'focusVisible']);\nexport default buttonBaseClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"action\", \"centerRipple\", \"children\", \"className\", \"component\", \"disabled\", \"disableRipple\", \"disableTouchRipple\", \"focusRipple\", \"focusVisibleClassName\", \"LinkComponent\", \"onBlur\", \"onClick\", \"onContextMenu\", \"onDragLeave\", \"onFocus\", \"onFocusVisible\", \"onKeyDown\", \"onKeyUp\", \"onMouseDown\", \"onMouseLeave\", \"onMouseUp\", \"onTouchEnd\", \"onTouchMove\", \"onTouchStart\", \"tabIndex\", \"TouchRippleProps\", \"touchRippleRef\", \"type\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { elementTypeAcceptingRef, refType } from '@mui/utils';\nimport composeClasses from '@mui/base/composeClasses';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport useForkRef from '../utils/useForkRef';\nimport useEventCallback from '../utils/useEventCallback';\nimport useIsFocusVisible from '../utils/useIsFocusVisible';\nimport TouchRipple from './TouchRipple';\nimport buttonBaseClasses, { getButtonBaseUtilityClass } from './buttonBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n focusVisible,\n focusVisibleClassName,\n classes\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', focusVisible && 'focusVisible']\n };\n const composedClasses = composeClasses(slots, getButtonBaseUtilityClass, classes);\n if (focusVisible && focusVisibleClassName) {\n composedClasses.root += ` ${focusVisibleClassName}`;\n }\n return composedClasses;\n};\nexport const ButtonBaseRoot = styled('button', {\n name: 'MuiButtonBase',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'relative',\n boxSizing: 'border-box',\n WebkitTapHighlightColor: 'transparent',\n backgroundColor: 'transparent',\n // Reset default value\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n border: 0,\n margin: 0,\n // Remove the margin in Safari\n borderRadius: 0,\n padding: 0,\n // Remove the padding in Firefox\n cursor: 'pointer',\n userSelect: 'none',\n verticalAlign: 'middle',\n MozAppearance: 'none',\n // Reset\n WebkitAppearance: 'none',\n // Reset\n textDecoration: 'none',\n // So we take precedent over the style of a native element.\n color: 'inherit',\n '&::-moz-focus-inner': {\n borderStyle: 'none' // Remove Firefox dotted outline.\n },\n\n [`&.${buttonBaseClasses.disabled}`]: {\n pointerEvents: 'none',\n // Disable link interactions\n cursor: 'default'\n },\n '@media print': {\n colorAdjust: 'exact'\n }\n});\n\n/**\n * `ButtonBase` contains as few styles as possible.\n * It aims to be a simple building block for creating a button.\n * It contains a load of style reset and some focus/ripple logic.\n */\nconst ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiButtonBase'\n });\n const {\n action,\n centerRipple = false,\n children,\n className,\n component = 'button',\n disabled = false,\n disableRipple = false,\n disableTouchRipple = false,\n focusRipple = false,\n LinkComponent = 'a',\n onBlur,\n onClick,\n onContextMenu,\n onDragLeave,\n onFocus,\n onFocusVisible,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseLeave,\n onMouseUp,\n onTouchEnd,\n onTouchMove,\n onTouchStart,\n tabIndex = 0,\n TouchRippleProps,\n touchRippleRef,\n type\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const buttonRef = React.useRef(null);\n const rippleRef = React.useRef(null);\n const handleRippleRef = useForkRef(rippleRef, touchRippleRef);\n const {\n isFocusVisibleRef,\n onFocus: handleFocusVisible,\n onBlur: handleBlurVisible,\n ref: focusVisibleRef\n } = useIsFocusVisible();\n const [focusVisible, setFocusVisible] = React.useState(false);\n if (disabled && focusVisible) {\n setFocusVisible(false);\n }\n React.useImperativeHandle(action, () => ({\n focusVisible: () => {\n setFocusVisible(true);\n buttonRef.current.focus();\n }\n }), []);\n const [mountedState, setMountedState] = React.useState(false);\n React.useEffect(() => {\n setMountedState(true);\n }, []);\n const enableTouchRipple = mountedState && !disableRipple && !disabled;\n React.useEffect(() => {\n if (focusVisible && focusRipple && !disableRipple && mountedState) {\n rippleRef.current.pulsate();\n }\n }, [disableRipple, focusRipple, focusVisible, mountedState]);\n function useRippleHandler(rippleAction, eventCallback, skipRippleAction = disableTouchRipple) {\n return useEventCallback(event => {\n if (eventCallback) {\n eventCallback(event);\n }\n const ignore = skipRippleAction;\n if (!ignore && rippleRef.current) {\n rippleRef.current[rippleAction](event);\n }\n return true;\n });\n }\n const handleMouseDown = useRippleHandler('start', onMouseDown);\n const handleContextMenu = useRippleHandler('stop', onContextMenu);\n const handleDragLeave = useRippleHandler('stop', onDragLeave);\n const handleMouseUp = useRippleHandler('stop', onMouseUp);\n const handleMouseLeave = useRippleHandler('stop', event => {\n if (focusVisible) {\n event.preventDefault();\n }\n if (onMouseLeave) {\n onMouseLeave(event);\n }\n });\n const handleTouchStart = useRippleHandler('start', onTouchStart);\n const handleTouchEnd = useRippleHandler('stop', onTouchEnd);\n const handleTouchMove = useRippleHandler('stop', onTouchMove);\n const handleBlur = useRippleHandler('stop', event => {\n handleBlurVisible(event);\n if (isFocusVisibleRef.current === false) {\n setFocusVisible(false);\n }\n if (onBlur) {\n onBlur(event);\n }\n }, false);\n const handleFocus = useEventCallback(event => {\n // Fix for https://github.com/facebook/react/issues/7769\n if (!buttonRef.current) {\n buttonRef.current = event.currentTarget;\n }\n handleFocusVisible(event);\n if (isFocusVisibleRef.current === true) {\n setFocusVisible(true);\n if (onFocusVisible) {\n onFocusVisible(event);\n }\n }\n if (onFocus) {\n onFocus(event);\n }\n });\n const isNonNativeButton = () => {\n const button = buttonRef.current;\n return component && component !== 'button' && !(button.tagName === 'A' && button.href);\n };\n\n /**\n * IE11 shim for https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat\n */\n const keydownRef = React.useRef(false);\n const handleKeyDown = useEventCallback(event => {\n // Check if key is already down to avoid repeats being counted as multiple activations\n if (focusRipple && !keydownRef.current && focusVisible && rippleRef.current && event.key === ' ') {\n keydownRef.current = true;\n rippleRef.current.stop(event, () => {\n rippleRef.current.start(event);\n });\n }\n if (event.target === event.currentTarget && isNonNativeButton() && event.key === ' ') {\n event.preventDefault();\n }\n if (onKeyDown) {\n onKeyDown(event);\n }\n\n // Keyboard accessibility for non interactive elements\n if (event.target === event.currentTarget && isNonNativeButton() && event.key === 'Enter' && !disabled) {\n event.preventDefault();\n if (onClick) {\n onClick(event);\n }\n }\n });\n const handleKeyUp = useEventCallback(event => {\n // calling preventDefault in keyUp on a \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 * as React from 'react';\nimport { useTheme as useThemeSystem } from '@mui/system';\nimport defaultTheme from './defaultTheme';\nimport THEME_ID from './identifier';\nexport default function useTheme() {\n const theme = useThemeSystem(defaultTheme);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue(theme);\n }\n return theme[THEME_ID] || theme;\n}","export const reflow = node => node.scrollTop;\nexport function getTransitionProps(props, options) {\n var _style$transitionDura, _style$transitionTimi;\n const {\n timeout,\n easing,\n style = {}\n } = props;\n return {\n duration: (_style$transitionDura = style.transitionDuration) != null ? _style$transitionDura : typeof timeout === 'number' ? timeout : timeout[options.mode] || 0,\n easing: (_style$transitionTimi = style.transitionTimingFunction) != null ? _style$transitionTimi : typeof easing === 'object' ? easing[options.mode] : easing,\n delay: style.transitionDelay\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"addEndListener\", \"appear\", \"children\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { elementAcceptingRef } from '@mui/utils';\nimport { Transition } from 'react-transition-group';\nimport useTheme from '../styles/useTheme';\nimport { getTransitionProps, reflow } from '../transitions/utils';\nimport useForkRef from '../utils/useForkRef';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction getScale(value) {\n return `scale(${value}, ${value ** 2})`;\n}\nconst styles = {\n entering: {\n opacity: 1,\n transform: getScale(1)\n },\n entered: {\n opacity: 1,\n transform: 'none'\n }\n};\n\n/*\n TODO v6: remove\n Conditionally apply a workaround for the CSS transition bug in Safari 15.4 / WebKit browsers.\n */\nconst isWebKit154 = typeof navigator !== 'undefined' && /^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent) && /(os |version\\/)15(.|_)4/i.test(navigator.userAgent);\n\n/**\n * The Grow transition is used by the [Tooltip](/material-ui/react-tooltip/) and\n * [Popover](/material-ui/react-popover/) components.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {\n const {\n addEndListener,\n appear = true,\n children,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n style,\n timeout = 'auto',\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const timer = React.useRef();\n const autoTimeout = React.useRef();\n const theme = useTheme();\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(nodeRef, children.ref, ref);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const handleEntering = normalizedTransitionCallback(onEntering);\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n reflow(node); // So the animation always start from the start.\n\n const {\n duration: transitionDuration,\n delay,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n let duration;\n if (timeout === 'auto') {\n duration = theme.transitions.getAutoHeightDuration(node.clientHeight);\n autoTimeout.current = duration;\n } else {\n duration = transitionDuration;\n }\n node.style.transition = [theme.transitions.create('opacity', {\n duration,\n delay\n }), theme.transitions.create('transform', {\n duration: isWebKit154 ? duration : duration * 0.666,\n delay,\n easing: transitionTimingFunction\n })].join(',');\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback(onEntered);\n const handleExiting = normalizedTransitionCallback(onExiting);\n const handleExit = normalizedTransitionCallback(node => {\n const {\n duration: transitionDuration,\n delay,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n let duration;\n if (timeout === 'auto') {\n duration = theme.transitions.getAutoHeightDuration(node.clientHeight);\n autoTimeout.current = duration;\n } else {\n duration = transitionDuration;\n }\n node.style.transition = [theme.transitions.create('opacity', {\n duration,\n delay\n }), theme.transitions.create('transform', {\n duration: isWebKit154 ? duration : duration * 0.666,\n delay: isWebKit154 ? delay : delay || duration * 0.333,\n easing: transitionTimingFunction\n })].join(',');\n node.style.opacity = 0;\n node.style.transform = getScale(0.75);\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleAddEndListener = next => {\n if (timeout === 'auto') {\n timer.current = setTimeout(next, autoTimeout.current || 0);\n }\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n React.useEffect(() => {\n return () => {\n clearTimeout(timer.current);\n };\n }, []);\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n appear: appear,\n in: inProp,\n nodeRef: nodeRef,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n timeout: timeout === 'auto' ? null : timeout\n }, other, {\n children: (state, childProps) => {\n return /*#__PURE__*/React.cloneElement(children, _extends({\n style: _extends({\n opacity: 0,\n transform: getScale(0.75),\n visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n }, styles[state], style, children.props.style),\n ref: handleRef\n }, childProps));\n }\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Grow.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * Perform the enter transition when it first mounts if `in` is also `true`.\n * Set this to `false` to disable this behavior.\n * @default true\n */\n appear: PropTypes.bool,\n /**\n * A single child content element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n *\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default 'auto'\n */\n timeout: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nGrow.muiSupportAuto = true;\nexport default Grow;","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { exactProp, HTMLElementType, unstable_useEnhancedEffect as useEnhancedEffect, unstable_useForkRef as useForkRef, unstable_setRef as setRef } from '@mui/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction getContainer(container) {\n return typeof container === 'function' ? container() : container;\n}\n\n/**\n * Portals provide a first-class way to render children into a DOM node\n * that exists outside the DOM hierarchy of the parent component.\n *\n * Demos:\n *\n * - [Portal](https://mui.com/base/react-portal/)\n *\n * API:\n *\n * - [Portal API](https://mui.com/base/react-portal/components-api/#portal)\n */\nconst Portal = /*#__PURE__*/React.forwardRef(function Portal(props, forwardedRef) {\n const {\n children,\n container,\n disablePortal = false\n } = props;\n const [mountNode, setMountNode] = React.useState(null);\n // @ts-expect-error TODO upstream fix\n const handleRef = useForkRef( /*#__PURE__*/React.isValidElement(children) ? children.ref : null, forwardedRef);\n useEnhancedEffect(() => {\n if (!disablePortal) {\n setMountNode(getContainer(container) || document.body);\n }\n }, [container, disablePortal]);\n useEnhancedEffect(() => {\n if (mountNode && !disablePortal) {\n setRef(forwardedRef, mountNode);\n return () => {\n setRef(forwardedRef, null);\n };\n }\n return undefined;\n }, [forwardedRef, mountNode, disablePortal]);\n if (disablePortal) {\n if ( /*#__PURE__*/React.isValidElement(children)) {\n const newProps = {\n ref: handleRef\n };\n return /*#__PURE__*/React.cloneElement(children, newProps);\n }\n return /*#__PURE__*/_jsx(React.Fragment, {\n children: children\n });\n }\n return /*#__PURE__*/_jsx(React.Fragment, {\n children: mountNode ? /*#__PURE__*/ReactDOM.createPortal(children, mountNode) : mountNode\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Portal.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The children to render into the `container`.\n */\n children: PropTypes.node,\n /**\n * An HTML element or function that returns one.\n * The `container` will have the portal children appended to it.\n *\n * By default, it uses the body of the top-level document object,\n * so it's simply `document.body` most of the time.\n */\n container: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * The `children` will be under the DOM hierarchy of the parent component.\n * @default false\n */\n disablePortal: PropTypes.bool\n} : void 0;\nif (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line\n Portal['propTypes' + ''] = exactProp(Portal.propTypes);\n}\nexport default Portal;","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\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}","import { unstable_ownerWindow as ownerWindow, unstable_ownerDocument as ownerDocument, unstable_getScrollbarSize as getScrollbarSize } from '@mui/utils';\n// Is a vertical scrollbar displayed?\nfunction isOverflowing(container) {\n const doc = ownerDocument(container);\n if (doc.body === container) {\n return ownerWindow(container).innerWidth > doc.documentElement.clientWidth;\n }\n return container.scrollHeight > container.clientHeight;\n}\nexport function ariaHidden(element, show) {\n if (show) {\n element.setAttribute('aria-hidden', 'true');\n } else {\n element.removeAttribute('aria-hidden');\n }\n}\nfunction getPaddingRight(element) {\n return parseInt(ownerWindow(element).getComputedStyle(element).paddingRight, 10) || 0;\n}\nfunction isAriaHiddenForbiddenOnElement(element) {\n // The forbidden HTML tags are the ones from ARIA specification that\n // can be children of body and can't have aria-hidden attribute.\n // cf. https://www.w3.org/TR/html-aria/#docconformance\n const forbiddenTagNames = ['TEMPLATE', 'SCRIPT', 'STYLE', 'LINK', 'MAP', 'META', 'NOSCRIPT', 'PICTURE', 'COL', 'COLGROUP', 'PARAM', 'SLOT', 'SOURCE', 'TRACK'];\n const isForbiddenTagName = forbiddenTagNames.indexOf(element.tagName) !== -1;\n const isInputHidden = element.tagName === 'INPUT' && element.getAttribute('type') === 'hidden';\n return isForbiddenTagName || isInputHidden;\n}\nfunction ariaHiddenSiblings(container, mountElement, currentElement, elementsToExclude, show) {\n const blacklist = [mountElement, currentElement, ...elementsToExclude];\n [].forEach.call(container.children, element => {\n const isNotExcludedElement = blacklist.indexOf(element) === -1;\n const isNotForbiddenElement = !isAriaHiddenForbiddenOnElement(element);\n if (isNotExcludedElement && isNotForbiddenElement) {\n ariaHidden(element, show);\n }\n });\n}\nfunction findIndexOf(items, callback) {\n let idx = -1;\n items.some((item, index) => {\n if (callback(item)) {\n idx = index;\n return true;\n }\n return false;\n });\n return idx;\n}\nfunction handleContainer(containerInfo, props) {\n const restoreStyle = [];\n const container = containerInfo.container;\n if (!props.disableScrollLock) {\n if (isOverflowing(container)) {\n // Compute the size before applying overflow hidden to avoid any scroll jumps.\n const scrollbarSize = getScrollbarSize(ownerDocument(container));\n restoreStyle.push({\n value: container.style.paddingRight,\n property: 'padding-right',\n el: container\n });\n // Use computed style, here to get the real padding to add our scrollbar width.\n container.style.paddingRight = `${getPaddingRight(container) + scrollbarSize}px`;\n\n // .mui-fixed is a global helper.\n const fixedElements = ownerDocument(container).querySelectorAll('.mui-fixed');\n [].forEach.call(fixedElements, element => {\n restoreStyle.push({\n value: element.style.paddingRight,\n property: 'padding-right',\n el: element\n });\n element.style.paddingRight = `${getPaddingRight(element) + scrollbarSize}px`;\n });\n }\n let scrollContainer;\n if (container.parentNode instanceof DocumentFragment) {\n scrollContainer = ownerDocument(container).body;\n } else {\n // Improve Gatsby support\n // https://css-tricks.com/snippets/css/force-vertical-scrollbar/\n const parent = container.parentElement;\n const containerWindow = ownerWindow(container);\n scrollContainer = (parent == null ? void 0 : parent.nodeName) === 'HTML' && containerWindow.getComputedStyle(parent).overflowY === 'scroll' ? parent : container;\n }\n\n // Block the scroll even if no scrollbar is visible to account for mobile keyboard\n // screensize shrink.\n restoreStyle.push({\n value: scrollContainer.style.overflow,\n property: 'overflow',\n el: scrollContainer\n }, {\n value: scrollContainer.style.overflowX,\n property: 'overflow-x',\n el: scrollContainer\n }, {\n value: scrollContainer.style.overflowY,\n property: 'overflow-y',\n el: scrollContainer\n });\n scrollContainer.style.overflow = 'hidden';\n }\n const restore = () => {\n restoreStyle.forEach(({\n value,\n el,\n property\n }) => {\n if (value) {\n el.style.setProperty(property, value);\n } else {\n el.style.removeProperty(property);\n }\n });\n };\n return restore;\n}\nfunction getHiddenSiblings(container) {\n const hiddenSiblings = [];\n [].forEach.call(container.children, element => {\n if (element.getAttribute('aria-hidden') === 'true') {\n hiddenSiblings.push(element);\n }\n });\n return hiddenSiblings;\n}\n/**\n * @ignore - do not document.\n *\n * Proper state management for containers and the modals in those containers.\n * Simplified, but inspired by react-overlay's ModalManager class.\n * Used by the Modal to ensure proper styling of containers.\n */\nexport default class ModalManager {\n constructor() {\n this.containers = void 0;\n this.modals = void 0;\n this.modals = [];\n this.containers = [];\n }\n add(modal, container) {\n let modalIndex = this.modals.indexOf(modal);\n if (modalIndex !== -1) {\n return modalIndex;\n }\n modalIndex = this.modals.length;\n this.modals.push(modal);\n\n // If the modal we are adding is already in the DOM.\n if (modal.modalRef) {\n ariaHidden(modal.modalRef, false);\n }\n const hiddenSiblings = getHiddenSiblings(container);\n ariaHiddenSiblings(container, modal.mount, modal.modalRef, hiddenSiblings, true);\n const containerIndex = findIndexOf(this.containers, item => item.container === container);\n if (containerIndex !== -1) {\n this.containers[containerIndex].modals.push(modal);\n return modalIndex;\n }\n this.containers.push({\n modals: [modal],\n container,\n restore: null,\n hiddenSiblings\n });\n return modalIndex;\n }\n mount(modal, props) {\n const containerIndex = findIndexOf(this.containers, item => item.modals.indexOf(modal) !== -1);\n const containerInfo = this.containers[containerIndex];\n if (!containerInfo.restore) {\n containerInfo.restore = handleContainer(containerInfo, props);\n }\n }\n remove(modal, ariaHiddenState = true) {\n const modalIndex = this.modals.indexOf(modal);\n if (modalIndex === -1) {\n return modalIndex;\n }\n const containerIndex = findIndexOf(this.containers, item => item.modals.indexOf(modal) !== -1);\n const containerInfo = this.containers[containerIndex];\n containerInfo.modals.splice(containerInfo.modals.indexOf(modal), 1);\n this.modals.splice(modalIndex, 1);\n\n // If that was the last modal in a container, clean up the container.\n if (containerInfo.modals.length === 0) {\n // The modal might be closed before it had the chance to be mounted in the DOM.\n if (containerInfo.restore) {\n containerInfo.restore();\n }\n if (modal.modalRef) {\n // In case the modal wasn't in the DOM yet.\n ariaHidden(modal.modalRef, ariaHiddenState);\n }\n ariaHiddenSiblings(containerInfo.container, modal.mount, modal.modalRef, containerInfo.hiddenSiblings, false);\n this.containers.splice(containerIndex, 1);\n } else {\n // Otherwise make sure the next top modal is visible to a screen reader.\n const nextTop = containerInfo.modals[containerInfo.modals.length - 1];\n // as soon as a modal is adding its modalRef is undefined. it can't set\n // aria-hidden because the dom element doesn't exist either\n // when modal was unmounted before modalRef gets null\n if (nextTop.modalRef) {\n ariaHidden(nextTop.modalRef, false);\n }\n }\n return modalIndex;\n }\n isTopModal(modal) {\n return this.modals.length > 0 && this.modals[this.modals.length - 1] === modal;\n }\n}","/* eslint-disable consistent-return, jsx-a11y/no-noninteractive-tabindex */\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { exactProp, elementAcceptingRef, unstable_useForkRef as useForkRef, unstable_ownerDocument as ownerDocument } from '@mui/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n// Inspired by https://github.com/focus-trap/tabbable\nconst candidatesSelector = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable=\"false\"])'].join(',');\nfunction getTabIndex(node) {\n const tabindexAttr = parseInt(node.getAttribute('tabindex') || '', 10);\n if (!Number.isNaN(tabindexAttr)) {\n return tabindexAttr;\n }\n\n // Browsers do not return `tabIndex` correctly for contentEditable nodes;\n // https://bugs.chromium.org/p/chromium/issues/detail?id=661108&q=contenteditable%20tabindex&can=2\n // so if they don't have a tabindex attribute specifically set, assume it's 0.\n // in Chrome,
,
\n * );\n * }\n * ```\n *\n * When the `in` prop is set to `true`, the child component will first receive\n * the class `example-enter`, then the `example-enter-active` will be added in\n * the next tick. `CSSTransition` [forces a\n * reflow](https://github.com/reactjs/react-transition-group/blob/5007303e729a74be66a21c3e2205e4916821524b/src/CSSTransition.js#L208-L215)\n * between before adding the `example-enter-active`. This is an important trick\n * because it allows us to transition between `example-enter` and\n * `example-enter-active` even though they were added immediately one after\n * another. Most notably, this is what makes it possible for us to animate\n * _appearance_.\n *\n * ```css\n * .my-node-enter {\n * opacity: 0;\n * }\n * .my-node-enter-active {\n * opacity: 1;\n * transition: opacity 200ms;\n * }\n * .my-node-exit {\n * opacity: 1;\n * }\n * .my-node-exit-active {\n * opacity: 0;\n * transition: opacity 200ms;\n * }\n * ```\n *\n * `*-active` classes represent which styles you want to animate **to**, so it's\n * important to add `transition` declaration only to them, otherwise transitions\n * might not behave as intended! This might not be obvious when the transitions\n * are symmetrical, i.e. when `*-enter-active` is the same as `*-exit`, like in\n * the example above (minus `transition`), but it becomes apparent in more\n * complex transitions.\n *\n * **Note**: If you're using the\n * [`appear`](http://reactcommunity.org/react-transition-group/transition#Transition-prop-appear)\n * prop, make sure to define styles for `.appear-*` classes as well.\n */\n\n\nvar CSSTransition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(CSSTransition, _React$Component);\n\n function CSSTransition() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.appliedClasses = {\n appear: {},\n enter: {},\n exit: {}\n };\n\n _this.onEnter = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument[0],\n appearing = _this$resolveArgument[1];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, appearing ? 'appear' : 'enter', 'base');\n\n if (_this.props.onEnter) {\n _this.props.onEnter(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntering = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument2 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument2[0],\n appearing = _this$resolveArgument2[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.addClass(node, type, 'active');\n\n if (_this.props.onEntering) {\n _this.props.onEntering(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntered = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument3 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument3[0],\n appearing = _this$resolveArgument3[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.removeClasses(node, type);\n\n _this.addClass(node, type, 'done');\n\n if (_this.props.onEntered) {\n _this.props.onEntered(maybeNode, maybeAppearing);\n }\n };\n\n _this.onExit = function (maybeNode) {\n var _this$resolveArgument4 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument4[0];\n\n _this.removeClasses(node, 'appear');\n\n _this.removeClasses(node, 'enter');\n\n _this.addClass(node, 'exit', 'base');\n\n if (_this.props.onExit) {\n _this.props.onExit(maybeNode);\n }\n };\n\n _this.onExiting = function (maybeNode) {\n var _this$resolveArgument5 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument5[0];\n\n _this.addClass(node, 'exit', 'active');\n\n if (_this.props.onExiting) {\n _this.props.onExiting(maybeNode);\n }\n };\n\n _this.onExited = function (maybeNode) {\n var _this$resolveArgument6 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument6[0];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, 'exit', 'done');\n\n if (_this.props.onExited) {\n _this.props.onExited(maybeNode);\n }\n };\n\n _this.resolveArguments = function (maybeNode, maybeAppearing) {\n return _this.props.nodeRef ? [_this.props.nodeRef.current, maybeNode] // here `maybeNode` is actually `appearing`\n : [maybeNode, maybeAppearing];\n };\n\n _this.getClassNames = function (type) {\n var classNames = _this.props.classNames;\n var isStringClassNames = typeof classNames === 'string';\n var prefix = isStringClassNames && classNames ? classNames + \"-\" : '';\n var baseClassName = isStringClassNames ? \"\" + prefix + type : classNames[type];\n var activeClassName = isStringClassNames ? baseClassName + \"-active\" : classNames[type + \"Active\"];\n var doneClassName = isStringClassNames ? baseClassName + \"-done\" : classNames[type + \"Done\"];\n return {\n baseClassName: baseClassName,\n activeClassName: activeClassName,\n doneClassName: doneClassName\n };\n };\n\n return _this;\n }\n\n var _proto = CSSTransition.prototype;\n\n _proto.addClass = function addClass(node, type, phase) {\n var className = this.getClassNames(type)[phase + \"ClassName\"];\n\n var _this$getClassNames = this.getClassNames('enter'),\n doneClassName = _this$getClassNames.doneClassName;\n\n if (type === 'appear' && phase === 'done' && doneClassName) {\n className += \" \" + doneClassName;\n } // This is to force a repaint,\n // which is necessary in order to transition styles when adding a class name.\n\n\n if (phase === 'active') {\n if (node) forceReflow(node);\n }\n\n if (className) {\n this.appliedClasses[type][phase] = className;\n\n _addClass(node, className);\n }\n };\n\n _proto.removeClasses = function removeClasses(node, type) {\n var _this$appliedClasses$ = this.appliedClasses[type],\n baseClassName = _this$appliedClasses$.base,\n activeClassName = _this$appliedClasses$.active,\n doneClassName = _this$appliedClasses$.done;\n this.appliedClasses[type] = {};\n\n if (baseClassName) {\n removeClass(node, baseClassName);\n }\n\n if (activeClassName) {\n removeClass(node, activeClassName);\n }\n\n if (doneClassName) {\n removeClass(node, doneClassName);\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n _ = _this$props.classNames,\n props = _objectWithoutPropertiesLoose(_this$props, [\"classNames\"]);\n\n return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {\n onEnter: this.onEnter,\n onEntered: this.onEntered,\n onEntering: this.onEntering,\n onExit: this.onExit,\n onExiting: this.onExiting,\n onExited: this.onExited\n }));\n };\n\n return CSSTransition;\n}(React.Component);\n\nCSSTransition.defaultProps = {\n classNames: ''\n};\nCSSTransition.propTypes = process.env.NODE_ENV !== \"production\" ? _extends({}, Transition.propTypes, {\n /**\n * The animation classNames applied to the component as it appears, enters,\n * exits or has finished the transition. A single name can be provided, which\n * will be suffixed for each stage, e.g. `classNames=\"fade\"` applies:\n *\n * - `fade-appear`, `fade-appear-active`, `fade-appear-done`\n * - `fade-enter`, `fade-enter-active`, `fade-enter-done`\n * - `fade-exit`, `fade-exit-active`, `fade-exit-done`\n *\n * A few details to note about how these classes are applied:\n *\n * 1. They are _joined_ with the ones that are already defined on the child\n * component, so if you want to add some base styles, you can use\n * `className` without worrying that it will be overridden.\n *\n * 2. If the transition component mounts with `in={false}`, no classes are\n * applied yet. You might be expecting `*-exit-done`, but if you think\n * about it, a component cannot finish exiting if it hasn't entered yet.\n *\n * 2. `fade-appear-done` and `fade-enter-done` will _both_ be applied. This\n * allows you to define different behavior for when appearing is done and\n * when regular entering is done, using selectors like\n * `.fade-enter-done:not(.fade-appear-done)`. For example, you could apply\n * an epic entrance animation when element first appears in the DOM using\n * [Animate.css](https://daneden.github.io/animate.css/). Otherwise you can\n * simply use `fade-enter-done` for defining both cases.\n *\n * Each individual classNames can also be specified independently like:\n *\n * ```js\n * classNames={{\n * appear: 'my-appear',\n * appearActive: 'my-active-appear',\n * appearDone: 'my-done-appear',\n * enter: 'my-enter',\n * enterActive: 'my-active-enter',\n * enterDone: 'my-done-enter',\n * exit: 'my-exit',\n * exitActive: 'my-active-exit',\n * exitDone: 'my-done-exit',\n * }}\n * ```\n *\n * If you want to set these classes using CSS Modules:\n *\n * ```js\n * import styles from './styles.css';\n * ```\n *\n * you might want to use camelCase in your CSS file, that way could simply\n * spread them instead of listing them one by one:\n *\n * ```js\n * classNames={{ ...styles }}\n * ```\n *\n * @type {string | {\n * appear?: string,\n * appearActive?: string,\n * appearDone?: string,\n * enter?: string,\n * enterActive?: string,\n * enterDone?: string,\n * exit?: string,\n * exitActive?: string,\n * exitDone?: string,\n * }}\n */\n classNames: classNamesShape,\n\n /**\n * A `` callback fired immediately after the 'enter' or 'appear' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEnter: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter-active' or\n * 'appear-active' class is applied.\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 * A `` callback fired immediately after the 'enter' or\n * 'appear' classes are **removed** and the `done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntered: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExit: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit-active' is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExiting: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' classes\n * are **removed** and the `exit-done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExited: PropTypes.func\n}) : {};\nexport default CSSTransition;","import hasClass from './hasClass';\n/**\n * Adds a CSS class to a given element.\n * \n * @param element the element\n * @param className the CSS class name\n */\n\nexport default function addClass(element, className) {\n if (element.classList) element.classList.add(className);else if (!hasClass(element, className)) if (typeof element.className === 'string') element.className = element.className + \" \" + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + \" \" + className);\n}","/**\n * Checks if a given element has a CSS class.\n * \n * @param element the element\n * @param className the CSS class name\n */\nexport default function hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);\n return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getPickersSlideTransitionUtilityClass = slot => generateUtilityClass('MuiPickersSlideTransition', slot);\nexport const pickersSlideTransitionClasses = generateUtilityClasses('MuiPickersSlideTransition', ['root', 'slideEnter-left', 'slideEnter-right', 'slideEnterActive', 'slideExit', 'slideExitActiveLeft-left', 'slideExitActiveLeft-right']);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\", \"className\", \"reduceAnimations\", \"slideDirection\", \"transKey\", \"classes\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport { getPickersSlideTransitionUtilityClass, pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n slideDirection\n } = ownerState;\n const slots = {\n root: ['root'],\n exit: ['slideExit'],\n enterActive: ['slideEnterActive'],\n enter: [`slideEnter-${slideDirection}`],\n exitActive: [`slideExitActiveLeft-${slideDirection}`]\n };\n return composeClasses(slots, getPickersSlideTransitionUtilityClass, classes);\n};\nexport const slideAnimationDuration = 350;\nconst PickersSlideTransitionRoot = styled(TransitionGroup, {\n name: 'MuiPickersSlideTransition',\n slot: 'Root',\n overridesResolver: (_, styles) => [styles.root, {\n [`.${pickersSlideTransitionClasses['slideEnter-left']}`]: styles['slideEnter-left']\n }, {\n [`.${pickersSlideTransitionClasses['slideEnter-right']}`]: styles['slideEnter-right']\n }, {\n [`.${pickersSlideTransitionClasses.slideEnterActive}`]: styles.slideEnterActive\n }, {\n [`.${pickersSlideTransitionClasses.slideExit}`]: styles.slideExit\n }, {\n [`.${pickersSlideTransitionClasses['slideExitActiveLeft-left']}`]: styles['slideExitActiveLeft-left']\n }, {\n [`.${pickersSlideTransitionClasses['slideExitActiveLeft-right']}`]: styles['slideExitActiveLeft-right']\n }]\n})(({\n theme\n}) => {\n const slideTransition = theme.transitions.create('transform', {\n duration: slideAnimationDuration,\n easing: 'cubic-bezier(0.35, 0.8, 0.4, 1)'\n });\n return {\n display: 'block',\n position: 'relative',\n overflowX: 'hidden',\n '& > *': {\n position: 'absolute',\n top: 0,\n right: 0,\n left: 0\n },\n [`& .${pickersSlideTransitionClasses['slideEnter-left']}`]: {\n willChange: 'transform',\n transform: 'translate(100%)',\n zIndex: 1\n },\n [`& .${pickersSlideTransitionClasses['slideEnter-right']}`]: {\n willChange: 'transform',\n transform: 'translate(-100%)',\n zIndex: 1\n },\n [`& .${pickersSlideTransitionClasses.slideEnterActive}`]: {\n transform: 'translate(0%)',\n transition: slideTransition\n },\n [`& .${pickersSlideTransitionClasses.slideExit}`]: {\n transform: 'translate(0%)'\n },\n [`& .${pickersSlideTransitionClasses['slideExitActiveLeft-left']}`]: {\n willChange: 'transform',\n transform: 'translate(-100%)',\n transition: slideTransition,\n zIndex: 0\n },\n [`& .${pickersSlideTransitionClasses['slideExitActiveLeft-right']}`]: {\n willChange: 'transform',\n transform: 'translate(100%)',\n transition: slideTransition,\n zIndex: 0\n }\n };\n});\n\n/**\n * @ignore - do not document.\n */\nexport function PickersSlideTransition(inProps) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersSlideTransition'\n });\n const {\n children,\n className,\n reduceAnimations,\n transKey\n // extracting `classes` from `other`\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const classes = useUtilityClasses(props);\n if (reduceAnimations) {\n return /*#__PURE__*/_jsx(\"div\", {\n className: clsx(classes.root, className),\n children: children\n });\n }\n const transitionClasses = {\n exit: classes.exit,\n enterActive: classes.enterActive,\n enter: classes.enter,\n exitActive: classes.exitActive\n };\n return /*#__PURE__*/_jsx(PickersSlideTransitionRoot, {\n className: clsx(classes.root, className),\n childFactory: element => /*#__PURE__*/React.cloneElement(element, {\n classNames: transitionClasses\n }),\n role: \"presentation\",\n children: /*#__PURE__*/_jsx(CSSTransition, _extends({\n mountOnEnter: true,\n unmountOnExit: true,\n timeout: slideAnimationDuration,\n classNames: transitionClasses\n }, other, {\n children: children\n }), transKey)\n });\n}","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getDayCalendarUtilityClass = slot => generateUtilityClass('MuiDayCalendar', slot);\nexport const dayPickerClasses = generateUtilityClasses('MuiDayCalendar', ['header', 'weekDayLabel', 'loadingContainer', 'slideTransition', 'monthContainer', 'weekContainer', 'weekNumberLabel', 'weekNumber']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"parentProps\", \"day\", \"focusableDay\", \"selectedDays\", \"isDateDisabled\", \"currentMonthNumber\", \"isViewFocused\"],\n _excluded2 = [\"ownerState\"];\nimport * as React from 'react';\nimport useEventCallback from '@mui/utils/useEventCallback';\nimport Typography from '@mui/material/Typography';\nimport { useSlotProps } from '@mui/base/utils';\nimport { styled, useTheme, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses, unstable_useControlled as useControlled } from '@mui/utils';\nimport clsx from 'clsx';\nimport { PickersDay } from '../PickersDay/PickersDay';\nimport { useUtils, useNow, useLocaleText } from '../internals/hooks/useUtils';\nimport { DAY_SIZE, DAY_MARGIN } from '../internals/constants/dimensions';\nimport { PickersSlideTransition } from './PickersSlideTransition';\nimport { useIsDateDisabled } from './useIsDateDisabled';\nimport { findClosestEnabledDate } from '../internals/utils/date-utils';\nimport { getDayCalendarUtilityClass } from './dayCalendarClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n header: ['header'],\n weekDayLabel: ['weekDayLabel'],\n loadingContainer: ['loadingContainer'],\n slideTransition: ['slideTransition'],\n monthContainer: ['monthContainer'],\n weekContainer: ['weekContainer'],\n weekNumberLabel: ['weekNumberLabel'],\n weekNumber: ['weekNumber']\n };\n return composeClasses(slots, getDayCalendarUtilityClass, classes);\n};\nconst defaultDayOfWeekFormatter = day => day.charAt(0).toUpperCase();\nconst weeksContainerHeight = (DAY_SIZE + DAY_MARGIN * 2) * 6;\nconst PickersCalendarDayHeader = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'Header',\n overridesResolver: (_, styles) => styles.header\n})({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n});\nconst PickersCalendarWeekDayLabel = styled(Typography, {\n name: 'MuiDayCalendar',\n slot: 'WeekDayLabel',\n overridesResolver: (_, styles) => styles.weekDayLabel\n})(({\n theme\n}) => ({\n width: 36,\n height: 40,\n margin: '0 2px',\n textAlign: 'center',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n color: (theme.vars || theme).palette.text.secondary\n}));\nconst PickersCalendarWeekNumberLabel = styled(Typography, {\n name: 'MuiDayPicker',\n slot: 'WeekNumberLabel',\n overridesResolver: (_, styles) => styles.weekNumberLabel\n})(({\n theme\n}) => ({\n width: 36,\n height: 40,\n margin: '0 2px',\n textAlign: 'center',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n color: theme.palette.text.disabled\n}));\nconst PickersCalendarWeekNumber = styled(Typography, {\n name: 'MuiDayPicker',\n slot: 'WeekNumber',\n overridesResolver: (_, styles) => styles.weekNumber\n})(({\n theme\n}) => _extends({}, theme.typography.caption, {\n width: DAY_SIZE,\n height: DAY_SIZE,\n padding: 0,\n margin: `0 ${DAY_MARGIN}px`,\n color: theme.palette.text.disabled,\n fontSize: '0.75rem',\n alignItems: 'center',\n justifyContent: 'center',\n display: 'inline-flex'\n}));\nconst PickersCalendarLoadingContainer = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'LoadingContainer',\n overridesResolver: (_, styles) => styles.loadingContainer\n})({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n minHeight: weeksContainerHeight\n});\nconst PickersCalendarSlideTransition = styled(PickersSlideTransition, {\n name: 'MuiDayCalendar',\n slot: 'SlideTransition',\n overridesResolver: (_, styles) => styles.slideTransition\n})({\n minHeight: weeksContainerHeight\n});\nconst PickersCalendarWeekContainer = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'MonthContainer',\n overridesResolver: (_, styles) => styles.monthContainer\n})({\n overflow: 'hidden'\n});\nconst PickersCalendarWeek = styled('div', {\n name: 'MuiDayCalendar',\n slot: 'WeekContainer',\n overridesResolver: (_, styles) => styles.weekContainer\n})({\n margin: `${DAY_MARGIN}px 0`,\n display: 'flex',\n justifyContent: 'center'\n});\nfunction WrappedDay(_ref) {\n var _ref2, _slots$day, _slotProps$day;\n let {\n parentProps,\n day,\n focusableDay,\n selectedDays,\n isDateDisabled,\n currentMonthNumber,\n isViewFocused\n } = _ref,\n other = _objectWithoutPropertiesLoose(_ref, _excluded);\n const utils = useUtils();\n const now = useNow();\n const {\n disabled,\n disableHighlightToday,\n isMonthSwitchingAnimating,\n showDaysOutsideCurrentMonth,\n components,\n componentsProps,\n slots,\n slotProps\n } = parentProps;\n const isFocusableDay = focusableDay !== null && utils.isSameDay(day, focusableDay);\n const isSelected = selectedDays.some(selectedDay => utils.isSameDay(selectedDay, day));\n const isToday = utils.isSameDay(day, now);\n const Day = (_ref2 = (_slots$day = slots == null ? void 0 : slots.day) != null ? _slots$day : components == null ? void 0 : components.Day) != null ? _ref2 : PickersDay;\n // We don't want to pass to ownerState down, to avoid re-rendering all the day whenever a prop changes.\n const _useSlotProps = useSlotProps({\n elementType: Day,\n externalSlotProps: (_slotProps$day = slotProps == null ? void 0 : slotProps.day) != null ? _slotProps$day : componentsProps == null ? void 0 : componentsProps.day,\n additionalProps: _extends({\n disableHighlightToday,\n showDaysOutsideCurrentMonth,\n role: 'gridcell',\n isAnimating: isMonthSwitchingAnimating,\n // it is used in date range dragging logic by accessing `dataset.timestamp`\n 'data-timestamp': utils.toJsDate(day).valueOf()\n }, other),\n ownerState: _extends({}, parentProps, {\n day,\n selected: isSelected\n })\n }),\n dayProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);\n const isDisabled = React.useMemo(() => disabled || isDateDisabled(day), [disabled, isDateDisabled, day]);\n const outsideCurrentMonth = React.useMemo(() => utils.getMonth(day) !== currentMonthNumber, [utils, day, currentMonthNumber]);\n const isFirstVisibleCell = React.useMemo(() => {\n const startOfMonth = utils.startOfMonth(utils.setMonth(day, currentMonthNumber));\n if (!showDaysOutsideCurrentMonth) {\n return utils.isSameDay(day, startOfMonth);\n }\n return utils.isSameDay(day, utils.startOfWeek(startOfMonth));\n }, [currentMonthNumber, day, showDaysOutsideCurrentMonth, utils]);\n const isLastVisibleCell = React.useMemo(() => {\n const endOfMonth = utils.endOfMonth(utils.setMonth(day, currentMonthNumber));\n if (!showDaysOutsideCurrentMonth) {\n return utils.isSameDay(day, endOfMonth);\n }\n return utils.isSameDay(day, utils.endOfWeek(endOfMonth));\n }, [currentMonthNumber, day, showDaysOutsideCurrentMonth, utils]);\n return /*#__PURE__*/_jsx(Day, _extends({}, dayProps, {\n day: day,\n disabled: isDisabled,\n autoFocus: isViewFocused && isFocusableDay,\n today: isToday,\n outsideCurrentMonth: outsideCurrentMonth,\n isFirstVisibleCell: isFirstVisibleCell,\n isLastVisibleCell: isLastVisibleCell,\n selected: isSelected,\n tabIndex: isFocusableDay ? 0 : -1,\n \"aria-selected\": isSelected,\n \"aria-current\": isToday ? 'date' : undefined\n }));\n}\n\n/**\n * @ignore - do not document.\n */\nexport function DayCalendar(inProps) {\n const now = useNow();\n const utils = useUtils();\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDayCalendar'\n });\n const classes = useUtilityClasses(props);\n const theme = useTheme();\n const isRTL = theme.direction === 'rtl';\n const {\n onFocusedDayChange,\n className,\n currentMonth,\n selectedDays,\n focusedDay,\n loading,\n onSelectedDaysChange,\n onMonthSwitchingAnimationEnd,\n readOnly,\n reduceAnimations,\n renderLoading = () => /*#__PURE__*/_jsx(\"span\", {\n children: \"...\"\n }),\n slideDirection,\n TransitionProps,\n disablePast,\n disableFuture,\n minDate,\n maxDate,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n dayOfWeekFormatter = defaultDayOfWeekFormatter,\n hasFocus,\n onFocusedViewChange,\n gridLabelId,\n displayWeekNumber,\n fixedWeekNumber,\n autoFocus\n } = props;\n const isDateDisabled = useIsDateDisabled({\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n minDate,\n maxDate,\n disablePast,\n disableFuture\n });\n const localeText = useLocaleText();\n const [internalHasFocus, setInternalHasFocus] = useControlled({\n name: 'DayCalendar',\n state: 'hasFocus',\n controlled: hasFocus,\n default: autoFocus != null ? autoFocus : false\n });\n const [internalFocusedDay, setInternalFocusedDay] = React.useState(() => focusedDay || now);\n const handleDaySelect = useEventCallback(day => {\n if (readOnly) {\n return;\n }\n onSelectedDaysChange(day);\n });\n const focusDay = day => {\n if (!isDateDisabled(day)) {\n onFocusedDayChange(day);\n setInternalFocusedDay(day);\n onFocusedViewChange == null ? void 0 : onFocusedViewChange(true);\n setInternalHasFocus(true);\n }\n };\n const handleKeyDown = useEventCallback((event, day) => {\n switch (event.key) {\n case 'ArrowUp':\n focusDay(utils.addDays(day, -7));\n event.preventDefault();\n break;\n case 'ArrowDown':\n focusDay(utils.addDays(day, 7));\n event.preventDefault();\n break;\n case 'ArrowLeft':\n {\n const newFocusedDayDefault = utils.addDays(day, isRTL ? 1 : -1);\n const nextAvailableMonth = utils.addMonths(day, isRTL ? 1 : -1);\n const closestDayToFocus = findClosestEnabledDate({\n utils,\n date: newFocusedDayDefault,\n minDate: isRTL ? newFocusedDayDefault : utils.startOfMonth(nextAvailableMonth),\n maxDate: isRTL ? utils.endOfMonth(nextAvailableMonth) : newFocusedDayDefault,\n isDateDisabled\n });\n focusDay(closestDayToFocus || newFocusedDayDefault);\n event.preventDefault();\n break;\n }\n case 'ArrowRight':\n {\n const newFocusedDayDefault = utils.addDays(day, isRTL ? -1 : 1);\n const nextAvailableMonth = utils.addMonths(day, isRTL ? -1 : 1);\n const closestDayToFocus = findClosestEnabledDate({\n utils,\n date: newFocusedDayDefault,\n minDate: isRTL ? utils.startOfMonth(nextAvailableMonth) : newFocusedDayDefault,\n maxDate: isRTL ? newFocusedDayDefault : utils.endOfMonth(nextAvailableMonth),\n isDateDisabled\n });\n focusDay(closestDayToFocus || newFocusedDayDefault);\n event.preventDefault();\n break;\n }\n case 'Home':\n focusDay(utils.startOfWeek(day));\n event.preventDefault();\n break;\n case 'End':\n focusDay(utils.endOfWeek(day));\n event.preventDefault();\n break;\n case 'PageUp':\n focusDay(utils.addMonths(day, 1));\n event.preventDefault();\n break;\n case 'PageDown':\n focusDay(utils.addMonths(day, -1));\n event.preventDefault();\n break;\n default:\n break;\n }\n });\n const handleFocus = useEventCallback((event, day) => focusDay(day));\n const handleBlur = useEventCallback((event, day) => {\n if (internalHasFocus && utils.isSameDay(internalFocusedDay, day)) {\n onFocusedViewChange == null ? void 0 : onFocusedViewChange(false);\n }\n });\n const currentMonthNumber = utils.getMonth(currentMonth);\n const validSelectedDays = React.useMemo(() => selectedDays.filter(day => !!day).map(day => utils.startOfDay(day)), [utils, selectedDays]);\n\n // need a new ref whenever the `key` of the transition changes: http://reactcommunity.org/react-transition-group/transition/#Transition-prop-nodeRef.\n const transitionKey = currentMonthNumber;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const slideNodeRef = React.useMemo(() => /*#__PURE__*/React.createRef(), [transitionKey]);\n const startOfCurrentWeek = utils.startOfWeek(now);\n const focusableDay = React.useMemo(() => {\n const startOfMonth = utils.startOfMonth(currentMonth);\n const endOfMonth = utils.endOfMonth(currentMonth);\n if (isDateDisabled(internalFocusedDay) || utils.isAfterDay(internalFocusedDay, endOfMonth) || utils.isBeforeDay(internalFocusedDay, startOfMonth)) {\n return findClosestEnabledDate({\n utils,\n date: internalFocusedDay,\n minDate: startOfMonth,\n maxDate: endOfMonth,\n disablePast,\n disableFuture,\n isDateDisabled\n });\n }\n return internalFocusedDay;\n }, [currentMonth, disableFuture, disablePast, internalFocusedDay, isDateDisabled, utils]);\n const weeksToDisplay = React.useMemo(() => {\n const toDisplay = utils.getWeekArray(currentMonth);\n let nextMonth = utils.addMonths(currentMonth, 1);\n while (fixedWeekNumber && toDisplay.length < fixedWeekNumber) {\n const additionalWeeks = utils.getWeekArray(nextMonth);\n const hasCommonWeek = utils.isSameDay(toDisplay[toDisplay.length - 1][0], additionalWeeks[0][0]);\n additionalWeeks.slice(hasCommonWeek ? 1 : 0).forEach(week => {\n if (toDisplay.length < fixedWeekNumber) {\n toDisplay.push(week);\n }\n });\n nextMonth = utils.addMonths(nextMonth, 1);\n }\n return toDisplay;\n }, [currentMonth, fixedWeekNumber, utils]);\n return /*#__PURE__*/_jsxs(\"div\", {\n role: \"grid\",\n \"aria-labelledby\": gridLabelId,\n children: [/*#__PURE__*/_jsxs(PickersCalendarDayHeader, {\n role: \"row\",\n className: classes.header,\n children: [displayWeekNumber && /*#__PURE__*/_jsx(PickersCalendarWeekNumberLabel, {\n variant: \"caption\",\n role: \"columnheader\",\n \"aria-label\": localeText.calendarWeekNumberHeaderLabel,\n className: classes.weekNumberLabel,\n children: localeText.calendarWeekNumberHeaderText\n }), utils.getWeekdays().map((day, i) => {\n var _dayOfWeekFormatter;\n return /*#__PURE__*/_jsx(PickersCalendarWeekDayLabel, {\n variant: \"caption\",\n role: \"columnheader\",\n \"aria-label\": utils.format(utils.addDays(startOfCurrentWeek, i), 'weekday'),\n className: classes.weekDayLabel,\n children: (_dayOfWeekFormatter = dayOfWeekFormatter == null ? void 0 : dayOfWeekFormatter(day)) != null ? _dayOfWeekFormatter : day\n }, day + i.toString());\n })]\n }), loading ? /*#__PURE__*/_jsx(PickersCalendarLoadingContainer, {\n className: classes.loadingContainer,\n children: renderLoading()\n }) : /*#__PURE__*/_jsx(PickersCalendarSlideTransition, _extends({\n transKey: transitionKey,\n onExited: onMonthSwitchingAnimationEnd,\n reduceAnimations: reduceAnimations,\n slideDirection: slideDirection,\n className: clsx(className, classes.slideTransition)\n }, TransitionProps, {\n nodeRef: slideNodeRef,\n children: /*#__PURE__*/_jsx(PickersCalendarWeekContainer, {\n ref: slideNodeRef,\n role: \"rowgroup\",\n className: classes.monthContainer,\n children: weeksToDisplay.map((week, index) => /*#__PURE__*/_jsxs(PickersCalendarWeek, {\n role: \"row\",\n className: classes.weekContainer\n // fix issue of announcing row 1 as row 2\n // caused by week day labels row\n ,\n \"aria-rowindex\": index + 1,\n children: [displayWeekNumber && /*#__PURE__*/_jsx(PickersCalendarWeekNumber, {\n className: classes.weekNumber,\n role: \"rowheader\",\n \"aria-label\": localeText.calendarWeekNumberAriaLabelText(utils.getWeekNumber(week[0])),\n children: localeText.calendarWeekNumberText(utils.getWeekNumber(week[0]))\n }), week.map((day, dayIndex) => /*#__PURE__*/_jsx(WrappedDay, {\n parentProps: props,\n day: day,\n selectedDays: validSelectedDays,\n focusableDay: focusableDay,\n onKeyDown: handleKeyDown,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onDaySelect: handleDaySelect,\n isDateDisabled: isDateDisabled,\n currentMonthNumber: currentMonthNumber,\n isViewFocused: internalHasFocus\n // fix issue of announcing column 1 as column 2 when `displayWeekNumber` is enabled\n ,\n \"aria-colindex\": dayIndex + 1\n }, day.toString()))]\n }, `week-${week[0]}`))\n })\n }))]\n });\n}","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getPickersMonthUtilityClass(slot) {\n return generateUtilityClass('MuiPickersMonth', slot);\n}\nexport const pickersMonthClasses = generateUtilityClasses('MuiPickersMonth', ['root', 'monthButton', 'disabled', 'selected']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"children\", \"disabled\", \"selected\", \"value\", \"tabIndex\", \"onClick\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"aria-current\", \"monthsPerRow\"];\nimport * as React from 'react';\nimport { styled, alpha, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses, unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils';\nimport { getPickersMonthUtilityClass, pickersMonthClasses } from './pickersMonthClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n selected,\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n monthButton: ['monthButton', disabled && 'disabled', selected && 'selected']\n };\n return composeClasses(slots, getPickersMonthUtilityClass, classes);\n};\nconst PickersMonthRoot = styled('div', {\n name: 'MuiPickersMonth',\n slot: 'Root',\n overridesResolver: (_, styles) => [styles.root]\n})(({\n ownerState\n}) => ({\n flexBasis: ownerState.monthsPerRow === 3 ? '33.3%' : '25%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n}));\nconst PickersMonthButton = styled('button', {\n name: 'MuiPickersMonth',\n slot: 'MonthButton',\n overridesResolver: (_, styles) => [styles.monthButton, {\n [`&.${pickersMonthClasses.disabled}`]: styles.disabled\n }, {\n [`&.${pickersMonthClasses.selected}`]: styles.selected\n }]\n})(({\n theme\n}) => _extends({\n color: 'unset',\n backgroundColor: 'transparent',\n border: 0,\n outline: 0\n}, theme.typography.subtitle1, {\n margin: '8px 0',\n height: 36,\n width: 72,\n borderRadius: 18,\n cursor: 'pointer',\n '&:focus': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)\n },\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)\n },\n '&:disabled': {\n cursor: 'auto',\n pointerEvents: 'none'\n },\n [`&.${pickersMonthClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.secondary\n },\n [`&.${pickersMonthClasses.selected}`]: {\n color: (theme.vars || theme).palette.primary.contrastText,\n backgroundColor: (theme.vars || theme).palette.primary.main,\n '&:focus, &:hover': {\n backgroundColor: (theme.vars || theme).palette.primary.dark\n }\n }\n}));\n\n/**\n * @ignore - do not document.\n */\nexport const PickersMonth = /*#__PURE__*/React.memo(function PickersMonth(inProps) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersMonth'\n });\n const {\n autoFocus,\n children,\n disabled,\n value,\n tabIndex,\n onClick,\n onKeyDown,\n onFocus,\n onBlur,\n 'aria-current': ariaCurrent\n // We don't want to forward this prop to the root element\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ref = React.useRef(null);\n const classes = useUtilityClasses(props);\n useEnhancedEffect(() => {\n if (autoFocus) {\n var _ref$current;\n (_ref$current = ref.current) == null ? void 0 : _ref$current.focus();\n }\n }, [autoFocus]);\n return /*#__PURE__*/_jsx(PickersMonthRoot, _extends({\n className: classes.root,\n ownerState: props\n }, other, {\n children: /*#__PURE__*/_jsx(PickersMonthButton, {\n ref: ref,\n disabled: disabled,\n type: \"button\",\n tabIndex: disabled ? -1 : tabIndex,\n \"aria-current\": ariaCurrent,\n onClick: event => onClick(event, value),\n onKeyDown: event => onKeyDown(event, value),\n onFocus: event => onFocus(event, value),\n onBlur: event => onBlur(event, value),\n className: classes.monthButton,\n ownerState: props,\n children: children\n })\n }));\n});","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getMonthCalendarUtilityClass(slot) {\n return generateUtilityClass('MuiMonthCalendar', slot);\n}\nexport const monthCalendarClasses = generateUtilityClasses('MuiMonthCalendar', ['root']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"value\", \"defaultValue\", \"disabled\", \"disableFuture\", \"disablePast\", \"maxDate\", \"minDate\", \"onChange\", \"shouldDisableMonth\", \"readOnly\", \"disableHighlightToday\", \"autoFocus\", \"onMonthFocus\", \"hasFocus\", \"onFocusedViewChange\", \"monthsPerRow\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { useTheme } from '@mui/system';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_useControlled as useControlled, unstable_composeClasses as composeClasses, unstable_useEventCallback as useEventCallback } from '@mui/utils';\nimport { PickersMonth } from './PickersMonth';\nimport { useUtils, useNow, useDefaultDates } from '../internals/hooks/useUtils';\nimport { getMonthCalendarUtilityClass } from './monthCalendarClasses';\nimport { applyDefaultDate, getMonthsInYear } from '../internals/utils/date-utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getMonthCalendarUtilityClass, classes);\n};\nexport function useMonthCalendarDefaultizedProps(props, name) {\n const utils = useUtils();\n const defaultDates = useDefaultDates();\n const themeProps = useThemeProps({\n props,\n name\n });\n return _extends({\n disableFuture: false,\n disablePast: false\n }, themeProps, {\n minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),\n maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate)\n });\n}\nconst MonthCalendarRoot = styled('div', {\n name: 'MuiMonthCalendar',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex',\n flexWrap: 'wrap',\n alignContent: 'stretch',\n padding: '0 4px',\n width: 320\n});\nexport const MonthCalendar = /*#__PURE__*/React.forwardRef(function MonthCalendar(inProps, ref) {\n const now = useNow();\n const theme = useTheme();\n const utils = useUtils();\n const props = useMonthCalendarDefaultizedProps(inProps, 'MuiMonthCalendar');\n const {\n className,\n value: valueProp,\n defaultValue,\n disabled,\n disableFuture,\n disablePast,\n maxDate,\n minDate,\n onChange,\n shouldDisableMonth,\n readOnly,\n disableHighlightToday,\n autoFocus = false,\n onMonthFocus,\n hasFocus,\n onFocusedViewChange,\n monthsPerRow = 3\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const [value, setValue] = useControlled({\n name: 'MonthCalendar',\n state: 'value',\n controlled: valueProp,\n default: defaultValue != null ? defaultValue : null\n });\n const todayMonth = React.useMemo(() => utils.getMonth(now), [utils, now]);\n const selectedDateOrStartOfMonth = React.useMemo(() => value != null ? value : utils.startOfMonth(now), [now, utils, value]);\n const selectedMonth = React.useMemo(() => {\n if (value != null) {\n return utils.getMonth(value);\n }\n if (disableHighlightToday) {\n return null;\n }\n return utils.getMonth(now);\n }, [now, value, utils, disableHighlightToday]);\n const [focusedMonth, setFocusedMonth] = React.useState(() => selectedMonth || todayMonth);\n const [internalHasFocus, setInternalHasFocus] = useControlled({\n name: 'MonthCalendar',\n state: 'hasFocus',\n controlled: hasFocus,\n default: autoFocus != null ? autoFocus : false\n });\n const changeHasFocus = useEventCallback(newHasFocus => {\n setInternalHasFocus(newHasFocus);\n if (onFocusedViewChange) {\n onFocusedViewChange(newHasFocus);\n }\n });\n const isMonthDisabled = React.useCallback(month => {\n const firstEnabledMonth = utils.startOfMonth(disablePast && utils.isAfter(now, minDate) ? now : minDate);\n const lastEnabledMonth = utils.startOfMonth(disableFuture && utils.isBefore(now, maxDate) ? now : maxDate);\n if (utils.isBefore(month, firstEnabledMonth)) {\n return true;\n }\n if (utils.isAfter(month, lastEnabledMonth)) {\n return true;\n }\n if (!shouldDisableMonth) {\n return false;\n }\n return shouldDisableMonth(month);\n }, [disableFuture, disablePast, maxDate, minDate, now, shouldDisableMonth, utils]);\n const handleMonthSelection = useEventCallback((event, month) => {\n if (readOnly) {\n return;\n }\n const newDate = utils.setMonth(selectedDateOrStartOfMonth, month);\n setValue(newDate);\n onChange == null ? void 0 : onChange(newDate);\n });\n const focusMonth = useEventCallback(month => {\n if (!isMonthDisabled(utils.setMonth(selectedDateOrStartOfMonth, month))) {\n setFocusedMonth(month);\n changeHasFocus(true);\n if (onMonthFocus) {\n onMonthFocus(month);\n }\n }\n });\n React.useEffect(() => {\n setFocusedMonth(prevFocusedMonth => selectedMonth !== null && prevFocusedMonth !== selectedMonth ? selectedMonth : prevFocusedMonth);\n }, [selectedMonth]);\n const handleKeyDown = useEventCallback((event, month) => {\n const monthsInYear = 12;\n const monthsInRow = 3;\n switch (event.key) {\n case 'ArrowUp':\n focusMonth((monthsInYear + month - monthsInRow) % monthsInYear);\n event.preventDefault();\n break;\n case 'ArrowDown':\n focusMonth((monthsInYear + month + monthsInRow) % monthsInYear);\n event.preventDefault();\n break;\n case 'ArrowLeft':\n focusMonth((monthsInYear + month + (theme.direction === 'ltr' ? -1 : 1)) % monthsInYear);\n event.preventDefault();\n break;\n case 'ArrowRight':\n focusMonth((monthsInYear + month + (theme.direction === 'ltr' ? 1 : -1)) % monthsInYear);\n event.preventDefault();\n break;\n default:\n break;\n }\n });\n const handleMonthFocus = useEventCallback((event, month) => {\n focusMonth(month);\n });\n const handleMonthBlur = useEventCallback((event, month) => {\n if (focusedMonth === month) {\n changeHasFocus(false);\n }\n });\n return /*#__PURE__*/_jsx(MonthCalendarRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: getMonthsInYear(utils, selectedDateOrStartOfMonth).map(month => {\n const monthNumber = utils.getMonth(month);\n const monthText = utils.format(month, 'monthShort');\n const isSelected = monthNumber === selectedMonth;\n const isDisabled = disabled || isMonthDisabled(month);\n return /*#__PURE__*/_jsx(PickersMonth, {\n selected: isSelected,\n value: monthNumber,\n onClick: handleMonthSelection,\n onKeyDown: handleKeyDown,\n autoFocus: internalHasFocus && monthNumber === focusedMonth,\n disabled: isDisabled,\n tabIndex: monthNumber === focusedMonth ? 0 : -1,\n onFocus: handleMonthFocus,\n onBlur: handleMonthBlur,\n \"aria-current\": todayMonth === monthNumber ? 'date' : undefined,\n monthsPerRow: monthsPerRow,\n children: monthText\n }, monthText);\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? MonthCalendar.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * className applied to the root element.\n */\n className: PropTypes.string,\n /**\n * The default selected value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true` picker is disabled\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n hasFocus: PropTypes.bool,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value changes.\n * @template TDate\n * @param {TDate | null} value The new value.\n */\n onChange: PropTypes.func,\n onFocusedViewChange: PropTypes.func,\n onMonthFocus: PropTypes.func,\n /**\n * If `true` picker is readonly\n */\n readOnly: PropTypes.bool,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any\n} : void 0;","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getPickersYearUtilityClass(slot) {\n return generateUtilityClass('MuiPickersYear', slot);\n}\nexport const pickersYearClasses = generateUtilityClasses('MuiPickersYear', ['root', 'yearButton', 'selected', 'disabled']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"className\", \"children\", \"disabled\", \"selected\", \"value\", \"tabIndex\", \"onClick\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"aria-current\", \"yearsPerRow\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport { alpha, styled, useThemeProps } from '@mui/material/styles';\nimport { getPickersYearUtilityClass, pickersYearClasses } from './pickersYearClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n selected,\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n yearButton: ['yearButton', disabled && 'disabled', selected && 'selected']\n };\n return composeClasses(slots, getPickersYearUtilityClass, classes);\n};\nconst PickersYearRoot = styled('div', {\n name: 'MuiPickersYear',\n slot: 'Root',\n overridesResolver: (_, styles) => [styles.root]\n})(({\n ownerState\n}) => ({\n flexBasis: ownerState.yearsPerRow === 3 ? '33.3%' : '25%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n}));\nconst PickersYearButton = styled('button', {\n name: 'MuiPickersYear',\n slot: 'YearButton',\n overridesResolver: (_, styles) => [styles.yearButton, {\n [`&.${pickersYearClasses.disabled}`]: styles.disabled\n }, {\n [`&.${pickersYearClasses.selected}`]: styles.selected\n }]\n})(({\n theme\n}) => _extends({\n color: 'unset',\n backgroundColor: 'transparent',\n border: 0,\n outline: 0\n}, theme.typography.subtitle1, {\n margin: '8px 0',\n height: 36,\n width: 72,\n borderRadius: 18,\n cursor: 'pointer',\n '&:focus': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.focusOpacity})` : alpha(theme.palette.action.active, theme.palette.action.focusOpacity)\n },\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)\n },\n '&:disabled': {\n cursor: 'auto',\n pointerEvents: 'none'\n },\n [`&.${pickersYearClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.secondary\n },\n [`&.${pickersYearClasses.selected}`]: {\n color: (theme.vars || theme).palette.primary.contrastText,\n backgroundColor: (theme.vars || theme).palette.primary.main,\n '&:focus, &:hover': {\n backgroundColor: (theme.vars || theme).palette.primary.dark\n }\n }\n}));\n\n/**\n * @ignore - internal component.\n */\nexport const PickersYear = /*#__PURE__*/React.memo(function PickersYear(inProps) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersYear'\n });\n const {\n autoFocus,\n className,\n children,\n disabled,\n value,\n tabIndex,\n onClick,\n onKeyDown,\n onFocus,\n onBlur,\n 'aria-current': ariaCurrent\n // We don't want to forward this prop to the root element\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ref = React.useRef(null);\n const classes = useUtilityClasses(props);\n\n // We can't forward the `autoFocus` to the button because it is a native button, not a MUI Button\n React.useEffect(() => {\n if (autoFocus) {\n // `ref.current` being `null` would be a bug in MUI.\n ref.current.focus();\n }\n }, [autoFocus]);\n return /*#__PURE__*/_jsx(PickersYearRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: props\n }, other, {\n children: /*#__PURE__*/_jsx(PickersYearButton, {\n ref: ref,\n disabled: disabled,\n type: \"button\",\n tabIndex: disabled ? -1 : tabIndex,\n \"aria-current\": ariaCurrent,\n onClick: event => onClick(event, value),\n onKeyDown: event => onKeyDown(event, value),\n onFocus: event => onFocus(event, value),\n onBlur: event => onBlur(event, value),\n className: classes.yearButton,\n ownerState: props,\n children: children\n })\n }));\n});","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getYearCalendarUtilityClass(slot) {\n return generateUtilityClass('MuiYearCalendar', slot);\n}\nexport const yearCalendarClasses = generateUtilityClasses('MuiYearCalendar', ['root']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"className\", \"value\", \"defaultValue\", \"disabled\", \"disableFuture\", \"disablePast\", \"maxDate\", \"minDate\", \"onChange\", \"readOnly\", \"shouldDisableYear\", \"disableHighlightToday\", \"onYearFocus\", \"hasFocus\", \"onFocusedViewChange\", \"yearsPerRow\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { useTheme } from '@mui/system';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_useForkRef as useForkRef, unstable_composeClasses as composeClasses, unstable_useControlled as useControlled, unstable_useEventCallback as useEventCallback } from '@mui/utils';\nimport { PickersYear } from './PickersYear';\nimport { useUtils, useNow, useDefaultDates } from '../internals/hooks/useUtils';\nimport { getYearCalendarUtilityClass } from './yearCalendarClasses';\nimport { applyDefaultDate } from '../internals/utils/date-utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getYearCalendarUtilityClass, classes);\n};\nfunction useYearCalendarDefaultizedProps(props, name) {\n const utils = useUtils();\n const defaultDates = useDefaultDates();\n const themeProps = useThemeProps({\n props,\n name\n });\n return _extends({\n disablePast: false,\n disableFuture: false\n }, themeProps, {\n minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),\n maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate)\n });\n}\nconst YearCalendarRoot = styled('div', {\n name: 'MuiYearCalendar',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n overflowY: 'auto',\n height: '100%',\n padding: '0 4px',\n width: 320,\n maxHeight: 304\n});\nexport const YearCalendar = /*#__PURE__*/React.forwardRef(function YearCalendar(inProps, ref) {\n const now = useNow();\n const theme = useTheme();\n const utils = useUtils();\n const props = useYearCalendarDefaultizedProps(inProps, 'MuiYearCalendar');\n const {\n autoFocus,\n className,\n value: valueProp,\n defaultValue,\n disabled,\n disableFuture,\n disablePast,\n maxDate,\n minDate,\n onChange,\n readOnly,\n shouldDisableYear,\n disableHighlightToday,\n onYearFocus,\n hasFocus,\n onFocusedViewChange,\n yearsPerRow = 3\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const [value, setValue] = useControlled({\n name: 'YearCalendar',\n state: 'value',\n controlled: valueProp,\n default: defaultValue != null ? defaultValue : null\n });\n const selectedDateOrStartOfYear = React.useMemo(() => value != null ? value : utils.startOfYear(now), [now, utils, value]);\n const todayYear = React.useMemo(() => utils.getYear(now), [utils, now]);\n const selectedYear = React.useMemo(() => {\n if (value != null) {\n return utils.getYear(value);\n }\n if (disableHighlightToday) {\n return null;\n }\n return utils.getYear(now);\n }, [now, value, utils, disableHighlightToday]);\n const [focusedYear, setFocusedYear] = React.useState(() => selectedYear || todayYear);\n const [internalHasFocus, setInternalHasFocus] = useControlled({\n name: 'YearCalendar',\n state: 'hasFocus',\n controlled: hasFocus,\n default: autoFocus != null ? autoFocus : false\n });\n const changeHasFocus = useEventCallback(newHasFocus => {\n setInternalHasFocus(newHasFocus);\n if (onFocusedViewChange) {\n onFocusedViewChange(newHasFocus);\n }\n });\n const isYearDisabled = React.useCallback(dateToValidate => {\n if (disablePast && utils.isBeforeYear(dateToValidate, now)) {\n return true;\n }\n if (disableFuture && utils.isAfterYear(dateToValidate, now)) {\n return true;\n }\n if (minDate && utils.isBeforeYear(dateToValidate, minDate)) {\n return true;\n }\n if (maxDate && utils.isAfterYear(dateToValidate, maxDate)) {\n return true;\n }\n if (shouldDisableYear && shouldDisableYear(dateToValidate)) {\n return true;\n }\n return false;\n }, [disableFuture, disablePast, maxDate, minDate, now, shouldDisableYear, utils]);\n const handleYearSelection = useEventCallback((event, year) => {\n if (readOnly) {\n return;\n }\n const newDate = utils.setYear(selectedDateOrStartOfYear, year);\n setValue(newDate);\n onChange == null ? void 0 : onChange(newDate);\n });\n const focusYear = useEventCallback(year => {\n if (!isYearDisabled(utils.setYear(selectedDateOrStartOfYear, year))) {\n setFocusedYear(year);\n changeHasFocus(true);\n onYearFocus == null ? void 0 : onYearFocus(year);\n }\n });\n React.useEffect(() => {\n setFocusedYear(prevFocusedYear => selectedYear !== null && prevFocusedYear !== selectedYear ? selectedYear : prevFocusedYear);\n }, [selectedYear]);\n const handleKeyDown = useEventCallback((event, year) => {\n switch (event.key) {\n case 'ArrowUp':\n focusYear(year - yearsPerRow);\n event.preventDefault();\n break;\n case 'ArrowDown':\n focusYear(year + yearsPerRow);\n event.preventDefault();\n break;\n case 'ArrowLeft':\n focusYear(year + (theme.direction === 'ltr' ? -1 : 1));\n event.preventDefault();\n break;\n case 'ArrowRight':\n focusYear(year + (theme.direction === 'ltr' ? 1 : -1));\n event.preventDefault();\n break;\n default:\n break;\n }\n });\n const handleYearFocus = useEventCallback((event, year) => {\n focusYear(year);\n });\n const handleYearBlur = useEventCallback((event, year) => {\n if (focusedYear === year) {\n changeHasFocus(false);\n }\n });\n const scrollerRef = React.useRef(null);\n const handleRef = useForkRef(ref, scrollerRef);\n React.useEffect(() => {\n if (autoFocus || scrollerRef.current === null) {\n return;\n }\n const tabbableButton = scrollerRef.current.querySelector('[tabindex=\"0\"]');\n if (!tabbableButton) {\n return;\n }\n\n // Taken from useScroll in x-data-grid, but vertically centered\n const offsetHeight = tabbableButton.offsetHeight;\n const offsetTop = tabbableButton.offsetTop;\n const clientHeight = scrollerRef.current.clientHeight;\n const scrollTop = scrollerRef.current.scrollTop;\n const elementBottom = offsetTop + offsetHeight;\n if (offsetHeight > clientHeight || offsetTop < scrollTop) {\n // Button already visible\n return;\n }\n scrollerRef.current.scrollTop = elementBottom - clientHeight / 2 - offsetHeight / 2;\n }, [autoFocus]);\n return /*#__PURE__*/_jsx(YearCalendarRoot, _extends({\n ref: handleRef,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: utils.getYearRange(minDate, maxDate).map(year => {\n const yearNumber = utils.getYear(year);\n const isSelected = yearNumber === selectedYear;\n const isDisabled = disabled || isYearDisabled(year);\n return /*#__PURE__*/_jsx(PickersYear, {\n selected: isSelected,\n value: yearNumber,\n onClick: handleYearSelection,\n onKeyDown: handleKeyDown,\n autoFocus: internalHasFocus && yearNumber === focusedYear,\n disabled: isDisabled,\n tabIndex: yearNumber === focusedYear ? 0 : -1,\n onFocus: handleYearFocus,\n onBlur: handleYearBlur,\n \"aria-current\": todayYear === yearNumber ? 'date' : undefined,\n yearsPerRow: yearsPerRow,\n children: utils.format(year, 'year')\n }, utils.format(year, 'year'));\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? YearCalendar.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * className applied to the root element.\n */\n className: PropTypes.string,\n /**\n * The default selected value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true` picker is disabled\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n hasFocus: PropTypes.bool,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Callback fired when the value changes.\n * @template TDate\n * @param {TDate | null} value The new value.\n */\n onChange: PropTypes.func,\n onFocusedViewChange: PropTypes.func,\n onYearFocus: PropTypes.func,\n /**\n * If `true` picker is readonly\n */\n readOnly: PropTypes.bool,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * Years rendered per row.\n * @default 3\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n} : void 0;","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport function getPickersArrowSwitcherUtilityClass(slot) {\n return generateUtilityClass('MuiPickersArrowSwitcher', slot);\n}\nexport const pickersArrowSwitcherClasses = generateUtilityClasses('MuiPickersArrowSwitcher', ['root', 'spacer', 'button']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"slots\", \"slotProps\", \"isNextDisabled\", \"isNextHidden\", \"onGoToNext\", \"nextLabel\", \"isPreviousDisabled\", \"isPreviousHidden\", \"onGoToPrevious\", \"previousLabel\"],\n _excluded2 = [\"ownerState\"],\n _excluded3 = [\"ownerState\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport Typography from '@mui/material/Typography';\nimport { useTheme, styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport { useSlotProps } from '@mui/base/utils';\nimport IconButton from '@mui/material/IconButton';\nimport { ArrowLeftIcon, ArrowRightIcon } from '../../../icons';\nimport { getPickersArrowSwitcherUtilityClass } from './pickersArrowSwitcherClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst PickersArrowSwitcherRoot = styled('div', {\n name: 'MuiPickersArrowSwitcher',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex'\n});\nconst PickersArrowSwitcherSpacer = styled('div', {\n name: 'MuiPickersArrowSwitcher',\n slot: 'Spacer',\n overridesResolver: (props, styles) => styles.spacer\n})(({\n theme\n}) => ({\n width: theme.spacing(3)\n}));\nconst PickersArrowSwitcherButton = styled(IconButton, {\n name: 'MuiPickersArrowSwitcher',\n slot: 'Button',\n overridesResolver: (props, styles) => styles.button\n})(({\n ownerState\n}) => _extends({}, ownerState.hidden && {\n visibility: 'hidden'\n}));\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n spacer: ['spacer'],\n button: ['button']\n };\n return composeClasses(slots, getPickersArrowSwitcherUtilityClass, classes);\n};\nexport const PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function PickersArrowSwitcher(inProps, ref) {\n var _slots$previousIconBu, _slots$nextIconButton, _slots$leftArrowIcon, _slots$rightArrowIcon;\n const theme = useTheme();\n const isRTL = theme.direction === 'rtl';\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersArrowSwitcher'\n });\n const {\n children,\n className,\n slots,\n slotProps,\n isNextDisabled,\n isNextHidden,\n onGoToNext,\n nextLabel,\n isPreviousDisabled,\n isPreviousHidden,\n onGoToPrevious,\n previousLabel\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const nextProps = {\n isDisabled: isNextDisabled,\n isHidden: isNextHidden,\n goTo: onGoToNext,\n label: nextLabel\n };\n const previousProps = {\n isDisabled: isPreviousDisabled,\n isHidden: isPreviousHidden,\n goTo: onGoToPrevious,\n label: previousLabel\n };\n const [leftProps, rightProps] = isRTL ? [nextProps, previousProps] : [previousProps, nextProps];\n const PreviousIconButton = (_slots$previousIconBu = slots == null ? void 0 : slots.previousIconButton) != null ? _slots$previousIconBu : PickersArrowSwitcherButton;\n const previousIconButtonProps = useSlotProps({\n elementType: PreviousIconButton,\n externalSlotProps: slotProps == null ? void 0 : slotProps.previousIconButton,\n additionalProps: {\n size: 'medium',\n title: leftProps.label,\n 'aria-label': leftProps.label,\n disabled: leftProps.isDisabled,\n edge: 'end',\n onClick: leftProps.goTo\n },\n ownerState: _extends({}, ownerState, {\n hidden: leftProps.isHidden\n }),\n className: classes.button\n });\n const NextIconButton = (_slots$nextIconButton = slots == null ? void 0 : slots.nextIconButton) != null ? _slots$nextIconButton : PickersArrowSwitcherButton;\n const nextIconButtonProps = useSlotProps({\n elementType: NextIconButton,\n externalSlotProps: slotProps == null ? void 0 : slotProps.nextIconButton,\n additionalProps: {\n size: 'medium',\n title: rightProps.label,\n 'aria-label': rightProps.label,\n disabled: rightProps.isDisabled,\n edge: 'start',\n onClick: rightProps.goTo\n },\n ownerState: _extends({}, ownerState, {\n hidden: rightProps.isHidden\n }),\n className: classes.button\n });\n const LeftArrowIcon = (_slots$leftArrowIcon = slots == null ? void 0 : slots.leftArrowIcon) != null ? _slots$leftArrowIcon : ArrowLeftIcon;\n // The spread is here to avoid this bug mui/material-ui#34056\n const _useSlotProps = useSlotProps({\n elementType: LeftArrowIcon,\n externalSlotProps: slotProps == null ? void 0 : slotProps.leftArrowIcon,\n additionalProps: {\n fontSize: 'inherit'\n },\n ownerState: undefined\n }),\n leftArrowIconProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);\n const RightArrowIcon = (_slots$rightArrowIcon = slots == null ? void 0 : slots.rightArrowIcon) != null ? _slots$rightArrowIcon : ArrowRightIcon;\n // The spread is here to avoid this bug mui/material-ui#34056\n const _useSlotProps2 = useSlotProps({\n elementType: RightArrowIcon,\n externalSlotProps: slotProps == null ? void 0 : slotProps.rightArrowIcon,\n additionalProps: {\n fontSize: 'inherit'\n },\n ownerState: undefined\n }),\n rightArrowIconProps = _objectWithoutPropertiesLoose(_useSlotProps2, _excluded3);\n return /*#__PURE__*/_jsxs(PickersArrowSwitcherRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: [/*#__PURE__*/_jsx(PreviousIconButton, _extends({}, previousIconButtonProps, {\n children: isRTL ? /*#__PURE__*/_jsx(RightArrowIcon, _extends({}, rightArrowIconProps)) : /*#__PURE__*/_jsx(LeftArrowIcon, _extends({}, leftArrowIconProps))\n })), children ? /*#__PURE__*/_jsx(Typography, {\n variant: \"subtitle1\",\n component: \"span\",\n children: children\n }) : /*#__PURE__*/_jsx(PickersArrowSwitcherSpacer, {\n className: classes.spacer,\n ownerState: ownerState\n }), /*#__PURE__*/_jsx(NextIconButton, _extends({}, nextIconButtonProps, {\n children: isRTL ? /*#__PURE__*/_jsx(LeftArrowIcon, _extends({}, leftArrowIconProps)) : /*#__PURE__*/_jsx(RightArrowIcon, _extends({}, rightArrowIconProps))\n }))]\n }));\n});","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getPickersCalendarHeaderUtilityClass = slot => generateUtilityClass('MuiPickersCalendarHeader', slot);\nexport const pickersCalendarHeaderClasses = generateUtilityClasses('MuiPickersCalendarHeader', ['root', 'labelContainer', 'label', 'switchViewButton', 'switchViewIcon']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"ownerState\"];\nimport * as React from 'react';\nimport Fade from '@mui/material/Fade';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { useSlotProps } from '@mui/base/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/utils';\nimport IconButton from '@mui/material/IconButton';\nimport { useLocaleText, useUtils } from '../internals/hooks/useUtils';\nimport { PickersFadeTransitionGroup } from './PickersFadeTransitionGroup';\nimport { ArrowDropDownIcon } from '../icons';\nimport { PickersArrowSwitcher } from '../internals/components/PickersArrowSwitcher';\nimport { usePreviousMonthDisabled, useNextMonthDisabled } from '../internals/hooks/date-helpers-hooks';\nimport { getPickersCalendarHeaderUtilityClass, pickersCalendarHeaderClasses } from './pickersCalendarHeaderClasses';\n\n// We keep the interface to allow module augmentation\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n labelContainer: ['labelContainer'],\n label: ['label'],\n switchViewButton: ['switchViewButton'],\n switchViewIcon: ['switchViewIcon']\n };\n return composeClasses(slots, getPickersCalendarHeaderUtilityClass, classes);\n};\nconst PickersCalendarHeaderRoot = styled('div', {\n name: 'MuiPickersCalendarHeader',\n slot: 'Root',\n overridesResolver: (_, styles) => styles.root\n})({\n display: 'flex',\n alignItems: 'center',\n marginTop: 16,\n marginBottom: 8,\n paddingLeft: 24,\n paddingRight: 12,\n // prevent jumping in safari\n maxHeight: 30,\n minHeight: 30\n});\nconst PickersCalendarHeaderLabelContainer = styled('div', {\n name: 'MuiPickersCalendarHeader',\n slot: 'LabelContainer',\n overridesResolver: (_, styles) => styles.labelContainer\n})(({\n theme\n}) => _extends({\n display: 'flex',\n overflow: 'hidden',\n alignItems: 'center',\n cursor: 'pointer',\n marginRight: 'auto'\n}, theme.typography.body1, {\n fontWeight: theme.typography.fontWeightMedium\n}));\nconst PickersCalendarHeaderLabel = styled('div', {\n name: 'MuiPickersCalendarHeader',\n slot: 'Label',\n overridesResolver: (_, styles) => styles.label\n})({\n marginRight: 6\n});\nconst PickersCalendarHeaderSwitchViewButton = styled(IconButton, {\n name: 'MuiPickersCalendarHeader',\n slot: 'SwitchViewButton',\n overridesResolver: (_, styles) => styles.switchViewButton\n})(({\n ownerState\n}) => _extends({\n marginRight: 'auto'\n}, ownerState.view === 'year' && {\n [`.${pickersCalendarHeaderClasses.switchViewIcon}`]: {\n transform: 'rotate(180deg)'\n }\n}));\nconst PickersCalendarHeaderSwitchViewIcon = styled(ArrowDropDownIcon, {\n name: 'MuiPickersCalendarHeader',\n slot: 'SwitchViewIcon',\n overridesResolver: (_, styles) => styles.switchViewIcon\n})(({\n theme\n}) => ({\n willChange: 'transform',\n transition: theme.transitions.create('transform'),\n transform: 'rotate(0deg)'\n}));\n\n/**\n * @ignore - do not document.\n */\nexport function PickersCalendarHeader(inProps) {\n var _slots$switchViewButt, _slots$switchViewIcon;\n const localeText = useLocaleText();\n const utils = useUtils();\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPickersCalendarHeader'\n });\n const {\n slots,\n slotProps,\n currentMonth: month,\n disabled,\n disableFuture,\n disablePast,\n maxDate,\n minDate,\n onMonthChange,\n onViewChange,\n view,\n reduceAnimations,\n views,\n labelId\n } = props;\n const ownerState = props;\n const classes = useUtilityClasses(props);\n const SwitchViewButton = (_slots$switchViewButt = slots == null ? void 0 : slots.switchViewButton) != null ? _slots$switchViewButt : PickersCalendarHeaderSwitchViewButton;\n const switchViewButtonProps = useSlotProps({\n elementType: SwitchViewButton,\n externalSlotProps: slotProps == null ? void 0 : slotProps.switchViewButton,\n additionalProps: {\n size: 'small',\n 'aria-label': localeText.calendarViewSwitchingButtonAriaLabel(view)\n },\n ownerState,\n className: classes.switchViewButton\n });\n const SwitchViewIcon = (_slots$switchViewIcon = slots == null ? void 0 : slots.switchViewIcon) != null ? _slots$switchViewIcon : PickersCalendarHeaderSwitchViewIcon;\n // The spread is here to avoid this bug mui/material-ui#34056\n const _useSlotProps = useSlotProps({\n elementType: SwitchViewIcon,\n externalSlotProps: slotProps == null ? void 0 : slotProps.switchViewIcon,\n ownerState: undefined,\n className: classes.switchViewIcon\n }),\n switchViewIconProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded);\n const selectNextMonth = () => onMonthChange(utils.addMonths(month, 1), 'left');\n const selectPreviousMonth = () => onMonthChange(utils.addMonths(month, -1), 'right');\n const isNextMonthDisabled = useNextMonthDisabled(month, {\n disableFuture,\n maxDate\n });\n const isPreviousMonthDisabled = usePreviousMonthDisabled(month, {\n disablePast,\n minDate\n });\n const handleToggleView = () => {\n if (views.length === 1 || !onViewChange || disabled) {\n return;\n }\n if (views.length === 2) {\n onViewChange(views.find(el => el !== view) || views[0]);\n } else {\n // switching only between first 2\n const nextIndexToOpen = views.indexOf(view) !== 0 ? 0 : 1;\n onViewChange(views[nextIndexToOpen]);\n }\n };\n\n // No need to display more information\n if (views.length === 1 && views[0] === 'year') {\n return null;\n }\n return /*#__PURE__*/_jsxs(PickersCalendarHeaderRoot, {\n ownerState: ownerState,\n className: classes.root,\n children: [/*#__PURE__*/_jsxs(PickersCalendarHeaderLabelContainer, {\n role: \"presentation\",\n onClick: handleToggleView,\n ownerState: ownerState\n // putting this on the label item element below breaks when using transition\n ,\n \"aria-live\": \"polite\",\n className: classes.labelContainer,\n children: [/*#__PURE__*/_jsx(PickersFadeTransitionGroup, {\n reduceAnimations: reduceAnimations,\n transKey: utils.format(month, 'monthAndYear'),\n children: /*#__PURE__*/_jsx(PickersCalendarHeaderLabel, {\n id: labelId,\n ownerState: ownerState,\n className: classes.label,\n children: utils.format(month, 'monthAndYear')\n })\n }), views.length > 1 && !disabled && /*#__PURE__*/_jsx(SwitchViewButton, _extends({}, switchViewButtonProps, {\n children: /*#__PURE__*/_jsx(SwitchViewIcon, _extends({}, switchViewIconProps))\n }))]\n }), /*#__PURE__*/_jsx(Fade, {\n in: view === 'day',\n children: /*#__PURE__*/_jsx(PickersArrowSwitcher, {\n slots: slots,\n slotProps: slotProps,\n onGoToPrevious: selectPreviousMonth,\n isPreviousDisabled: isPreviousMonthDisabled,\n previousLabel: localeText.previousMonth,\n onGoToNext: selectNextMonth,\n isNextDisabled: isNextMonthDisabled,\n nextLabel: localeText.nextMonth\n })\n })]\n });\n}","import * as React from 'react';\nimport { useUtils } from './useUtils';\nimport { getMeridiem, convertToMeridiem } from '../utils/time-utils';\nexport function useNextMonthDisabled(month, {\n disableFuture,\n maxDate\n}) {\n const utils = useUtils();\n return React.useMemo(() => {\n const now = utils.date();\n const lastEnabledMonth = utils.startOfMonth(disableFuture && utils.isBefore(now, maxDate) ? now : maxDate);\n return !utils.isAfter(lastEnabledMonth, month);\n }, [disableFuture, maxDate, month, utils]);\n}\nexport function usePreviousMonthDisabled(month, {\n disablePast,\n minDate\n}) {\n const utils = useUtils();\n return React.useMemo(() => {\n const now = utils.date();\n const firstEnabledMonth = utils.startOfMonth(disablePast && utils.isAfter(now, minDate) ? now : minDate);\n return !utils.isBefore(firstEnabledMonth, month);\n }, [disablePast, minDate, month, utils]);\n}\nexport function useMeridiemMode(date, ampm, onChange, selectionState) {\n const utils = useUtils();\n const meridiemMode = getMeridiem(date, utils);\n const handleMeridiemChange = React.useCallback(mode => {\n const timeWithMeridiem = date == null ? null : convertToMeridiem(date, mode, Boolean(ampm), utils);\n onChange(timeWithMeridiem, selectionState != null ? selectionState : 'partial');\n }, [ampm, date, onChange, selectionState, utils]);\n return {\n meridiemMode,\n handleMeridiemChange\n };\n}","import { styled } from '@mui/material/styles';\nimport { DIALOG_WIDTH, VIEW_HEIGHT } from '../../constants/dimensions';\nexport const PickerViewRoot = styled('div')({\n overflow: 'hidden',\n width: DIALOG_WIDTH,\n maxHeight: VIEW_HEIGHT,\n display: 'flex',\n flexDirection: 'column',\n margin: '0 auto'\n});","export const defaultReduceAnimations = typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent);","import { unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nexport const getDateCalendarUtilityClass = slot => generateUtilityClass('MuiDateCalendar', slot);\nexport const dateCalendarClasses = generateUtilityClasses('MuiDateCalendar', ['root', 'viewTransitionContainer']);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"onViewChange\", \"value\", \"defaultValue\", \"disableFuture\", \"disablePast\", \"defaultCalendarMonth\", \"onChange\", \"onYearChange\", \"onMonthChange\", \"reduceAnimations\", \"shouldDisableDate\", \"shouldDisableMonth\", \"shouldDisableYear\", \"view\", \"views\", \"openTo\", \"className\", \"disabled\", \"readOnly\", \"minDate\", \"maxDate\", \"disableHighlightToday\", \"focusedView\", \"onFocusedViewChange\", \"showDaysOutsideCurrentMonth\", \"fixedWeekNumber\", \"dayOfWeekFormatter\", \"components\", \"componentsProps\", \"slots\", \"slotProps\", \"loading\", \"renderLoading\", \"displayWeekNumber\", \"yearsPerRow\", \"monthsPerRow\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses, unstable_useId as useId, unstable_useEventCallback as useEventCallback, unstable_useControlled as useControlled } from '@mui/utils';\nimport { useCalendarState } from './useCalendarState';\nimport { useDefaultDates, useUtils } from '../internals/hooks/useUtils';\nimport { PickersFadeTransitionGroup } from './PickersFadeTransitionGroup';\nimport { DayCalendar } from './DayCalendar';\nimport { MonthCalendar } from '../MonthCalendar';\nimport { YearCalendar } from '../YearCalendar';\nimport { useViews } from '../internals/hooks/useViews';\nimport { PickersCalendarHeader } from './PickersCalendarHeader';\nimport { findClosestEnabledDate, applyDefaultDate, mergeDateAndTime } from '../internals/utils/date-utils';\nimport { PickerViewRoot } from '../internals/components/PickerViewRoot';\nimport { defaultReduceAnimations } from '../internals/utils/defaultReduceAnimations';\nimport { getDateCalendarUtilityClass } from './dateCalendarClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n viewTransitionContainer: ['viewTransitionContainer']\n };\n return composeClasses(slots, getDateCalendarUtilityClass, classes);\n};\nfunction useDateCalendarDefaultizedProps(props, name) {\n const utils = useUtils();\n const defaultDates = useDefaultDates();\n const themeProps = useThemeProps({\n props,\n name\n });\n return _extends({\n loading: false,\n disablePast: false,\n disableFuture: false,\n openTo: 'day',\n views: ['year', 'day'],\n reduceAnimations: defaultReduceAnimations,\n renderLoading: () => /*#__PURE__*/_jsx(\"span\", {\n children: \"...\"\n })\n }, themeProps, {\n minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),\n maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate)\n });\n}\nconst DateCalendarRoot = styled(PickerViewRoot, {\n name: 'MuiDateCalendar',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'flex',\n flexDirection: 'column'\n});\nconst DateCalendarViewTransitionContainer = styled(PickersFadeTransitionGroup, {\n name: 'MuiDateCalendar',\n slot: 'ViewTransitionContainer',\n overridesResolver: (props, styles) => styles.viewTransitionContainer\n})({});\n/**\n *\n * Demos:\n *\n * - [Date Picker](https://mui.com/x/react-date-pickers/date-picker/)\n *\n * API:\n *\n * - [DateCalendar API](https://mui.com/x/api/date-pickers/date-calendar/)\n */\nexport const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(inProps, ref) {\n const utils = useUtils();\n const id = useId();\n const props = useDateCalendarDefaultizedProps(inProps, 'MuiDateCalendar');\n const {\n autoFocus,\n onViewChange,\n value: valueProp,\n defaultValue,\n disableFuture,\n disablePast,\n defaultCalendarMonth,\n onChange,\n onYearChange,\n onMonthChange,\n reduceAnimations,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n view: inView,\n views,\n openTo,\n className,\n disabled,\n readOnly,\n minDate,\n maxDate,\n disableHighlightToday,\n focusedView: inFocusedView,\n onFocusedViewChange,\n showDaysOutsideCurrentMonth,\n fixedWeekNumber,\n dayOfWeekFormatter,\n components,\n componentsProps,\n slots,\n slotProps,\n loading,\n renderLoading,\n displayWeekNumber,\n yearsPerRow,\n monthsPerRow\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [value, setValue] = useControlled({\n name: 'DateCalendar',\n state: 'value',\n controlled: valueProp,\n default: defaultValue != null ? defaultValue : null\n });\n const handleValueChange = useEventCallback((newValue, selectionState) => {\n setValue(newValue);\n onChange == null ? void 0 : onChange(newValue, selectionState);\n });\n const {\n view,\n setView,\n focusedView,\n setFocusedView,\n goToNextView,\n setValueAndGoToNextView\n } = useViews({\n view: inView,\n views,\n openTo,\n onChange: handleValueChange,\n onViewChange,\n autoFocus,\n focusedView: inFocusedView,\n onFocusedViewChange\n });\n const {\n calendarState,\n changeFocusedDay,\n changeMonth,\n handleChangeMonth,\n isDateDisabled,\n onMonthSwitchingAnimationEnd\n } = useCalendarState({\n value,\n defaultCalendarMonth,\n reduceAnimations,\n onMonthChange,\n minDate,\n maxDate,\n shouldDisableDate,\n disablePast,\n disableFuture\n });\n const handleDateMonthChange = useEventCallback(newDate => {\n const startOfMonth = utils.startOfMonth(newDate);\n const endOfMonth = utils.endOfMonth(newDate);\n const closestEnabledDate = isDateDisabled(newDate) ? findClosestEnabledDate({\n utils,\n date: newDate,\n minDate: utils.isBefore(minDate, startOfMonth) ? startOfMonth : minDate,\n maxDate: utils.isAfter(maxDate, endOfMonth) ? endOfMonth : maxDate,\n disablePast,\n disableFuture,\n isDateDisabled\n }) : newDate;\n if (closestEnabledDate) {\n setValueAndGoToNextView(closestEnabledDate, 'finish');\n onMonthChange == null ? void 0 : onMonthChange(startOfMonth);\n } else {\n goToNextView();\n changeMonth(startOfMonth);\n }\n changeFocusedDay(closestEnabledDate, true);\n });\n const handleDateYearChange = useEventCallback(newDate => {\n const startOfYear = utils.startOfYear(newDate);\n const endOfYear = utils.endOfYear(newDate);\n const closestEnabledDate = isDateDisabled(newDate) ? findClosestEnabledDate({\n utils,\n date: newDate,\n minDate: utils.isBefore(minDate, startOfYear) ? startOfYear : minDate,\n maxDate: utils.isAfter(maxDate, endOfYear) ? endOfYear : maxDate,\n disablePast,\n disableFuture,\n isDateDisabled\n }) : newDate;\n if (closestEnabledDate) {\n setValueAndGoToNextView(closestEnabledDate, 'finish');\n onYearChange == null ? void 0 : onYearChange(closestEnabledDate);\n } else {\n goToNextView();\n changeMonth(startOfYear);\n }\n changeFocusedDay(closestEnabledDate, true);\n });\n const handleSelectedDayChange = useEventCallback(day => {\n if (value && day) {\n // If there is a date already selected, then we want to keep its time\n return handleValueChange(mergeDateAndTime(utils, day, value), 'finish');\n }\n return handleValueChange(day, 'finish');\n });\n React.useEffect(() => {\n if (value != null && utils.isValid(value)) {\n changeMonth(value);\n }\n }, [value]); // eslint-disable-line\n\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n const baseDateValidationProps = {\n disablePast,\n disableFuture,\n maxDate,\n minDate\n };\n\n // When disabled, limit the view to the selected date\n const minDateWithDisabled = disabled && value || minDate;\n const maxDateWithDisabled = disabled && value || maxDate;\n const commonViewProps = {\n disableHighlightToday,\n readOnly,\n disabled\n };\n const gridLabelId = `${id}-grid-label`;\n const hasFocus = focusedView !== null;\n const prevOpenViewRef = React.useRef(view);\n React.useEffect(() => {\n // If the view change and the focus was on the previous view\n // Then we update the focus.\n if (prevOpenViewRef.current === view) {\n return;\n }\n if (focusedView === prevOpenViewRef.current) {\n setFocusedView(view, true);\n }\n prevOpenViewRef.current = view;\n }, [focusedView, setFocusedView, view]);\n const selectedDays = React.useMemo(() => [value], [value]);\n return /*#__PURE__*/_jsxs(DateCalendarRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other, {\n children: [/*#__PURE__*/_jsx(PickersCalendarHeader, {\n views: views,\n view: view,\n currentMonth: calendarState.currentMonth,\n onViewChange: setView,\n onMonthChange: (newMonth, direction) => handleChangeMonth({\n newMonth,\n direction\n }),\n minDate: minDateWithDisabled,\n maxDate: maxDateWithDisabled,\n disabled: disabled,\n disablePast: disablePast,\n disableFuture: disableFuture,\n reduceAnimations: reduceAnimations,\n labelId: gridLabelId,\n slots: slots,\n slotProps: slotProps\n }), /*#__PURE__*/_jsx(DateCalendarViewTransitionContainer, {\n reduceAnimations: reduceAnimations,\n className: classes.viewTransitionContainer,\n transKey: view,\n ownerState: ownerState,\n children: /*#__PURE__*/_jsxs(\"div\", {\n children: [view === 'year' && /*#__PURE__*/_jsx(YearCalendar, _extends({}, baseDateValidationProps, commonViewProps, {\n value: value,\n onChange: handleDateYearChange,\n shouldDisableYear: shouldDisableYear,\n hasFocus: hasFocus,\n onFocusedViewChange: isViewFocused => setFocusedView('year', isViewFocused),\n yearsPerRow: yearsPerRow\n })), view === 'month' && /*#__PURE__*/_jsx(MonthCalendar, _extends({}, baseDateValidationProps, commonViewProps, {\n hasFocus: hasFocus,\n className: className,\n value: value,\n onChange: handleDateMonthChange,\n shouldDisableMonth: shouldDisableMonth,\n onFocusedViewChange: isViewFocused => setFocusedView('month', isViewFocused),\n monthsPerRow: monthsPerRow\n })), view === 'day' && /*#__PURE__*/_jsx(DayCalendar, _extends({}, calendarState, baseDateValidationProps, commonViewProps, {\n onMonthSwitchingAnimationEnd: onMonthSwitchingAnimationEnd,\n onFocusedDayChange: changeFocusedDay,\n reduceAnimations: reduceAnimations,\n selectedDays: selectedDays,\n onSelectedDaysChange: handleSelectedDayChange,\n shouldDisableDate: shouldDisableDate,\n shouldDisableMonth: shouldDisableMonth,\n shouldDisableYear: shouldDisableYear,\n hasFocus: hasFocus,\n onFocusedViewChange: isViewFocused => setFocusedView('day', isViewFocused),\n gridLabelId: gridLabelId,\n showDaysOutsideCurrentMonth: showDaysOutsideCurrentMonth,\n fixedWeekNumber: fixedWeekNumber,\n dayOfWeekFormatter: dayOfWeekFormatter,\n displayWeekNumber: displayWeekNumber,\n components: components,\n componentsProps: componentsProps,\n slots: slots,\n slotProps: slotProps,\n loading: loading,\n renderLoading: renderLoading\n }))]\n })\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? DateCalendar.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n classes: PropTypes.object,\n className: PropTypes.string,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default selected value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Controlled focused view.\n */\n focusedView: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value changes.\n * @template TDate\n * @param {TDate | null} value The new value.\n * @param {PickerSelectionState | undefined} selectionState Indicates if the date selection is complete.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired on focused view change.\n * @template TView\n * @param {TView} view The new view to focus or not.\n * @param {boolean} hasFocus `true` if the view should be focused.\n */\n onFocusedViewChange: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Make picker read only.\n * @default false\n */\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 3\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n} : void 0;","import * as React from 'react';\nimport { DateCalendar } from '../DateCalendar';\nimport { isDatePickerView } from '../internals/utils/date-utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const renderDateViewCalendar = ({\n view,\n onViewChange,\n views,\n focusedView,\n onFocusedViewChange,\n value,\n defaultValue,\n onChange,\n className,\n classes,\n disableFuture,\n disablePast,\n minDate,\n maxDate,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n reduceAnimations,\n onMonthChange,\n monthsPerRow,\n onYearChange,\n yearsPerRow,\n defaultCalendarMonth,\n components,\n componentsProps,\n slots,\n slotProps,\n loading,\n renderLoading,\n disableHighlightToday,\n readOnly,\n disabled,\n showDaysOutsideCurrentMonth,\n dayOfWeekFormatter,\n sx,\n autoFocus,\n fixedWeekNumber,\n displayWeekNumber\n}) => /*#__PURE__*/_jsx(DateCalendar, {\n view: view,\n onViewChange: onViewChange,\n views: views.filter(isDatePickerView),\n focusedView: focusedView && isDatePickerView(focusedView) ? focusedView : null,\n onFocusedViewChange: onFocusedViewChange,\n value: value,\n defaultValue: defaultValue,\n onChange: onChange,\n className: className,\n classes: classes,\n disableFuture: disableFuture,\n disablePast: disablePast,\n minDate: minDate,\n maxDate: maxDate,\n shouldDisableDate: shouldDisableDate,\n shouldDisableMonth: shouldDisableMonth,\n shouldDisableYear: shouldDisableYear,\n reduceAnimations: reduceAnimations,\n onMonthChange: onMonthChange,\n monthsPerRow: monthsPerRow,\n onYearChange: onYearChange,\n yearsPerRow: yearsPerRow,\n defaultCalendarMonth: defaultCalendarMonth,\n components: components,\n componentsProps: componentsProps,\n slots: slots,\n slotProps: slotProps,\n loading: loading,\n renderLoading: renderLoading,\n disableHighlightToday: disableHighlightToday,\n readOnly: readOnly,\n disabled: disabled,\n showDaysOutsideCurrentMonth: showDaysOutsideCurrentMonth,\n dayOfWeekFormatter: dayOfWeekFormatter,\n sx: sx,\n autoFocus: autoFocus,\n fixedWeekNumber: fixedWeekNumber,\n displayWeekNumber: displayWeekNumber\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { resolveComponentProps } from '@mui/base/utils';\nimport { singleItemValueManager } from '../internals/utils/valueManagers';\nimport { useDatePickerDefaultizedProps } from '../DatePicker/shared';\nimport { useLocaleText, useUtils, validateDate } from '../internals';\nimport { useDesktopPicker } from '../internals/hooks/useDesktopPicker';\nimport { CalendarIcon } from '../icons';\nimport { DateField } from '../DateField';\nimport { extractValidationProps } from '../internals/utils/validation/extractValidationProps';\nimport { renderDateViewCalendar } from '../dateViewRenderers';\nimport { resolveDateFormat } from '../internals/utils/date-utils';\nconst DesktopDatePicker = /*#__PURE__*/React.forwardRef(function DesktopDatePicker(inProps, ref) {\n var _defaultizedProps$yea, _defaultizedProps$slo2;\n const localeText = useLocaleText();\n const utils = useUtils();\n\n // Props with the default values common to all date pickers\n const defaultizedProps = useDatePickerDefaultizedProps(inProps, 'MuiDesktopDatePicker');\n const viewRenderers = _extends({\n day: renderDateViewCalendar,\n month: renderDateViewCalendar,\n year: renderDateViewCalendar\n }, defaultizedProps.viewRenderers);\n\n // Props with the default values specific to the desktop variant\n const props = _extends({}, defaultizedProps, {\n viewRenderers,\n format: resolveDateFormat(utils, defaultizedProps, false),\n yearsPerRow: (_defaultizedProps$yea = defaultizedProps.yearsPerRow) != null ? _defaultizedProps$yea : 4,\n slots: _extends({\n openPickerIcon: CalendarIcon,\n field: DateField\n }, defaultizedProps.slots),\n slotProps: _extends({}, defaultizedProps.slotProps, {\n field: ownerState => {\n var _defaultizedProps$slo;\n return _extends({}, resolveComponentProps((_defaultizedProps$slo = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo.field, ownerState), extractValidationProps(defaultizedProps), {\n ref\n });\n },\n toolbar: _extends({\n hidden: true\n }, (_defaultizedProps$slo2 = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo2.toolbar)\n })\n });\n const {\n renderPicker\n } = useDesktopPicker({\n props,\n valueManager: singleItemValueManager,\n valueType: 'date',\n getOpenDialogAriaText: localeText.openDatePickerDialogue,\n validator: validateDate\n });\n return renderPicker();\n});\nDesktopDatePicker.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n /**\n * Class name applied to the root element.\n */\n className: PropTypes.string,\n /**\n * If `true`, the popover or modal will close after submitting the full date.\n * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).\n */\n closeOnSelect: PropTypes.bool,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, the open picker button will not be rendered (renders only the field).\n * @default false\n */\n disableOpenPicker: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Format of the date when rendered in the input(s).\n * Defaults to localized format based on the used `views`.\n */\n format: PropTypes.string,\n /**\n * Density of the format when rendered in the input.\n * Setting `formatDensity` to `\"spacious\"` will add a space before and after each `/`, `-` and `.` character.\n * @default \"dense\"\n */\n formatDensity: PropTypes.oneOf(['dense', 'spacious']),\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n current: PropTypes.object\n })]),\n /**\n * The label content.\n */\n label: PropTypes.node,\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Locale for components texts.\n * Allows overriding texts coming from `LocalizationProvider` and `theme`.\n */\n localeText: PropTypes.object,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value is accepted.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The value that was just accepted.\n */\n onAccept: PropTypes.func,\n /**\n * Callback fired when the value changes.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The new value.\n * @param {FieldChangeHandlerContext} context The context containing the validation result of the current value.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see `open`).\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the error associated to the current value changes.\n * If the error has a non-null value, then the `TextField` will be rendered in `error` state.\n *\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TError} error The new error describing why the current value is not valid.\n * @param {TValue} value The value associated to the error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see `open`).\n */\n onOpen: PropTypes.func,\n /**\n * Callback fired when the selected sections change.\n * @param {FieldSelectedSections} newValue The new selected sections.\n */\n onSelectedSectionsChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * Control the popup or dialog open state.\n * @default false\n */\n open: PropTypes.bool,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Force rendering in particular orientation.\n */\n orientation: PropTypes.oneOf(['landscape', 'portrait']),\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * The currently selected sections.\n * This prop accept four formats:\n * 1. If a number is provided, the section at this index will be selected.\n * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.\n * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.\n * 4. If `null` is provided, no section will be selected\n * If not provided, the selected sections will be handled internally.\n */\n selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({\n endIndex: PropTypes.number.isRequired,\n startIndex: PropTypes.number.isRequired\n })]),\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Define custom view renderers for each section.\n * If `null`, the section will only have field editing.\n * If `undefined`, internally defined view will be the used.\n */\n viewRenderers: PropTypes.shape({\n day: PropTypes.func,\n month: PropTypes.func,\n year: PropTypes.func\n }),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 4\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n};\nexport { DesktopDatePicker };","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getDialogContentUtilityClass(slot) {\n return generateUtilityClass('MuiDialogContent', slot);\n}\nconst dialogContentClasses = generateUtilityClasses('MuiDialogContent', ['root', 'dividers']);\nexport default dialogContentClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getDialogTitleUtilityClass(slot) {\n return generateUtilityClass('MuiDialogTitle', slot);\n}\nconst dialogTitleClasses = generateUtilityClasses('MuiDialogTitle', ['root']);\nexport default dialogTitleClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"dividers\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getDialogContentUtilityClass } from './dialogContentClasses';\nimport dialogTitleClasses from '../DialogTitle/dialogTitleClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n dividers\n } = ownerState;\n const slots = {\n root: ['root', dividers && 'dividers']\n };\n return composeClasses(slots, getDialogContentUtilityClass, classes);\n};\nconst DialogContentRoot = styled('div', {\n name: 'MuiDialogContent',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.dividers && styles.dividers];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n flex: '1 1 auto',\n // Add iOS momentum scrolling for iOS < 13.0\n WebkitOverflowScrolling: 'touch',\n overflowY: 'auto',\n padding: '20px 24px'\n}, ownerState.dividers ? {\n padding: '16px 24px',\n borderTop: `1px solid ${(theme.vars || theme).palette.divider}`,\n borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`\n} : {\n [`.${dialogTitleClasses.root} + &`]: {\n paddingTop: 0\n }\n}));\nconst DialogContent = /*#__PURE__*/React.forwardRef(function DialogContent(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDialogContent'\n });\n const {\n className,\n dividers = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n dividers\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(DialogContentRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? DialogContent.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * Display the top and bottom dividers.\n * @default false\n */\n dividers: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default DialogContent;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getDialogUtilityClass(slot) {\n return generateUtilityClass('MuiDialog', slot);\n}\nconst dialogClasses = generateUtilityClasses('MuiDialog', ['root', 'scrollPaper', 'scrollBody', 'container', 'paper', 'paperScrollPaper', 'paperScrollBody', 'paperWidthFalse', 'paperWidthXs', 'paperWidthSm', 'paperWidthMd', 'paperWidthLg', 'paperWidthXl', 'paperFullWidth', 'paperFullScreen']);\nexport default dialogClasses;","import * as React from 'react';\nconst DialogContext = /*#__PURE__*/React.createContext({});\nif (process.env.NODE_ENV !== 'production') {\n DialogContext.displayName = 'DialogContext';\n}\nexport default DialogContext;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"aria-describedby\", \"aria-labelledby\", \"BackdropComponent\", \"BackdropProps\", \"children\", \"className\", \"disableEscapeKeyDown\", \"fullScreen\", \"fullWidth\", \"maxWidth\", \"onBackdropClick\", \"onClose\", \"open\", \"PaperComponent\", \"PaperProps\", \"scroll\", \"TransitionComponent\", \"transitionDuration\", \"TransitionProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { unstable_useId as useId } from '@mui/utils';\nimport capitalize from '../utils/capitalize';\nimport Modal from '../Modal';\nimport Fade from '../Fade';\nimport Paper from '../Paper';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport dialogClasses, { getDialogUtilityClass } from './dialogClasses';\nimport DialogContext from './DialogContext';\nimport Backdrop from '../Backdrop';\nimport useTheme from '../styles/useTheme';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DialogBackdrop = styled(Backdrop, {\n name: 'MuiDialog',\n slot: 'Backdrop',\n overrides: (props, styles) => styles.backdrop\n})({\n // Improve scrollable dialog support.\n zIndex: -1\n});\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n scroll,\n maxWidth,\n fullWidth,\n fullScreen\n } = ownerState;\n const slots = {\n root: ['root'],\n container: ['container', `scroll${capitalize(scroll)}`],\n paper: ['paper', `paperScroll${capitalize(scroll)}`, `paperWidth${capitalize(String(maxWidth))}`, fullWidth && 'paperFullWidth', fullScreen && 'paperFullScreen']\n };\n return composeClasses(slots, getDialogUtilityClass, classes);\n};\nconst DialogRoot = styled(Modal, {\n name: 'MuiDialog',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n '@media print': {\n // Use !important to override the Modal inline-style.\n position: 'absolute !important'\n }\n});\nconst DialogContainer = styled('div', {\n name: 'MuiDialog',\n slot: 'Container',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.container, styles[`scroll${capitalize(ownerState.scroll)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n height: '100%',\n '@media print': {\n height: 'auto'\n },\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0\n}, ownerState.scroll === 'paper' && {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n}, ownerState.scroll === 'body' && {\n overflowY: 'auto',\n overflowX: 'hidden',\n textAlign: 'center',\n '&:after': {\n content: '\"\"',\n display: 'inline-block',\n verticalAlign: 'middle',\n height: '100%',\n width: '0'\n }\n}));\nconst DialogPaper = styled(Paper, {\n name: 'MuiDialog',\n slot: 'Paper',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.paper, styles[`scrollPaper${capitalize(ownerState.scroll)}`], styles[`paperWidth${capitalize(String(ownerState.maxWidth))}`], ownerState.fullWidth && styles.paperFullWidth, ownerState.fullScreen && styles.paperFullScreen];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n margin: 32,\n position: 'relative',\n overflowY: 'auto',\n // Fix IE11 issue, to remove at some point.\n '@media print': {\n overflowY: 'visible',\n boxShadow: 'none'\n }\n}, ownerState.scroll === 'paper' && {\n display: 'flex',\n flexDirection: 'column',\n maxHeight: 'calc(100% - 64px)'\n}, ownerState.scroll === 'body' && {\n display: 'inline-block',\n verticalAlign: 'middle',\n textAlign: 'left' // 'initial' doesn't work on IE11\n}, !ownerState.maxWidth && {\n maxWidth: 'calc(100% - 64px)'\n}, ownerState.maxWidth === 'xs' && {\n maxWidth: theme.breakpoints.unit === 'px' ? Math.max(theme.breakpoints.values.xs, 444) : `max(${theme.breakpoints.values.xs}${theme.breakpoints.unit}, 444px)`,\n [`&.${dialogClasses.paperScrollBody}`]: {\n [theme.breakpoints.down(Math.max(theme.breakpoints.values.xs, 444) + 32 * 2)]: {\n maxWidth: 'calc(100% - 64px)'\n }\n }\n}, ownerState.maxWidth && ownerState.maxWidth !== 'xs' && {\n maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`,\n [`&.${dialogClasses.paperScrollBody}`]: {\n [theme.breakpoints.down(theme.breakpoints.values[ownerState.maxWidth] + 32 * 2)]: {\n maxWidth: 'calc(100% - 64px)'\n }\n }\n}, ownerState.fullWidth && {\n width: 'calc(100% - 64px)'\n}, ownerState.fullScreen && {\n margin: 0,\n width: '100%',\n maxWidth: '100%',\n height: '100%',\n maxHeight: 'none',\n borderRadius: 0,\n [`&.${dialogClasses.paperScrollBody}`]: {\n margin: 0,\n maxWidth: '100%'\n }\n}));\n\n/**\n * Dialogs are overlaid modal paper based components with a backdrop.\n */\nconst Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDialog'\n });\n const theme = useTheme();\n const defaultTransitionDuration = {\n enter: theme.transitions.duration.enteringScreen,\n exit: theme.transitions.duration.leavingScreen\n };\n const {\n 'aria-describedby': ariaDescribedby,\n 'aria-labelledby': ariaLabelledbyProp,\n BackdropComponent,\n BackdropProps,\n children,\n className,\n disableEscapeKeyDown = false,\n fullScreen = false,\n fullWidth = false,\n maxWidth = 'sm',\n onBackdropClick,\n onClose,\n open,\n PaperComponent = Paper,\n PaperProps = {},\n scroll = 'paper',\n TransitionComponent = Fade,\n transitionDuration = defaultTransitionDuration,\n TransitionProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n disableEscapeKeyDown,\n fullScreen,\n fullWidth,\n maxWidth,\n scroll\n });\n const classes = useUtilityClasses(ownerState);\n const backdropClick = React.useRef();\n const handleMouseDown = event => {\n // We don't want to close the dialog when clicking the dialog content.\n // Make sure the event starts and ends on the same DOM element.\n backdropClick.current = event.target === event.currentTarget;\n };\n const handleBackdropClick = event => {\n // Ignore the events not coming from the \"backdrop\".\n if (!backdropClick.current) {\n return;\n }\n backdropClick.current = null;\n if (onBackdropClick) {\n onBackdropClick(event);\n }\n if (onClose) {\n onClose(event, 'backdropClick');\n }\n };\n const ariaLabelledby = useId(ariaLabelledbyProp);\n const dialogContextValue = React.useMemo(() => {\n return {\n titleId: ariaLabelledby\n };\n }, [ariaLabelledby]);\n return /*#__PURE__*/_jsx(DialogRoot, _extends({\n className: clsx(classes.root, className),\n closeAfterTransition: true,\n components: {\n Backdrop: DialogBackdrop\n },\n componentsProps: {\n backdrop: _extends({\n transitionDuration,\n as: BackdropComponent\n }, BackdropProps)\n },\n disableEscapeKeyDown: disableEscapeKeyDown,\n onClose: onClose,\n open: open,\n ref: ref,\n onClick: handleBackdropClick,\n ownerState: ownerState\n }, other, {\n children: /*#__PURE__*/_jsx(TransitionComponent, _extends({\n appear: true,\n in: open,\n timeout: transitionDuration,\n role: \"presentation\"\n }, TransitionProps, {\n children: /*#__PURE__*/_jsx(DialogContainer, {\n className: clsx(classes.container),\n onMouseDown: handleMouseDown,\n ownerState: ownerState,\n children: /*#__PURE__*/_jsx(DialogPaper, _extends({\n as: PaperComponent,\n elevation: 24,\n role: \"dialog\",\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby\n }, PaperProps, {\n className: clsx(classes.paper, PaperProps.className),\n ownerState: ownerState,\n children: /*#__PURE__*/_jsx(DialogContext.Provider, {\n value: dialogContextValue,\n children: children\n })\n }))\n })\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Dialog.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The id(s) of the element(s) that describe the dialog.\n */\n 'aria-describedby': PropTypes.string,\n /**\n * The id(s) of the element(s) that label the dialog.\n */\n 'aria-labelledby': PropTypes.string,\n /**\n * A backdrop component. This prop enables custom backdrop rendering.\n * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.\n * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.\n * @default styled(Backdrop, {\n * name: 'MuiModal',\n * slot: 'Backdrop',\n * overridesResolver: (props, styles) => {\n * return styles.backdrop;\n * },\n * })({\n * zIndex: -1,\n * })\n */\n BackdropComponent: PropTypes.elementType,\n /**\n * @ignore\n */\n BackdropProps: PropTypes.object,\n /**\n * Dialog children, usually the included sub-components.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, hitting escape will not fire the `onClose` callback.\n * @default false\n */\n disableEscapeKeyDown: PropTypes.bool,\n /**\n * If `true`, the dialog is full-screen.\n * @default false\n */\n fullScreen: PropTypes.bool,\n /**\n * If `true`, the dialog stretches to `maxWidth`.\n *\n * Notice that the dialog width grow is limited by the default margin.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * Determine the max-width of the dialog.\n * The dialog width grows with the size of the screen.\n * Set to `false` to disable `maxWidth`.\n * @default 'sm'\n */\n maxWidth: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]), PropTypes.string]),\n /**\n * Callback fired when the backdrop is clicked.\n * @deprecated Use the `onClose` prop with the `reason` argument to handle the `backdropClick` events.\n */\n onBackdropClick: PropTypes.func,\n /**\n * Callback fired when the component requests to be closed.\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`.\n */\n onClose: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * The component used to render the body of the dialog.\n * @default Paper\n */\n PaperComponent: PropTypes.elementType,\n /**\n * Props applied to the [`Paper`](/material-ui/api/paper/) element.\n * @default {}\n */\n PaperProps: PropTypes.object,\n /**\n * Determine the container for scrolling the dialog.\n * @default 'paper'\n */\n scroll: PropTypes.oneOf(['body', 'paper']),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The component used for the transition.\n * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n * @default Fade\n */\n TransitionComponent: PropTypes.elementType,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n * @default {\n * enter: theme.transitions.duration.enteringScreen,\n * exit: theme.transitions.duration.leavingScreen,\n * }\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n */\n TransitionProps: PropTypes.object\n} : void 0;\nexport default Dialog;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport DialogContent from '@mui/material/DialogContent';\nimport Fade from '@mui/material/Fade';\nimport MuiDialog, { dialogClasses } from '@mui/material/Dialog';\nimport { styled } from '@mui/material/styles';\nimport { DIALOG_WIDTH } from '../constants/dimensions';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst PickersModalDialogRoot = styled(MuiDialog)({\n [`& .${dialogClasses.container}`]: {\n outline: 0\n },\n [`& .${dialogClasses.paper}`]: {\n outline: 0,\n minWidth: DIALOG_WIDTH\n }\n});\nconst PickersModalDialogContent = styled(DialogContent)({\n '&:first-of-type': {\n padding: 0\n }\n});\nexport function PickersModalDialog(props) {\n var _slots$dialog, _slots$mobileTransiti;\n const {\n children,\n onDismiss,\n open,\n slots,\n slotProps\n } = props;\n const Dialog = (_slots$dialog = slots == null ? void 0 : slots.dialog) != null ? _slots$dialog : PickersModalDialogRoot;\n const Transition = (_slots$mobileTransiti = slots == null ? void 0 : slots.mobileTransition) != null ? _slots$mobileTransiti : Fade;\n return /*#__PURE__*/_jsx(Dialog, _extends({\n open: open,\n onClose: onDismiss\n }, slotProps == null ? void 0 : slotProps.dialog, {\n TransitionComponent: Transition,\n TransitionProps: slotProps == null ? void 0 : slotProps.mobileTransition,\n PaperComponent: slots == null ? void 0 : slots.mobilePaper,\n PaperProps: slotProps == null ? void 0 : slotProps.mobilePaper,\n children: /*#__PURE__*/_jsx(PickersModalDialogContent, {\n children: children\n })\n }));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"props\", \"getOpenDialogAriaText\"];\nimport * as React from 'react';\nimport { useSlotProps } from '@mui/base/utils';\nimport useForkRef from '@mui/utils/useForkRef';\nimport useId from '@mui/utils/useId';\nimport { PickersModalDialog } from '../../components/PickersModalDialog';\nimport { usePicker } from '../usePicker';\nimport { onSpaceOrEnter } from '../../utils/utils';\nimport { useUtils } from '../useUtils';\nimport { LocalizationProvider } from '../../../LocalizationProvider';\nimport { PickersLayout } from '../../../PickersLayout';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n/**\n * Hook managing all the single-date mobile pickers:\n * - MobileDatePicker\n * - MobileDateTimePicker\n * - MobileTimePicker\n */\nexport const useMobilePicker = _ref => {\n var _innerSlotProps$toolb, _innerSlotProps$toolb2, _slots$layout;\n let {\n props,\n getOpenDialogAriaText\n } = _ref,\n pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);\n const {\n slots,\n slotProps: innerSlotProps,\n className,\n sx,\n format,\n formatDensity,\n label,\n inputRef,\n readOnly,\n disabled,\n localeText\n } = props;\n const utils = useUtils();\n const internalInputRef = React.useRef(null);\n const labelId = useId();\n const isToolbarHidden = (_innerSlotProps$toolb = innerSlotProps == null ? void 0 : (_innerSlotProps$toolb2 = innerSlotProps.toolbar) == null ? void 0 : _innerSlotProps$toolb2.hidden) != null ? _innerSlotProps$toolb : false;\n const {\n open,\n actions,\n layoutProps,\n renderCurrentView,\n fieldProps: pickerFieldProps\n } = usePicker(_extends({}, pickerParams, {\n props,\n inputRef: internalInputRef,\n autoFocusView: true,\n additionalViewProps: {},\n wrapperVariant: 'mobile'\n }));\n const Field = slots.field;\n const fieldProps = useSlotProps({\n elementType: Field,\n externalSlotProps: innerSlotProps == null ? void 0 : innerSlotProps.field,\n additionalProps: _extends({}, pickerFieldProps, isToolbarHidden && {\n id: labelId\n }, !(disabled || readOnly) && {\n onClick: actions.onOpen,\n onKeyDown: onSpaceOrEnter(actions.onOpen)\n }, {\n readOnly: readOnly != null ? readOnly : true,\n disabled,\n className,\n sx,\n format,\n formatDensity,\n label\n }),\n ownerState: props\n });\n\n // TODO: Move to `useSlotProps` when https://github.com/mui/material-ui/pull/35088 will be merged\n fieldProps.inputProps = _extends({}, fieldProps.inputProps, {\n 'aria-label': getOpenDialogAriaText(pickerFieldProps.value, utils)\n });\n const slotsForField = _extends({\n textField: slots.textField\n }, fieldProps.slots);\n const Layout = (_slots$layout = slots.layout) != null ? _slots$layout : PickersLayout;\n const handleInputRef = useForkRef(internalInputRef, fieldProps.inputRef, inputRef);\n let labelledById = labelId;\n if (isToolbarHidden) {\n if (label) {\n labelledById = `${labelId}-label`;\n } else {\n labelledById = undefined;\n }\n }\n const slotProps = _extends({}, innerSlotProps, {\n toolbar: _extends({}, innerSlotProps == null ? void 0 : innerSlotProps.toolbar, {\n titleId: labelId\n }),\n mobilePaper: _extends({\n 'aria-labelledby': labelledById\n }, innerSlotProps == null ? void 0 : innerSlotProps.mobilePaper)\n });\n const renderPicker = () => /*#__PURE__*/_jsxs(LocalizationProvider, {\n localeText: localeText,\n children: [/*#__PURE__*/_jsx(Field, _extends({}, fieldProps, {\n slots: slotsForField,\n slotProps: slotProps,\n inputRef: handleInputRef\n })), /*#__PURE__*/_jsx(PickersModalDialog, _extends({}, actions, {\n open: open,\n slots: slots,\n slotProps: slotProps,\n children: /*#__PURE__*/_jsx(Layout, _extends({}, layoutProps, slotProps == null ? void 0 : slotProps.layout, {\n slots: slots,\n slotProps: slotProps,\n children: renderCurrentView()\n }))\n }))]\n });\n return {\n renderPicker\n };\n};","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { resolveComponentProps } from '@mui/base/utils';\nimport { useMobilePicker } from '../internals/hooks/useMobilePicker';\nimport { useDatePickerDefaultizedProps } from '../DatePicker/shared';\nimport { useLocaleText, useUtils, validateDate } from '../internals';\nimport { DateField } from '../DateField';\nimport { extractValidationProps } from '../internals/utils/validation/extractValidationProps';\nimport { singleItemValueManager } from '../internals/utils/valueManagers';\nimport { renderDateViewCalendar } from '../dateViewRenderers';\nimport { resolveDateFormat } from '../internals/utils/date-utils';\nconst MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker(inProps, ref) {\n var _defaultizedProps$slo2;\n const localeText = useLocaleText();\n const utils = useUtils();\n\n // Props with the default values common to all date pickers\n const defaultizedProps = useDatePickerDefaultizedProps(inProps, 'MuiMobileDatePicker');\n const viewRenderers = _extends({\n day: renderDateViewCalendar,\n month: renderDateViewCalendar,\n year: renderDateViewCalendar\n }, defaultizedProps.viewRenderers);\n\n // Props with the default values specific to the mobile variant\n const props = _extends({}, defaultizedProps, {\n viewRenderers,\n format: resolveDateFormat(utils, defaultizedProps, false),\n slots: _extends({\n field: DateField\n }, defaultizedProps.slots),\n slotProps: _extends({}, defaultizedProps.slotProps, {\n field: ownerState => {\n var _defaultizedProps$slo;\n return _extends({}, resolveComponentProps((_defaultizedProps$slo = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo.field, ownerState), extractValidationProps(defaultizedProps), {\n ref\n });\n },\n toolbar: _extends({\n hidden: false\n }, (_defaultizedProps$slo2 = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo2.toolbar)\n })\n });\n const {\n renderPicker\n } = useMobilePicker({\n props,\n valueManager: singleItemValueManager,\n valueType: 'date',\n getOpenDialogAriaText: localeText.openDatePickerDialogue,\n validator: validateDate\n });\n return renderPicker();\n});\nMobileDatePicker.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n /**\n * Class name applied to the root element.\n */\n className: PropTypes.string,\n /**\n * If `true`, the popover or modal will close after submitting the full date.\n * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).\n */\n closeOnSelect: PropTypes.bool,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, the open picker button will not be rendered (renders only the field).\n * @default false\n */\n disableOpenPicker: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Format of the date when rendered in the input(s).\n * Defaults to localized format based on the used `views`.\n */\n format: PropTypes.string,\n /**\n * Density of the format when rendered in the input.\n * Setting `formatDensity` to `\"spacious\"` will add a space before and after each `/`, `-` and `.` character.\n * @default \"dense\"\n */\n formatDensity: PropTypes.oneOf(['dense', 'spacious']),\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n current: PropTypes.object\n })]),\n /**\n * The label content.\n */\n label: PropTypes.node,\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Locale for components texts.\n * Allows overriding texts coming from `LocalizationProvider` and `theme`.\n */\n localeText: PropTypes.object,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value is accepted.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The value that was just accepted.\n */\n onAccept: PropTypes.func,\n /**\n * Callback fired when the value changes.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The new value.\n * @param {FieldChangeHandlerContext} context The context containing the validation result of the current value.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see `open`).\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the error associated to the current value changes.\n * If the error has a non-null value, then the `TextField` will be rendered in `error` state.\n *\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TError} error The new error describing why the current value is not valid.\n * @param {TValue} value The value associated to the error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see `open`).\n */\n onOpen: PropTypes.func,\n /**\n * Callback fired when the selected sections change.\n * @param {FieldSelectedSections} newValue The new selected sections.\n */\n onSelectedSectionsChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * Control the popup or dialog open state.\n * @default false\n */\n open: PropTypes.bool,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Force rendering in particular orientation.\n */\n orientation: PropTypes.oneOf(['landscape', 'portrait']),\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * The currently selected sections.\n * This prop accept four formats:\n * 1. If a number is provided, the section at this index will be selected.\n * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.\n * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.\n * 4. If `null` is provided, no section will be selected\n * If not provided, the selected sections will be handled internally.\n */\n selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({\n endIndex: PropTypes.number.isRequired,\n startIndex: PropTypes.number.isRequired\n })]),\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Define custom view renderers for each section.\n * If `null`, the section will only have field editing.\n * If `undefined`, internally defined view will be the used.\n */\n viewRenderers: PropTypes.shape({\n day: PropTypes.func,\n month: PropTypes.func,\n year: PropTypes.func\n }),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 3\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n};\nexport { MobileDatePicker };","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"desktopModeMediaQuery\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport useMediaQuery from '@mui/material/useMediaQuery';\nimport { useThemeProps } from '@mui/material/styles';\nimport { DesktopDatePicker } from '../DesktopDatePicker';\nimport { MobileDatePicker } from '../MobileDatePicker';\nimport { DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from '../internals/utils/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DatePicker = /*#__PURE__*/React.forwardRef(function DatePicker(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiDatePicker'\n });\n const {\n desktopModeMediaQuery = DEFAULT_DESKTOP_MODE_MEDIA_QUERY\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n\n // defaults to `true` in environments where `window.matchMedia` would not be available (i.e. test/jsdom)\n const isDesktop = useMediaQuery(desktopModeMediaQuery, {\n defaultMatches: true\n });\n if (isDesktop) {\n return /*#__PURE__*/_jsx(DesktopDatePicker, _extends({\n ref: ref\n }, other));\n }\n return /*#__PURE__*/_jsx(MobileDatePicker, _extends({\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? DatePicker.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the main element is focused during the first mount.\n * This main element is:\n * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).\n * - the `input` element if there is a field rendered.\n */\n autoFocus: PropTypes.bool,\n /**\n * Class name applied to the root element.\n */\n className: PropTypes.string,\n /**\n * If `true`, the popover or modal will close after submitting the full date.\n * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).\n */\n closeOnSelect: PropTypes.bool,\n /**\n * Overridable components.\n * @default {}\n * @deprecated Please use `slots`.\n */\n components: PropTypes.object,\n /**\n * The props used for each component slot.\n * @default {}\n * @deprecated Please use `slotProps`.\n */\n componentsProps: PropTypes.object,\n /**\n * Formats the day of week displayed in the calendar header.\n * @param {string} day The day of week provided by the adapter's method `getWeekdays`.\n * @returns {string} The name to display.\n * @default (day) => day.charAt(0).toUpperCase()\n */\n dayOfWeekFormatter: PropTypes.func,\n /**\n * Default calendar month displayed when `value={null}`.\n */\n defaultCalendarMonth: PropTypes.any,\n /**\n * The default value.\n * Used when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * CSS media query when `Mobile` mode will be changed to `Desktop`.\n * @default '@media (pointer: fine)'\n * @example '@media (min-width: 720px)' or theme.breakpoints.up(\"sm\")\n */\n desktopModeMediaQuery: PropTypes.string,\n /**\n * If `true`, the picker and text field are disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, disable values after the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disableFuture: PropTypes.bool,\n /**\n * If `true`, today's date is rendering without highlighting with circle.\n * @default false\n */\n disableHighlightToday: PropTypes.bool,\n /**\n * If `true`, the open picker button will not be rendered (renders only the field).\n * @default false\n */\n disableOpenPicker: PropTypes.bool,\n /**\n * If `true`, disable values before the current date for date components, time for time components and both for date time components.\n * @default false\n */\n disablePast: PropTypes.bool,\n /**\n * If `true`, the week number will be display in the calendar.\n */\n displayWeekNumber: PropTypes.bool,\n /**\n * Calendar will show more weeks in order to match this value.\n * Put it to 6 for having fix number of week in Gregorian calendars\n * @default undefined\n */\n fixedWeekNumber: PropTypes.number,\n /**\n * Format of the date when rendered in the input(s).\n * Defaults to localized format based on the used `views`.\n */\n format: PropTypes.string,\n /**\n * Density of the format when rendered in the input.\n * Setting `formatDensity` to `\"spacious\"` will add a space before and after each `/`, `-` and `.` character.\n * @default \"dense\"\n */\n formatDensity: PropTypes.oneOf(['dense', 'spacious']),\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n current: PropTypes.object\n })]),\n /**\n * The label content.\n */\n label: PropTypes.node,\n /**\n * If `true`, calls `renderLoading` instead of rendering the day calendar.\n * Can be used to preload information and show it in calendar.\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Locale for components texts.\n * Allows overriding texts coming from `LocalizationProvider` and `theme`.\n */\n localeText: PropTypes.object,\n /**\n * Maximal selectable date.\n */\n maxDate: PropTypes.any,\n /**\n * Minimal selectable date.\n */\n minDate: PropTypes.any,\n /**\n * Months rendered per row.\n * @default 3\n */\n monthsPerRow: PropTypes.oneOf([3, 4]),\n /**\n * Callback fired when the value is accepted.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The value that was just accepted.\n */\n onAccept: PropTypes.func,\n /**\n * Callback fired when the value changes.\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TValue} value The new value.\n * @param {FieldChangeHandlerContext} context The context containing the validation result of the current value.\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see `open`).\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the error associated to the current value changes.\n * If the error has a non-null value, then the `TextField` will be rendered in `error` state.\n *\n * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.\n * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.\n * @param {TError} error The new error describing why the current value is not valid.\n * @param {TValue} value The value associated to the error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired on month change.\n * @template TDate\n * @param {TDate} month The new month.\n */\n onMonthChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see `open`).\n */\n onOpen: PropTypes.func,\n /**\n * Callback fired when the selected sections change.\n * @param {FieldSelectedSections} newValue The new selected sections.\n */\n onSelectedSectionsChange: PropTypes.func,\n /**\n * Callback fired on view change.\n * @template TView\n * @param {TView} view The new view.\n */\n onViewChange: PropTypes.func,\n /**\n * Callback fired on year change.\n * @template TDate\n * @param {TDate} year The new year.\n */\n onYearChange: PropTypes.func,\n /**\n * Control the popup or dialog open state.\n * @default false\n */\n open: PropTypes.bool,\n /**\n * The default visible view.\n * Used when the component view is not controlled.\n * Must be a valid option from `views` list.\n */\n openTo: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Force rendering in particular orientation.\n */\n orientation: PropTypes.oneOf(['landscape', 'portrait']),\n readOnly: PropTypes.bool,\n /**\n * Disable heavy animations.\n * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)\n */\n reduceAnimations: PropTypes.bool,\n /**\n * Component displaying when passed `loading` true.\n * @returns {React.ReactNode} The node to render when loading.\n * @default () => ...\n */\n renderLoading: PropTypes.func,\n /**\n * The currently selected sections.\n * This prop accept four formats:\n * 1. If a number is provided, the section at this index will be selected.\n * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.\n * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.\n * 4. If `null` is provided, no section will be selected\n * If not provided, the selected sections will be handled internally.\n */\n selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({\n endIndex: PropTypes.number.isRequired,\n startIndex: PropTypes.number.isRequired\n })]),\n /**\n * Disable specific date.\n * @template TDate\n * @param {TDate} day The date to test.\n * @returns {boolean} If `true` the date will be disabled.\n */\n shouldDisableDate: PropTypes.func,\n /**\n * Disable specific month.\n * @template TDate\n * @param {TDate} month The month to test.\n * @returns {boolean} If `true`, the month will be disabled.\n */\n shouldDisableMonth: PropTypes.func,\n /**\n * Disable specific year.\n * @template TDate\n * @param {TDate} year The year to test.\n * @returns {boolean} If `true`, the year will be disabled.\n */\n shouldDisableYear: PropTypes.func,\n /**\n * If `true`, days outside the current month are rendered:\n *\n * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.\n *\n * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.\n *\n * - ignored if `calendars` equals more than `1` on range pickers.\n * @default false\n */\n showDaysOutsideCurrentMonth: PropTypes.bool,\n /**\n * The props used for each component slot.\n * @default {}\n */\n slotProps: PropTypes.object,\n /**\n * Overridable component slots.\n * @default {}\n */\n slots: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The selected value.\n * Used when the component is controlled.\n */\n value: PropTypes.any,\n /**\n * The visible view.\n * Used when the component view is controlled.\n * Must be a valid option from `views` list.\n */\n view: PropTypes.oneOf(['day', 'month', 'year']),\n /**\n * Define custom view renderers for each section.\n * If `null`, the section will only have field editing.\n * If `undefined`, internally defined view will be the used.\n */\n viewRenderers: PropTypes.shape({\n day: PropTypes.func,\n month: PropTypes.func,\n year: PropTypes.func\n }),\n /**\n * Available views.\n */\n views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),\n /**\n * Years rendered per row.\n * @default 4 on desktop, 3 on mobile\n */\n yearsPerRow: PropTypes.oneOf([3, 4])\n} : void 0;\nexport { DatePicker };","import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable class-methods-use-this */\nimport defaultDayjs from 'dayjs';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport customParseFormatPlugin from 'dayjs/plugin/customParseFormat';\nimport localizedFormatPlugin from 'dayjs/plugin/localizedFormat';\nimport isBetweenPlugin from 'dayjs/plugin/isBetween';\nimport { buildWarning } from '../internals/utils/warning';\ndefaultDayjs.extend(customParseFormatPlugin);\ndefaultDayjs.extend(localizedFormatPlugin);\ndefaultDayjs.extend(isBetweenPlugin);\nconst localeNotFoundWarning = buildWarning(['Your locale has not been found.', 'Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale', \"Or you forget to import the locale with `require('dayjs/locale/{localeUsed}')`\", 'fallback on English locale']);\nconst formatTokenMap = {\n // Year\n YY: 'year',\n YYYY: {\n sectionType: 'year',\n contentType: 'digit',\n maxLength: 4\n },\n // Month\n M: {\n sectionType: 'month',\n contentType: 'digit',\n maxLength: 2\n },\n MM: 'month',\n MMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n MMMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n // Day of the month\n D: {\n sectionType: 'day',\n contentType: 'digit',\n maxLength: 2\n },\n DD: 'day',\n Do: {\n sectionType: 'day',\n contentType: 'digit-with-letter'\n },\n // Day of the week\n d: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 2\n },\n dd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n ddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n dddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n // Meridiem\n A: 'meridiem',\n a: 'meridiem',\n // Hours\n H: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n HH: 'hours',\n h: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n hh: 'hours',\n // Minutes\n m: {\n sectionType: 'minutes',\n contentType: 'digit',\n maxLength: 2\n },\n mm: 'minutes',\n // Seconds\n s: {\n sectionType: 'seconds',\n contentType: 'digit',\n maxLength: 2\n },\n ss: 'seconds'\n};\nconst defaultFormats = {\n year: 'YYYY',\n month: 'MMMM',\n monthShort: 'MMM',\n dayOfMonth: 'D',\n weekday: 'dddd',\n weekdayShort: 'ddd',\n hours24h: 'HH',\n hours12h: 'hh',\n meridiem: 'A',\n minutes: 'mm',\n seconds: 'ss',\n fullDate: 'll',\n fullDateWithWeekday: 'dddd, LL',\n keyboardDate: 'L',\n shortDate: 'MMM D',\n normalDate: 'D MMMM',\n normalDateWithWeekday: 'ddd, MMM D',\n monthAndYear: 'MMMM YYYY',\n monthAndDate: 'MMMM D',\n fullTime: 'LT',\n fullTime12h: 'hh:mm A',\n fullTime24h: 'HH:mm',\n fullDateTime: 'lll',\n fullDateTime12h: 'll hh:mm A',\n fullDateTime24h: 'll HH:mm',\n keyboardDateTime: 'L LT',\n keyboardDateTime12h: 'L hh:mm A',\n keyboardDateTime24h: 'L HH:mm'\n};\nconst MISSING_UTC_PLUGIN = ['Missing UTC plugin', 'To be able to use UTC or timezones, you have to enable the `utc` plugin', 'Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-utc'].join('\\n');\nconst MISSING_TIMEZONE_PLUGIN = ['Missing timezone plugin', 'To be able to use timezones, you have to enable both the `utc` and the `timezone` plugin', 'Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-timezone'].join('\\n');\nconst withLocale = (dayjs, locale) => !locale ? dayjs : (...args) => dayjs(...args).locale(locale);\n\n/**\n * Based on `@date-io/dayjs`\n *\n * MIT License\n *\n * Copyright (c) 2017 Dmitriy Kovalenko\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in 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 */\nexport class AdapterDayjs {\n constructor({\n locale: _locale,\n formats,\n instance\n } = {}) {\n this.isMUIAdapter = true;\n this.isTimezoneCompatible = true;\n this.lib = 'dayjs';\n this.rawDayJsInstance = void 0;\n this.dayjs = void 0;\n this.locale = void 0;\n this.formats = void 0;\n this.escapedCharacters = {\n start: '[',\n end: ']'\n };\n this.formatTokenMap = formatTokenMap;\n this.setLocaleToValue = value => {\n const expectedLocale = this.getCurrentLocaleCode();\n if (expectedLocale === value.locale()) {\n return value;\n }\n return value.locale(expectedLocale);\n };\n this.hasUTCPlugin = () => typeof defaultDayjs.utc !== 'undefined';\n this.hasTimezonePlugin = () => typeof defaultDayjs.tz !== 'undefined';\n this.isSame = (value, comparing, comparisonTemplate) => {\n const comparingInValueTimezone = this.setTimezone(comparing, this.getTimezone(value));\n return value.format(comparisonTemplate) === comparingInValueTimezone.format(comparisonTemplate);\n };\n this.createSystemDate = value => {\n // TODO v7: Stop using `this.rawDayJsInstance` (drop the `instance` param on the adapters)\n return this.rawDayJsInstance(value);\n };\n this.createUTCDate = value => {\n /* istanbul ignore next */\n if (!this.hasUTCPlugin()) {\n throw new Error(MISSING_UTC_PLUGIN);\n }\n return defaultDayjs.utc(value);\n };\n this.createTZDate = (value, timezone) => {\n /* istanbul ignore next */\n if (!this.hasUTCPlugin()) {\n throw new Error(MISSING_UTC_PLUGIN);\n }\n\n /* istanbul ignore next */\n if (!this.hasTimezonePlugin()) {\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const cleanTimezone = timezone === 'default' ? undefined : timezone;\n const keepLocalTime = value !== undefined && !value.endsWith('Z');\n return defaultDayjs(value).tz(cleanTimezone, keepLocalTime);\n };\n this.getLocaleFormats = () => {\n const locales = defaultDayjs.Ls;\n const locale = this.locale || 'en';\n let localeObject = locales[locale];\n if (localeObject === undefined) {\n localeNotFoundWarning();\n localeObject = locales.en;\n }\n return localeObject.formats;\n };\n this.date = value => {\n if (value === null) {\n return null;\n }\n return this.dayjs(value);\n };\n this.dateWithTimezone = (value, timezone) => {\n if (value === null) {\n return null;\n }\n let parsedValue;\n if (timezone === 'UTC') {\n parsedValue = this.createUTCDate(value);\n } else if (timezone === 'system' || timezone === 'default' && !this.hasTimezonePlugin()) {\n parsedValue = this.createSystemDate(value);\n } else {\n parsedValue = this.createTZDate(value, timezone);\n }\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.getTimezone = value => {\n if (this.hasUTCPlugin() && value.isUTC()) {\n return 'UTC';\n }\n if (this.hasTimezonePlugin()) {\n var _value$$x;\n // @ts-ignore\n const zone = (_value$$x = value.$x) == null ? void 0 : _value$$x.$timezone;\n return zone != null ? zone : 'system';\n }\n return 'system';\n };\n this.setTimezone = (value, timezone) => {\n if (this.getTimezone(value) === timezone) {\n return value;\n }\n if (timezone === 'UTC') {\n /* istanbul ignore next */\n if (!this.hasUTCPlugin()) {\n throw new Error(MISSING_UTC_PLUGIN);\n }\n return value.utc();\n }\n if (timezone === 'system') {\n if (this.hasUTCPlugin()) {\n return value.local();\n }\n return value;\n }\n if (!this.hasTimezonePlugin()) {\n if (timezone === 'default') {\n return value;\n }\n\n /* istanbul ignore next */\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const cleanZone = timezone === 'default' ? undefined : timezone;\n return defaultDayjs.tz(value, cleanZone);\n };\n this.toJsDate = value => {\n return value.toDate();\n };\n this.parseISO = isoString => {\n return this.dayjs(isoString);\n };\n this.toISO = value => {\n return value.toISOString();\n };\n this.parse = (value, format) => {\n if (value === '') {\n return null;\n }\n return this.dayjs(value, format, this.locale, true);\n };\n this.getCurrentLocaleCode = () => {\n return this.locale || 'en';\n };\n this.is12HourCycleInCurrentLocale = () => {\n /* istanbul ignore next */\n return /A|a/.test(this.getLocaleFormats().LT || '');\n };\n this.expandFormat = format => {\n const localeFormats = this.getLocaleFormats();\n\n // @see https://github.com/iamkun/dayjs/blob/dev/src/plugin/localizedFormat/index.js\n const t = formatBis => formatBis.replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g, (_, a, b) => a || b.slice(1));\n return format.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g, (_, a, b) => {\n const B = b && b.toUpperCase();\n return a || localeFormats[b] || t(localeFormats[B]);\n });\n };\n this.getFormatHelperText = format => {\n return this.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();\n };\n this.isNull = value => {\n return value === null;\n };\n this.isValid = value => {\n return this.dayjs(value).isValid();\n };\n this.format = (value, formatKey) => {\n return this.formatByString(value, this.formats[formatKey]);\n };\n this.formatByString = (value, formatString) => {\n return this.dayjs(value).format(formatString);\n };\n this.formatNumber = numberToFormat => {\n return numberToFormat;\n };\n this.getDiff = (value, comparing, unit) => {\n return value.diff(comparing, unit);\n };\n this.isEqual = (value, comparing) => {\n if (value === null && comparing === null) {\n return true;\n }\n return this.dayjs(value).isSame(comparing);\n };\n this.isSameYear = (value, comparing) => {\n return this.isSame(value, comparing, 'YYYY');\n };\n this.isSameMonth = (value, comparing) => {\n return this.isSame(value, comparing, 'YYYY-MM');\n };\n this.isSameDay = (value, comparing) => {\n return this.isSame(value, comparing, 'YYYY-MM-DD');\n };\n this.isSameHour = (value, comparing) => {\n return value.isSame(comparing, 'hour');\n };\n this.isAfter = (value, comparing) => {\n return value > comparing;\n };\n this.isAfterYear = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isAfter(comparing, 'year');\n }\n return !this.isSameYear(value, comparing) && value.utc() > comparing.utc();\n };\n this.isAfterDay = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isAfter(comparing, 'day');\n }\n return !this.isSameDay(value, comparing) && value.utc() > comparing.utc();\n };\n this.isBefore = (value, comparing) => {\n return value < comparing;\n };\n this.isBeforeYear = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isBefore(comparing, 'year');\n }\n return !this.isSameYear(value, comparing) && value.utc() < comparing.utc();\n };\n this.isBeforeDay = (value, comparing) => {\n if (!this.hasUTCPlugin()) {\n return value.isBefore(comparing, 'day');\n }\n return !this.isSameDay(value, comparing) && value.utc() < comparing.utc();\n };\n this.isWithinRange = (value, [start, end]) => {\n return value >= start && value <= end;\n };\n this.startOfYear = value => {\n return value.startOf('year');\n };\n this.startOfMonth = value => {\n return value.startOf('month');\n };\n this.startOfWeek = value => {\n return value.startOf('week');\n };\n this.startOfDay = value => {\n return value.startOf('day');\n };\n this.endOfYear = value => {\n return value.endOf('year');\n };\n this.endOfMonth = value => {\n return value.endOf('month');\n };\n this.endOfWeek = value => {\n return value.endOf('week');\n };\n this.endOfDay = value => {\n return value.endOf('day');\n };\n this.addYears = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'year') : value.add(amount, 'year');\n };\n this.addMonths = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'month') : value.add(amount, 'month');\n };\n this.addWeeks = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'week') : value.add(amount, 'week');\n };\n this.addDays = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'day') : value.add(amount, 'day');\n };\n this.addHours = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'hour') : value.add(amount, 'hour');\n };\n this.addMinutes = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'minute') : value.add(amount, 'minute');\n };\n this.addSeconds = (value, amount) => {\n return amount < 0 ? value.subtract(Math.abs(amount), 'second') : value.add(amount, 'second');\n };\n this.getYear = value => {\n return value.year();\n };\n this.getMonth = value => {\n return value.month();\n };\n this.getDate = value => {\n return value.date();\n };\n this.getHours = value => {\n return value.hour();\n };\n this.getMinutes = value => {\n return value.minute();\n };\n this.getSeconds = value => {\n return value.second();\n };\n this.getMilliseconds = value => {\n return value.millisecond();\n };\n this.setYear = (value, year) => {\n return value.set('year', year);\n };\n this.setMonth = (value, month) => {\n return value.set('month', month);\n };\n this.setDate = (value, date) => {\n return value.set('date', date);\n };\n this.setHours = (value, hours) => {\n return value.set('hour', hours);\n };\n this.setMinutes = (value, minutes) => {\n return value.set('minute', minutes);\n };\n this.setSeconds = (value, seconds) => {\n return value.set('second', seconds);\n };\n this.setMilliseconds = (value, milliseconds) => {\n return value.set('millisecond', milliseconds);\n };\n this.getDaysInMonth = value => {\n return value.daysInMonth();\n };\n this.getNextMonth = value => {\n return value.add(1, 'month');\n };\n this.getPreviousMonth = value => {\n return value.subtract(1, 'month');\n };\n this.getMonthArray = value => {\n const firstMonth = value.startOf('year');\n const monthArray = [firstMonth];\n while (monthArray.length < 12) {\n const prevMonth = monthArray[monthArray.length - 1];\n monthArray.push(this.addMonths(prevMonth, 1));\n }\n return monthArray;\n };\n this.mergeDateAndTime = (dateParam, timeParam) => {\n return dateParam.hour(timeParam.hour()).minute(timeParam.minute()).second(timeParam.second());\n };\n this.getWeekdays = () => {\n const start = this.dayjs().startOf('week');\n return [0, 1, 2, 3, 4, 5, 6].map(diff => this.formatByString(start.add(diff, 'day'), 'dd'));\n };\n this.getWeekArray = value => {\n const cleanLocale = this.setLocaleToValue(value);\n const start = cleanLocale.startOf('month').startOf('week');\n const end = cleanLocale.endOf('month').endOf('week');\n let count = 0;\n let current = start;\n const nestedWeeks = [];\n while (current < end) {\n const weekNumber = Math.floor(count / 7);\n nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];\n nestedWeeks[weekNumber].push(current);\n current = current.add(1, 'day');\n count += 1;\n }\n return nestedWeeks;\n };\n this.getWeekNumber = value => {\n return value.week();\n };\n this.getYearRange = (start, end) => {\n const startDate = start.startOf('year');\n const endDate = end.endOf('year');\n const years = [];\n let current = startDate;\n while (current < endDate) {\n years.push(current);\n current = current.add(1, 'year');\n }\n return years;\n };\n this.getMeridiemText = ampm => {\n return ampm === 'am' ? 'AM' : 'PM';\n };\n this.rawDayJsInstance = instance || defaultDayjs;\n this.dayjs = withLocale(this.rawDayJsInstance, _locale);\n this.locale = _locale;\n this.formats = _extends({}, defaultFormats, formats);\n defaultDayjs.extend(weekOfYear);\n }\n}","import './App.css';\nimport { useState, useEffect, Fragment } from 'react';\nimport Plotly from 'plotly.js-dist';\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport Autocomplete from '@mui/material/Autocomplete';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport Radio from '@mui/material/Radio';\nimport RadioGroup from '@mui/material/RadioGroup';\nimport FormControl from '@mui/material/FormControl';\nimport FormLabel from '@mui/material/FormLabel';\nimport Checkbox from '@mui/material/Checkbox';\nimport Grid from '@mui/material/Grid';\nimport { DatePicker } from '@mui/x-date-pickers/DatePicker';\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { makePlotsEIDA } from './plotsEIDA.js';\nimport { makePlotsNode } from './plotsNode.js';\nimport { makePlotsNetwork } from './plotsNetwork.js';\nimport { makePlotsStation } from './plotsStation.js';\n\nfunction App() {\n const [isAuthenticated, setIsAuthenticated] = useState(false);\n const [commaNets, setCommaNets] = useState(false);\n const [authTokenFile, setAuthTokenFile] = useState(undefined);\n const [startTime, setStartTime] = useState(new Date().getFullYear()+'-01');\n const [endTime, setEndTime] = useState(undefined);\n const [level, setLevel] = useState(\"eida\");\n const [showError, setShowError] = useState(\"\");\n const [node, setNode] = useState([]);\n const [inputNode, setInputNode] = useState(\"\");\n const [network, setNetwork] = useState([]);\n const [inputNetwork, setInputNetwork] = useState(\"\");\n const [station, setStation] = useState(\"\");\n const [topN, setTopN] = useState(10);\n\n function handleClick() {\n if (!showError) {\n // clear potential previous error messages\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"\";\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"\";\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"\";\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"\";\n // clear plots\n Plotly.purge('total-clients');\n Plotly.purge('total-bytes');\n Plotly.purge('total-requests');\n Plotly.purge('month-plots');\n Plotly.purge('year-plots');\n Plotly.purge('country-plots');\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = '#f5f5f5';\n }\n // clear checkboxes for map plot\n const nodeCheckboxesContainer = document.getElementById('nns-checkboxes');\n if (nodeCheckboxesContainer) {\n nodeCheckboxesContainer.innerHTML = '';\n }\n // show error and stop execution if start time not specified by user\n if (!startTime) {\n setShowError(\"Specify at least 'Start Time' parameter!\");\n return;\n }\n // otherwise clear error message\n setShowError(\"\");\n // helper function for parameter passing\n function paramToPass(lst, str) {\n if (lst.length !== 0 && str) {\n return `${lst.join(',')},${str}`;\n } else if (lst.length !== 0) {\n return lst.join(',');\n } else {\n return str;\n }\n }\n // delay execution to allow React to update the page and create the loading-msg element, otherwise error pops up\n setTimeout(() => {\n switch(level) {\n case \"eida\":\n makePlotsEIDA(startTime, endTime);\n break;\n case \"node\":\n makePlotsNode(startTime, endTime, paramToPass(node, inputNode));\n break;\n case \"network\":\n let file = new FormData();\n file.append('file', authTokenFile);\n // the below is true if multiple networks asked\n const strNets = isAuthenticated ? paramToPass(network, inputNetwork) : (network && network.length !== 0 ? network : inputNetwork);\n makePlotsNetwork(isAuthenticated, file, startTime, endTime, paramToPass(node, inputNode),\n isAuthenticated ? paramToPass(network, inputNetwork) : (!inputNetwork && network && network.length !== 0 ? network : inputNetwork),\n (!strNets || strNets.includes(',') || strNets === \"\") ? undefined : true, (!isNaN(topN) && topN >= 0) ? topN : undefined);\n break;\n case \"station\":\n let fileSta = new FormData();\n fileSta.append('file', authTokenFile);\n makePlotsStation(fileSta, startTime, endTime, paramToPass(node, inputNode), paramToPass(network, inputNetwork), station,\n (!isNaN(topN) && topN >= 0) ? topN : undefined);\n break;\n default:\n setShowError(\"Choose level to plot statistics!\")\n return;\n }\n }, 200);\n }\n\n // make a call to retrieve list of nodes\n async function get_nodes() {\n try {\n const response = await fetch('https://ws.resif.fr/eidaws/statistics/1/nodes');\n if (!response.ok) {\n throw new Error('Failed to fetch nodes');\n }\n const data = await response.json();\n return data.nodes.map(node => node.name).sort();\n }\n catch (error) {\n console.error(error);\n return [];\n }\n }\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState([]);\n const loading = open && options.length === 0;\n useEffect(() => {\n let active = true;\n if (!loading) {\n return undefined;\n }\n (async () => {\n let nodes = await get_nodes();\n if (active) {\n setOptions(nodes);\n }\n })();\n return () => {\n active = false;\n };\n }, [loading]);\n useEffect(() => {\n if (!open) {\n setOptions([]);\n }\n }, [open]);\n\n // make a call to retrieve list of networks\n async function get_networks() {\n try {\n const response = await fetch('https://ws.resif.fr/eidaws/statistics/1/networks');\n if (!response.ok) {\n throw new Error('Failed to fetch networks');\n }\n const data = await response.json();\n // filter networks according to the node field\n let networkNodes = new Set();\n if (Array.isArray(node)) {\n node.forEach(n => networkNodes.add(n));\n }\n if (typeof inputNode === 'string' && inputNode !== \"\") {\n inputNode.split(',').forEach(n => networkNodes.add(n));\n }\n if (networkNodes.size === 0) {\n setBroughtNets(true);\n return Array.from(new Set(data.networks.map(net => net.name))).sort();\n } else {\n let filteredNetworks = data.networks.filter(network => {\n return Array.from(networkNodes).includes(network.node);\n });\n setBroughtNets(true);\n return Array.from(new Set(filteredNetworks.map(net => net.name))).sort();\n }\n }\n catch (error) {\n console.error(error);\n return [];\n }\n }\n const [openNet, setOpenNet] = useState(false);\n const [optionsNet, setOptionsNet] = useState([]);\n const [broughtNets, setBroughtNets] = useState(false);\n const loadingNet = openNet && !broughtNets;\n useEffect(() => {\n let activeNet = true;\n if (!loadingNet) {\n return undefined;\n }\n (async () => {\n let networks = await get_networks();\n if (activeNet) {\n setOptionsNet(networks);\n }\n })();\n return () => {\n activeNet = false;\n };\n }, [loadingNet]);\n useEffect(() => {\n if (!openNet) {\n setOptionsNet([]);\n }\n }, [openNet]);\n\n // default plots when page loads: eida level current year\n useEffect(() => {\n handleClick();\n }, []);\n\n return (\n
\n \n \n

EIDA Statistics Dashboard

\n
\n Dashboard UI to explore usage statistics in the form of plots for services distributed in the EIDA federation.

\n For more details, visit the statistics webservice.

\n The code of the current dashboard is hosted at github.

\n The starting date of collecting statistics data is 2020-11.

\n For members of EIDA federation, choose the authentication below for full access to data.\n
\n
\n {setIsAuthenticated(!isAuthenticated); setAuthTokenFile(undefined);\n setLevel(\"eida\"); setNode([]); setInputNode(\"\"); setNetwork([]); setInputNetwork(\"\"); setStation(\"\");}}/>} label=\"Authentication\" />\n {isAuthenticated && (\n
\n \n setAuthTokenFile(event.target.files[0])} />\n
\n To redeem an EIDA authentication token file visit https://geofon.gfz-potsdam.de/eas.\n
\n
\n )}\n
\n {(level === \"network\" || level === \"station\") && (\n
\n \n setTopN(parseInt(event.target.value, 10))}/>\n
\n )}\n \n \n
\n \n (newValue ? setStartTime(newValue.$y+'-'+(newValue.$M+1)) : setStartTime(undefined))} />\n \n
\n
\n \n (newValue ? setEndTime(newValue.$y+'-'+(newValue.$M+1)) : setEndTime(undefined))} />\n \n
\n
\n \n Level\n \n {setLevel(e.target.value); setNode([]);\n setInputNode(\"\"); setNetwork([]); setInputNetwork(\"\"); setStation(\"\");}}/>} label=\"EIDA\" />\n {setLevel(e.target.value); setNetwork([]);\n setInputNetwork(\"\"); setStation(\"\");}}/>} label=\"Node\" />\n {setLevel(e.target.value);\n setStation(\"\")}}/>} label=\"Network\" />\n {isAuthenticated && (\n setLevel(e.target.value)}/>} label=\"Station\" />)}\n \n \n
\n {level !== \"eida\" && (\n
\n setInputNode(e.target.value)}\n onChange={(e, nv) => {setNode(nv); setInputNode(\"\");}}\n options={options}\n open={open}\n onOpen={() => setOpen(true)}\n onClose={() => setOpen(false)}\n isOptionEqualToValue={(option, value) => option === value}\n loading={loading}\n renderInput={(params) => (\n \n {loading ? : null}\n {params.InputProps.endAdornment}\n \n ),\n }}\n />\n )}\n />\n
\n )}\n {(level === \"network\" || level === \"station\") && (\n
\n {setInputNetwork(e.target.value); e.target.value && (network.length > 0 || e.target.value.includes(',')) ? setCommaNets(true) : setCommaNets(false)}}\n onChange={(e, nv) => {setNetwork(nv); setInputNetwork(\"\"); nv.length > 1 ? setCommaNets(true) : setCommaNets(false)}}\n options={optionsNet}\n open={openNet}\n onOpen={() => setOpenNet(true)}\n onClose={() => {setOpenNet(false); setBroughtNets(false);}}\n isOptionEqualToValue={(option, value) => option === value}\n loading={loadingNet}\n renderInput={(params) => (\n \n {loadingNet ? : null}\n {params.InputProps.endAdornment}\n \n ),\n }}\n />\n )}\n />\n {commaNets && (\n
\n Selecting multiple network requires node operator privileges. Make sure your EIDA account is set up accordingly.\n
\n )}\n
\n )}\n {level === \"station\" && (\n
\n setStation(e.target.value)} />\n
\n Comma-separated list, e.g. STA1,STA2\n
\n
\n )}\n
\n \n \n {showError && (\n
\n {showError}\n
\n )}\n {!showError && (\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\nexport default App;\n","import Plotly from 'plotly.js-dist';\n\nexport function makePlotsEIDA(startTime, endTime) {\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // clients plot\n const indicatorDataClients = [\n {\n type: \"indicator\",\n value: data.results[0].clients,\n mode: \"number\",\n number: { font: { size: 50 } }\n }\n ];\n const indicatorLayoutClients = {\n title: \"Total number of unique users\"\n };\n Plotly.newPlot(\"total-clients\", indicatorDataClients, indicatorLayoutClients, {displaylogo: false});\n\n // bytes plot\n const indicatorDataBytes = [\n {\n type: \"indicator\",\n value: data.results[0].bytes,\n mode: \"number\",\n number: { font: { size: 50 }, valueformat: '.3s' }\n }\n ];\n const indicatorLayoutBytes = {\n title: \"Total number of bytes\"\n };\n Plotly.newPlot(\"total-bytes\", indicatorDataBytes, indicatorLayoutBytes, {displaylogo: false});\n\n // requests plot\n const pieDataRequests = [\n {\n values: [data.results[0].nb_successful_reqs, data.results[0].nb_reqs - data.results[0].nb_successful_reqs],\n labels: [\"Successful Requests\", \"Unsuccessful Requests\"],\n type: \"pie\",\n hovertemplate: '%{label}
%{value:.3s}
%{percent}'\n },\n ];\n const pieLayoutRequests = {\n title: \"Total number of requests\"\n };\n Plotly.newPlot(\"total-requests\", pieDataRequests, pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n let url = null;\n if (details === \"year\") {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&details=year&format=json`;\n }\n else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&details=month&format=json`;\n }\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // show clients at first\n const barData = [\n {\n x: data.results.map(result => result.date),\n y: data.results.map(result => result.clients),\n name: \"\",\n type: 'bar'\n },\n {}\n ];\n let barLayout = {\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n x: [data.results.map(result => result.date)],\n y: [data.results.map(result => result.clients), []],\n name: [\"\", \"\"],\n type: 'bar'\n },\n {\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: false\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: [data.results.map(result => result.date)],\n y: [data.results.map(result => result.bytes), []],\n name: [\"\", \"\"],\n type: 'bar'\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: false\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n x: [data.results.map(result => result.date)],\n y: [data.results.map(result => result.nb_successful_reqs), data.results.map(result => result.nb_reqs - result.nb_successful_reqs)],\n name: [\"Successful Requests\", \"Unsuccessful Requests\"],\n type: 'bar'\n },\n {\n barmode: 'stack',\n title: 'Number of requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Requests'\n },\n showlegend: true\n }\n ],\n label: 'Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barData, barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}&details=country&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = data.results.map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: data.results.map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n }];\n const mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [data.results.map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [data.results.map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // total requests button\n {\n args: [\n {\n z: [data.results.map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of total requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n z: [data.results.map(result => result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of successful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of successful requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n z: [data.results.map(result => result.nb_reqs - result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unsuccessful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unsuccesssful requests (i.e. requests that did not return any data) made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n}\n","import Plotly from 'plotly.js-dist';\nimport ReactDOM from 'react-dom/client';\nimport {HLL, fromHexString} from './js_hll'\n\nexport function makePlotsNode(startTime, endTime, node) {\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n // make a call to retrieve list of nodes\n fetch('https://ws.resif.fr/eidaws/statistics/1/nodes')\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n const nodes = data.nodes.map(node => node.name).sort();\n const colors = [\"#7eed89\", \"#1f77b4\", \"#ff7f0e\", \"#2ca02c\", \"#d62728\", \"#9467bd\", \"#8c564b\", \"#e377c2\", \"#7f7f7f\", \"#bcbd22\", \"#17becf\", \"#3294b8\", \"#eb9a49\", \"#f5ed53\", \"#291200\"];\n let nodesColors = {};\n for (let i = 0; i < nodes.length && i < colors.length; i++) {\n nodesColors[nodes[i]] = colors[i];\n }\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&hllvalues=true&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // rearrange results and colors\n for (const node in nodesColors) {\n if (!data.results.map(result => result.node).includes(node)) {\n delete nodesColors[node];\n }\n }\n const rearrangedResults = data.results.sort((a, b) => {\n return Object.keys(nodesColors).indexOf(a.node) - Object.keys(nodesColors).indexOf(b.node);\n });\n // calculate hll values for total clients all nodes indicator plot\n let hll = new HLL(11, 5);\n data.results.forEach((result) => {\n hll.union(fromHexString(result.hll_clients).hllSet);\n });\n // clients plot, per node pie at first\n const pieDataClients = {\n values: rearrangedResults.map(result => result.clients),\n labels: Object.keys(nodesColors),\n type: 'pie',\n marker: {\n colors: Object.values(nodesColors)\n },\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}',\n sort: false\n };\n const pieLayoutClients = {\n title: 'Total number of users* per node',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct
for each node. However, the whole pie does not represent
the real value of the total users for all selected nodes, as
many clients may have asked data from multiple nodes.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total clients per node pie button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.clients)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of users* per node',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct
for each node. However, the whole pie does not represent
the real value of the total users for all selected nodes, as
many clients may have asked data from multiple nodes.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n }\n ],\n label: 'Users Per Node',\n method: 'update'\n },\n // total clients for all specified nodes indicator button\n {\n args: [\n {\n type: \"indicator\",\n value: hll.cardinality(),\n mode: \"number\",\n number: { font: { size: 50 } }\n },\n {\n title: 'Total number of unique users of all nodes',\n annotations: []\n }\n ],\n label: 'Users All Nodes',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-clients', [pieDataClients], pieLayoutClients, {displaylogo: false});\n\n // bytes plot\n const pieDataBytes = {\n values: rearrangedResults.map(result => result.bytes),\n labels: Object.keys(nodesColors),\n type: 'pie',\n marker: {\n colors: Object.values(nodesColors)\n },\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}',\n sort: false\n };\n const pieLayoutBytes = {\n title: 'Total number of bytes',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-bytes', [pieDataBytes], pieLayoutBytes, {displaylogo: false});\n\n // requests plot\n // show total requests at first\n const pieDataRequests = {\n values: rearrangedResults.map(result => result.nb_reqs),\n labels: Object.keys(nodesColors),\n type: 'pie',\n marker: {\n colors: Object.values(nodesColors)\n },\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}',\n sort: false\n };\n const pieLayoutRequests = {\n title: 'Total number of requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of total requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total requests button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.nb_reqs)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of total requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.nb_successful_reqs)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of successful requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of successful requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n values: [rearrangedResults.map(result => result.nb_reqs - result.nb_successful_reqs)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of unsuccessful requests',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of unsuccessful requests
(i.e. requests that did not return any data) made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-requests', [pieDataRequests], pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n let url = null;\n if (details === \"year\") {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&details=year&hllvalues=true&format=json`;\n }\n else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&details=month&hllvalues=true&format=json`;\n }\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // calculate hll values for total clients all nodes bar plot\n let hlls = {};\n data.results.forEach(result => {\n if (!hlls[result.date]) {\n hlls[result.date] = new HLL(11, 5);\n }\n hlls[result.date].union(fromHexString(result.hll_clients).hllSet);\n });\n // needed for clients of all specified nodes plot\n let clientsAllNodes = [];\n Object.keys(nodesColors).forEach(node => {\n clientsAllNodes.push([]);\n });\n clientsAllNodes[clientsAllNodes.length - 1] = Object.values(hlls).map(hll => hll.cardinality());\n // show clients at first\n const barData = Object.keys(nodesColors).map((node, index) => {\n const nodeResults = data.results.filter(result => result.node === node);\n return {\n x: nodeResults.map(result => result.date),\n y1: nodeResults.map(result => result.clients),\n y2: nodeResults.map(result => result.bytes),\n y3: nodeResults.map(result => result.nb_reqs),\n y4: nodeResults.map(result => result.nb_successful_reqs),\n y5: nodeResults.map(result => result.nb_reqs - result.nb_successful_reqs),\n name: node,\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n marker: {\n color: nodesColors[node]\n }\n }\n });\n let barLayout = {\n height: 500,\n margin: {\n b: 100\n },\n barmode: 'stack',\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n updatemenus: [{\n buttons: [\n // clients per node button\n {\n args: [\n {\n x: barData.map(bar => bar.x),\n y: barData.map(bar => bar.y1),\n name: barData.map(bar => bar.name),\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n marker: Object.values(nodesColors).map(color => ({ color: color }))\n },\n {\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n }\n ],\n label: 'Users Per Node',\n method: 'update'\n },\n // clients all specified nodes button\n {\n args: [\n {\n x: [Object.keys(hlls)],\n y: clientsAllNodes,\n name: Array(Object.keys(nodesColors).length).fill(\"\"),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: { color: Object.values(nodesColors)[0] }\n },\n {\n title: 'Number of unique users of all specified nodes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique Users'\n },\n showlegend: false,\n }\n ],\n label: 'Users All Nodes',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y2).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: true,\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // total requests button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y3).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of total requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of total requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Total Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y4).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of successful requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of successful requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Successful Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n x: barData.map(bar => bar.x).reverse(),\n y: barData.map(bar => bar.y5).reverse(),\n name: barData.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n marker: Object.values(nodesColors).reverse().map(color => ({ color: color }))\n },\n {\n title: 'Number of unsuccessful requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unsuccessful requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unsuccessful Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barData.map(bar => ({x: bar.x, y: bar.y1, name: bar.name, type: bar.type, mode: bar.mode, marker: bar.marker, hovertemplate: bar.hovertemplate})), barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}&level=node&details=country&hllvalues=true&format=json`;\n fetch(url)\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // remove nodes not included in the results\n for (const node in nodesColors) {\n if (!data.results.map(result => result.node).includes(node)) {\n delete nodesColors[node];\n }\n }\n // aggregate the results per country\n let aggregatedResults = data.results.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n nb_successful_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n aggregate[result.country].nb_successful_reqs += result.nb_successful_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients to all nodes at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: Object.values(aggregatedResults).map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n let mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // total requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of total requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of total requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Total Requests',\n method: 'update'\n },\n // successful requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of successful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of successful requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Successful Requests',\n method: 'update'\n },\n // unsuccessful requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs - result.nb_successful_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unsuccessful requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unsuccesssful requests (i.e. requests that did not return any data) made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unsuccessful Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n\n let nodeCheckboxes = Object.keys(nodesColors).map((node, index) => (\n

\n \n \n
\n ));\n const nodeCheckboxesContainer = document.getElementById('nns-checkboxes');\n nodeCheckboxesContainer.innerHTML = '';\n ReactDOM.createRoot(nodeCheckboxesContainer).render(nodeCheckboxes);\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n let lastClickedTime = 0;\n let lastClickedCheckbox = null;\n function handleCheckboxClick(event) {\n // first define checkboxes behavior\n const checkbox = event.target;\n const currentTime = new Date().getTime();\n const timeDiff = currentTime - lastClickedTime;\n const checkboxes = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]');\n const checkedCount = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked').length;\n if (checkbox === lastClickedCheckbox && timeDiff < 300) {\n if (checkedCount === 1 && checkbox.checked) {\n checkboxes.forEach((cb) => {\n cb.checked = true;\n });\n }\n else {\n checkboxes.forEach((cb) => {\n cb.checked = (cb === checkbox);\n });\n }\n }\n lastClickedCheckbox = checkbox;\n lastClickedTime = currentTime;\n // now update the plot with appropriate data\n const checked = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked');\n const selectedNodes = [];\n checked.forEach((cb) => {\n selectedNodes.push(cb.value);\n })\n const filteredData = data.results.filter((result) => selectedNodes.includes(result.node));\n aggregatedResults = filteredData.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n nb_successful_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n aggregate[result.country].nb_successful_reqs += result.nb_successful_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n const newCountryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n const activeButtonIndex = mapLayout.updatemenus[0].active;\n const zValues = Object.values(aggregatedResults).map(result => {\n if (activeButtonIndex === 0 || activeButtonIndex === undefined) {\n return result.clients;\n } else if (activeButtonIndex === 1) {\n return result.bytes;\n } else if (activeButtonIndex === 2) {\n return result.nb_reqs;\n } else if (activeButtonIndex === 3) {\n return result.nb_successful_reqs;\n } else if (activeButtonIndex === 4) {\n return result.nb_reqs - result.nb_successful_reqs;\n }\n });\n const newMapData = [{\n locationmode: 'ISO-3',\n locations: newCountryCodesISO3,\n z: zValues,\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n mapLayout.updatemenus[0].buttons.forEach((button, index) => {\n if (button && index === 0) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.clients)]\n } else if (button && index === 1) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.bytes)]\n } else if (button && index === 2) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs)]\n } else if (button && index === 3) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_successful_reqs)]\n } else if (button && index === 4) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs - result.nb_successful_reqs)]\n }\n });\n Plotly.react('country-plots', newMapData, mapLayout);\n }\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n })\n .catch((error) => {\n console.log(error);\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n}\n","import Plotly from 'plotly.js-dist';\nimport ReactDOM from 'react-dom/client';\nimport {HLL, fromHexString} from './js_hll'\n\nexport function makePlotsNetwork(isAuthenticated, file, startTime, endTime, node, net, single=false, topN=10) {\n// if single=true toggle mode for one (shared) network, i.e. show statistics per node that shares this network\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n let url;\n if (isAuthenticated) {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&hllvalues=true&format=json`;\n } else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&hllvalues=true&format=json`;\n }\n fetch(url, {method: isAuthenticated ? 'POST' : 'GET', body: isAuthenticated ? file : null})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // calculate hll values for shared networks and for total clients all networks indicator plot\n let foundNets = {};\n let hll = new HLL(11, 5);\n data.results.forEach((result) => {\n let network = single ? result.node : result.network || \"N/A\";\n if (foundNets[network]) {\n foundNets[network].union(fromHexString(result.hll_clients).hllSet);\n } else {\n foundNets[network] = fromHexString(result.hll_clients).hllSet;\n }\n hll.union(fromHexString(result.hll_clients).hllSet);\n });\n // show topN items and group the rest\n let groupedDataClients = { values: [], labels: [], belongsInLess: [] };\n let otherValueClients = 0;\n const sortedNetsClients = Object.entries(foundNets).sort((a, b) => b[1].cardinality() - a[1].cardinality());\n sortedNetsClients.forEach(([network, value], index) => {\n if (index < topN) {\n groupedDataClients.values.push(value.cardinality());\n groupedDataClients.labels.push(single ? `${net} (${network})` : network);\n } else {\n groupedDataClients.belongsInLess.push(network);\n otherValueClients += value.cardinality();\n }\n });\n // sort alphabetically\n const sortedDataClients = groupedDataClients.labels.map((label, index) => ({\n label,\n value: groupedDataClients.values[index]\n })).sort((a, b) => a.label.localeCompare(b.label));\n groupedDataClients.labels = sortedDataClients.map(item => item.label);\n groupedDataClients.values = sortedDataClients.map(item => item.value);\n if (otherValueClients > 0) {\n groupedDataClients.values.push(otherValueClients);\n groupedDataClients.labels.push('Grouped Items');\n }\n // clients plot, per network pie at first\n let pieDataClients = {\n values: groupedDataClients.values,\n labels: groupedDataClients.labels,\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: groupedDataClients.labels.map(label => label === 'Grouped Items' ? groupedDataClients.belongsInLess.join('
') : ''),\n sort: false\n };\n const pieLayoutClients = {\n title: 'Total number of users* per network',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each network. However, the whole pie does not represent
the real value of the total users for all selected networks, as
many clients may have asked data from multiple networks.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total clients per network pie button\n {\n args: [\n {\n values: [groupedDataClients.values],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of users* per network',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each network. However, the whole pie does not represent
the real value of the total users for all selected networks, as
many clients may have asked data from multiple networks.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n }\n ],\n label: 'Users Per Network',\n method: 'update'\n },\n // total clients for all specified networks indicator button\n {\n args: [\n {\n type: \"indicator\",\n value: hll.cardinality(),\n mode: \"number\",\n number: { font: { size: 50 } }\n },\n {\n title: 'Total number of unique users of all networks',\n annotations: []\n }\n ],\n label: 'Users All Networks',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-clients', [pieDataClients], pieLayoutClients, {displaylogo: false});\n\n // bytes plot\n // take care of shared networks\n const sharedBytes = data.results.reduce((accumulator, result) => {\n let network = single ? result.node : result.network || \"N/A\";\n const index = accumulator.networks.indexOf(network);\n if (index !== -1) {\n accumulator.bytes[index] += result.bytes;\n } else {\n accumulator.bytes.push(result.bytes);\n accumulator.networks.push(single ? `${net} (${network})` : network);\n }\n return accumulator;\n }, { bytes: [], networks: [] });\n // show topN items and group the rest\n let groupedDataBytes = { values: [], labels: [], belongsInLess: [] };\n let otherValueBytes = 0;\n const sortedNetsBytes = sharedBytes.networks.map((network, index) => ({\n network,\n bytes: sharedBytes.bytes[index]\n })).sort((a, b) => b.bytes - a.bytes);\n sortedNetsBytes.forEach(({ network, bytes }, index) => {\n if (index < topN) {\n groupedDataBytes.values.push(bytes);\n groupedDataBytes.labels.push(network);\n } else {\n groupedDataBytes.belongsInLess.push(network);\n otherValueBytes += bytes;\n }\n });\n // sort alphabetically\n const sortedDataBytes = groupedDataBytes.labels.map((label, index) => ({\n label,\n value: groupedDataBytes.values[index]\n })).sort((a, b) => a.label.localeCompare(b.label));\n groupedDataBytes.labels = sortedDataBytes.map(item => item.label);\n groupedDataBytes.values = sortedDataBytes.map(item => item.value);\n if (otherValueBytes > 0) {\n groupedDataBytes.values.push(otherValueBytes);\n groupedDataBytes.labels.push('Grouped Items');\n }\n const pieDataBytes = {\n values: groupedDataBytes.values,\n labels: groupedDataBytes.labels,\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: groupedDataBytes.labels.map(label => label === 'Grouped Items' ? groupedDataBytes.belongsInLess.join('
') : ''),\n sort: false\n };\n const pieLayoutBytes = {\n title: 'Total number of bytes',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-bytes', [pieDataBytes], pieLayoutBytes, {displaylogo: false});\n\n // requests plot\n // take care of shared networks\n const sharedReq = data.results.reduce((accumulator, result) => {\n let network = single ? result.node : result.network || \"N/A\";\n const index = accumulator.networks.indexOf(network);\n if (index !== -1) {\n accumulator.nb_reqs[index] += result.nb_reqs;\n } else {\n accumulator.nb_reqs.push(result.nb_reqs);\n accumulator.networks.push(single ? `${net} (${network})` : network);\n }\n return accumulator;\n }, { nb_reqs: [], networks: [] });\n // show topN items and group the rest\n let groupedDataReq = { values: [], labels: [], belongsInLess: [] };\n let otherValueReq = 0;\n const sortedNetsReq = sharedReq.networks.map((network, index) => ({\n network,\n nb_reqs: sharedReq.nb_reqs[index]\n })).sort((a, b) => b.nb_reqs - a.nb_reqs);\n sortedNetsReq.forEach(({ network, nb_reqs }, index) => {\n if (index < topN) {\n groupedDataReq.values.push(nb_reqs);\n groupedDataReq.labels.push(network);\n } else {\n groupedDataReq.belongsInLess.push(network);\n otherValueReq += nb_reqs;\n }\n });\n // sort alphabetically\n const sortedDataReq = groupedDataReq.labels.map((label, index) => ({\n label,\n value: groupedDataReq.values[index]\n })).sort((a, b) => a.label.localeCompare(b.label));\n groupedDataReq.labels = sortedDataReq.map(item => item.label);\n groupedDataReq.values = sortedDataReq.map(item => item.value);\n if (otherValueReq > 0) {\n groupedDataReq.values.push(otherValueReq);\n groupedDataReq.labels.push('Grouped Items');\n }\n const pieDataRequests = {\n values: groupedDataReq.values,\n labels: groupedDataReq.labels,\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: groupedDataReq.labels.map(label => label === 'Grouped Items' ? groupedDataReq.belongsInLess.join('
') : ''),\n sort: false\n };\n const pieLayoutRequests = {\n title: 'Total number of requests',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n };\n Plotly.newPlot('total-requests', [pieDataRequests], pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n let url;\n if (isAuthenticated) {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=${details}&hllvalues=true&format=json`;\n }\n else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=${details}&hllvalues=true&format=json`;\n }\n fetch(url, {method: isAuthenticated ? 'POST' : 'GET', body: isAuthenticated ? file : null})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n let networksSet = Array.from(new Set(data.results.map(result => single ? result.node : result.network)));\n // calculate hll values for total clients all networks bar plot\n let hlls = {};\n data.results.forEach(result => {\n if (!hlls[result.date]) {\n hlls[result.date] = new HLL(11, 5);\n }\n hlls[result.date].union(fromHexString(result.hll_clients).hllSet);\n });\n // organize data and take care the case of shared networks\n const barData = networksSet.map(network => {\n let networkResults = data.results.filter(result => single ? result.node === network : result.network === network);\n // group results by date\n const groupedResults = networkResults.reduce((grouped, result) => {\n if (!grouped[result.date]) {\n grouped[result.date] = [];\n }\n grouped[result.date].push(result);\n return grouped;\n }, {});\n // calculate aggregated values for each date\n const aggregatedResults = Object.entries(groupedResults).map(([date, results]) => {\n const y1 = results.reduce((acc, result) => acc.union(fromHexString(result.hll_clients).hllSet), new HLL(11, 5));\n const y2 = results.reduce((sum, result) => sum + result.bytes, 0);\n const y3 = results.reduce((sum, result) => sum + result.nb_reqs, 0);\n return {date, y1, y2, y3};\n });\n return {\n x: aggregatedResults.map(result => result.date),\n y1: aggregatedResults.map(result => result.y1.cardinality()),\n y2: aggregatedResults.map(result => result.y2),\n y3: aggregatedResults.map(result => result.y3),\n name: single ? `${net} (${network})` : (network ? network : \"N/A\"),\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n });\n\n // show topN items and group the rest for clients\n barData.sort((a, b) => {\n const totalA = a.y1.reduce((sum, value) => sum + value, 0);\n const totalB = b.y1.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataClients = {\n x: [],\n y1: {},\n name: 'Grouped Items',\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataClients = [...barData];\n if (barDataClients.length > topN) {\n for (let i = topN; i < barDataClients.length; i++) {\n const item = barDataClients[i];\n item.x.forEach((date, i) => {\n if (!otherDataClients.x.includes(date)) {\n otherDataClients.x.push(date);\n }\n otherDataClients.y1[date] = (otherDataClients.y1[date] || 0) + item.y1[i];\n });\n }\n otherDataClients.y1 = Object.values(otherDataClients.y1);\n barDataClients.splice(topN, barDataClients.length - topN);\n }\n barDataClients.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataClients.x.length > 0) {\n barDataClients.push(otherDataClients);\n }\n // needed for clients of all specified networks plot\n let clientsAllNetworks = Array(barDataClients.length).fill([]);\n clientsAllNetworks[barDataClients.length - 1] = Object.values(hlls).map(hll => hll.cardinality());\n\n // show topN items and group the rest for bytes\n barData.sort((a, b) => {\n const totalA = a.y2.reduce((sum, value) => sum + value, 0);\n const totalB = b.y2.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataBytes = {\n x: [],\n y2: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataBytes = [...barData];\n if (barDataBytes.length > topN) {\n for (let i = topN; i < barDataBytes.length; i++) {\n const item = barDataBytes[i];\n item.x.forEach((date, i) => {\n if (!otherDataBytes.x.includes(date)) {\n otherDataBytes.x.push(date);\n }\n otherDataBytes.y2[date] = (otherDataBytes.y2[date] || 0) + item.y2[i];\n });\n }\n otherDataBytes.y2 = Object.values(otherDataBytes.y2);\n barDataBytes.splice(topN, barDataBytes.length - topN);\n }\n barDataBytes.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataBytes.x.length > 0) {\n barDataBytes.push(otherDataBytes);\n }\n\n // show topN items and group the rest for requests\n barData.sort((a, b) => {\n const totalA = a.y3.reduce((sum, value) => sum + value, 0);\n const totalB = b.y3.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataReq = {\n x: [],\n y3: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataReq = [...barData];\n if (barDataReq.length > topN) {\n for (let i = topN; i < barDataReq.length; i++) {\n const item = barDataReq[i];\n item.x.forEach((date, i) => {\n if (!otherDataReq.x.includes(date)) {\n otherDataReq.x.push(date);\n }\n otherDataReq.y3[date] = (otherDataReq.y3[date] || 0) + item.y3[i];\n });\n }\n otherDataReq.y3 = Object.values(otherDataReq.y3);\n barDataReq.splice(topN, barDataReq.length - topN);\n }\n barDataReq.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataReq.x.length > 0) {\n barDataReq.push(otherDataReq);\n }\n\n let barLayout = {\n height: 500,\n margin: {\n b: 100\n },\n barmode: 'stack',\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n updatemenus: [{\n buttons: [\n // clients per network button\n {\n args: [\n {\n x: barDataClients.map(bar => bar.x),\n y: barDataClients.map(bar => bar.y1),\n name: barDataClients.map(bar => bar.name),\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n },\n {\n title: 'Number of users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n }\n ],\n label: 'Users Per Network',\n method: 'update'\n },\n // clients all specified networks button\n {\n args: [\n {\n x: [Object.keys(hlls)],\n y: clientsAllNetworks,\n name: Array(clientsAllNetworks.length).fill(\"\"),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of unique users of all specified networks per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique Users'\n },\n showlegend: false,\n }\n ],\n label: 'Users All Networks',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: barDataBytes.map(bar => bar.x).reverse(),\n y: barDataBytes.map(bar => bar.y2).reverse(),\n name: barDataBytes.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: true,\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n x: barDataReq.map(bar => bar.x).reverse(),\n y: barDataReq.map(bar => bar.y3).reverse(),\n name: barDataReq.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barDataClients.map(bar => ({x: bar.x, y: bar.y1, name: bar.name, type: bar.type, mode: bar.mode, hovertemplate: bar.hovertemplate})), barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n let url;\n if (isAuthenticated) {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=country&hllvalues=true&format=json`;\n } else {\n url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/public?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}&level=network&details=country&hllvalues=true&format=json`;\n }\n fetch(url, {method: isAuthenticated ? 'POST' : 'GET', body: isAuthenticated ? file : null})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // aggregate the results per country\n let aggregatedResults = data.results.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients to all nodes at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: Object.values(aggregatedResults).map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n let mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Requests',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n\n let networksSorted;\n if (single) {\n networksSorted = Array.from(new Set(data.results.map(result => result.node))).sort((a, b) => a.localeCompare(b));\n } else {\n networksSorted = Array.from(new Set(data.results.map(result => result.network))).sort((a, b) => a.localeCompare(b));\n }\n let networkCheckboxes = networksSorted.map((network, index) => (\n

\n \n \n
\n ));\n const networkCheckboxesContainer = document.getElementById('nns-checkboxes');\n networkCheckboxesContainer.innerHTML = '';\n ReactDOM.createRoot(networkCheckboxesContainer).render(networkCheckboxes);\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n let lastClickedTime = 0;\n let lastClickedCheckbox = null;\n function handleCheckboxClick(event) {\n // first define checkboxes behavior\n const checkbox = event.target;\n const currentTime = new Date().getTime();\n const timeDiff = currentTime - lastClickedTime;\n const checkboxes = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]');\n const checkedCount = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked').length;\n if (checkbox === lastClickedCheckbox && timeDiff < 300) {\n if (checkedCount === 1 && checkbox.checked) {\n checkboxes.forEach((cb) => {\n cb.checked = true;\n });\n }\n else {\n checkboxes.forEach((cb) => {\n cb.checked = (cb === checkbox);\n });\n }\n }\n lastClickedCheckbox = checkbox;\n lastClickedTime = currentTime;\n // now update the plot with appropriate data\n const checked = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked');\n const selectedNetworks = [];\n checked.forEach((cb) => {\n selectedNetworks.push(cb.value);\n })\n let filteredData;\n if (single) {\n filteredData = data.results.filter((result) => selectedNetworks.includes(result.node));\n } else {\n filteredData = data.results.filter((result) => selectedNetworks.includes(result.network));\n }\n aggregatedResults = filteredData.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0,\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n const newCountryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n const activeButtonIndex = mapLayout.updatemenus[0].active;\n const zValues = Object.values(aggregatedResults).map(result => {\n if (activeButtonIndex === 0 || activeButtonIndex === undefined) {\n return result.clients;\n } else if (activeButtonIndex === 1) {\n return result.bytes;\n } else if (activeButtonIndex === 2) {\n return result.nb_reqs;\n }\n });\n const newMapData = [{\n locationmode: 'ISO-3',\n locations: newCountryCodesISO3,\n z: zValues,\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n mapLayout.updatemenus[0].buttons.forEach((button, index) => {\n if (button && index === 0) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.clients)]\n } else if (button && index === 1) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.bytes)]\n } else if (button && index === 2) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs)]\n }\n });\n Plotly.react('country-plots', newMapData, mapLayout);\n }\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n}\n","import Plotly from 'plotly.js-dist';\nimport ReactDOM from 'react-dom/client';\nimport {HLL, fromHexString} from './js_hll'\n\nexport function makePlotsStation(file, startTime, endTime, node, net, sta, topN=10) {\n\n // show message while loading\n let loadingMsg = document.getElementById(\"loading-msg\");\n loadingMsg.innerHTML = \"Loading plots. Please wait...\";\n function flashLoadingMessage() {\n if (loadingMsg.innerHTML === \"Loading plots. Please wait...\") {\n loadingMsg.innerHTML = \"Loading plots. Please wait\";\n } else {\n loadingMsg.innerHTML += \".\";\n }\n }\n const intervalId = setInterval(flashLoadingMessage, 500);\n\n totalPlots();\n monthAndYearPlots(\"month\");\n let endYear = new Date().getFullYear();\n if (endTime) {\n endYear = endTime.split('-')[0];\n }\n if (startTime.split('-')[0] != endYear) {\n monthAndYearPlots(\"year\");\n }\n mapPlots();\n\n function totalPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}${sta ? `&station=${sta}` : ''}&level=station&hllvalues=true&format=json`;\n fetch(url, {method: 'POST', body: file})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let totalplots = document.getElementById('error-total');\n totalplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // calculate hll values for total clients all stations indicator plot\n let hll = new HLL(11, 5);\n data.results.forEach((result) => {\n hll.union(fromHexString(result.hll_clients).hllSet);\n });\n // clients plot\n // show topN items and group the rest\n const topDataClients = data.results.sort((a, b) => b.clients - a.clients).slice(0, topN).map(result => ({\n station: result.network + '.' + result.station,\n clients: result.clients\n }));\n topDataClients.sort((a, b) => a.station.localeCompare(b.station));\n const totalClientsGroupedSlice = data.results.reduce((total, result) => {\n if (!topDataClients.map(item => item.station).includes(result.network + '.' + result.station)) {\n return total + result.clients;\n }\n return total;\n }, 0);\n const groupedSliceClients = {\n station: 'Grouped Items',\n clients: totalClientsGroupedSlice,\n belongsHere: data.results.filter(result => !topDataClients.map(item => item.station).includes(result.network + '.' + result.station)).map(result => result.network + '.' + result.station),\n };\n if (groupedSliceClients.clients > 0) {\n topDataClients.push({station: groupedSliceClients.station, clients: groupedSliceClients.clients});\n }\n // per station pie at first\n const pieDataClients = {\n values: topDataClients.map(item => item.clients),\n labels: topDataClients.map(item => item.station),\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: topDataClients.map(result => result.station === 'Grouped Items' ? groupedSliceClients.belongsHere.join('
') : ''),\n sort: false\n };\n const pieLayoutClients = {\n title: 'Total number of unique users*',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each station. However, the whole pie does not represent
the real value of the total users for all selected stations, as
many clients may have asked data from multiple stations.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n updatemenus: [{\n buttons: [\n // total clients per station pie button\n {\n args: [\n {\n values: [topDataClients.map(item => item.clients)],\n type: 'pie',\n sort: false\n },\n {\n title: 'Total number of unique users*',\n annotations: [\n {\n xshift: -20,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: '*Important note: The number of unique users is correct for
each station. However, the whole pie does not represent
the real value of the total users for all selected stations, as
many clients may have asked data from multiple stations.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ]\n }\n ],\n label: 'Unique Users Per Station',\n method: 'update'\n },\n // total clients for all specified stations indicator button\n {\n args: [\n {\n type: \"indicator\",\n value: hll.cardinality(),\n mode: \"number\",\n number: { font: { size: 50 } }\n },\n {\n title: 'Total number of unique users of all specified stations',\n annotations: []\n }\n ],\n label: 'Unique Users All Stations',\n method: 'update'\n }\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('total-clients', [pieDataClients], pieLayoutClients, {displaylogo: false});\n\n // bytes plot\n // show topN items and group the rest\n const topDataBytes = data.results.sort((a, b) => b.bytes - a.bytes).slice(0, topN).map(result => ({\n station: result.network + '.' + result.station,\n bytes: result.bytes\n }));\n topDataBytes.sort((a, b) => a.station.localeCompare(b.station));\n const totalBytesGroupedSlice = data.results.reduce((total, result) => {\n if (!topDataBytes.map(item => item.station).includes(result.network + '.' + result.station)) {\n return total + result.bytes;\n }\n return total;\n }, 0);\n const groupedSliceBytes = {\n station: 'Grouped Items',\n bytes: totalBytesGroupedSlice,\n belongsHere: data.results.filter(result => !topDataBytes.map(item => item.station).includes(result.network + '.' + result.station)).map(result => result.network + '.' + result.station),\n };\n if (groupedSliceBytes.bytes > 0) {\n topDataBytes.push({station: groupedSliceBytes.station, bytes: groupedSliceBytes.bytes});\n }\n const pieDataBytes = {\n values: topDataBytes.map(item => item.bytes),\n labels: topDataBytes.map(item => item.station),\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: topDataBytes.map(result => result.station === 'Grouped Items' ? groupedSliceBytes.belongsHere.join('
') : ''),\n sort: false\n };\n const pieLayoutBytes = {\n title: 'Total number of bytes',\n annotations: [\n {\n xshift: +10,\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the amount of data delivered during
the use of EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-bytes', [pieDataBytes], pieLayoutBytes, {displaylogo: false});\n\n // requests plot\n // show topN items and group the rest\n const topDataRequests = data.results.sort((a, b) => b.nb_reqs - a.nb_reqs).slice(0, topN).map(result => ({\n station: result.network + '.' + result.station,\n nb_reqs: result.nb_reqs\n }));\n topDataRequests.sort((a, b) => a.station.localeCompare(b.station));\n const totalRequestsGroupedSlice = data.results.reduce((total, result) => {\n if (!topDataRequests.map(item => item.station).includes(result.network + '.' + result.station)) {\n return total + result.nb_reqs;\n }\n return total;\n }, 0);\n const groupedSliceRequests = {\n station: 'Grouped Items',\n nb_reqs: totalRequestsGroupedSlice,\n belongsHere: data.results.filter(result => !topDataRequests.map(item => item.station).includes(result.network + '.' + result.station)).map(result => result.network + '.' + result.station),\n };\n if (groupedSliceRequests.nb_reqs > 0) {\n topDataRequests.push({station: groupedSliceRequests.station, nb_reqs: groupedSliceRequests.nb_reqs});\n }\n const pieDataRequests = {\n values: topDataRequests.map(item => item.nb_reqs),\n labels: topDataRequests.map(item => item.station),\n type: 'pie',\n texttemplate: '%{value:.3s}',\n hovertemplate: '%{label}
%{value:.3s}
%{percent}%{customdata}',\n customdata: topDataRequests.map(result => result.station === 'Grouped Items' ? groupedSliceRequests.belongsHere.join('
') : ''),\n sort: false\n };\n const pieLayoutRequests = {\n title: 'Total number of requests',\n annotations: [\n {\n y: -0.25,\n xref: 'paper',\n yref: 'paper',\n text: 'The above plot shows the number of requests made to
the EIDA services in the specified time period.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n };\n Plotly.newPlot('total-requests', [pieDataRequests], pieLayoutRequests, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function monthAndYearPlots(details = \"month\") {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}${sta ? `&station=${sta}` : ''}&level=station&details=${details}&hllvalues=true&format=json`;\n fetch(url, {method: 'POST', body: file})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n }\n else if (response.status >= 400 && response.status < 500) {\n if (details === \"month\") {\n let monthplots = document.getElementById('error-month');\n monthplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n else {\n let yearplots = document.getElementById('error-year');\n yearplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n const stationsSet = Array.from(new Set(data.results.map(result => result.station)));\n // calculate hll values for total clients all stations bar plot\n let hlls = {};\n data.results.forEach(result => {\n if (!hlls[result.date]) {\n hlls[result.date] = new HLL(11, 5);\n }\n hlls[result.date].union(fromHexString(result.hll_clients).hllSet);\n });\n // show clients at first\n const barData = stationsSet.map(station => {\n const stationResults = data.results.filter(result => result.station === station);\n return {\n x: stationResults.map(result => result.date),\n y1: stationResults.map(result => result.clients),\n y2: stationResults.map(result => result.bytes),\n y3: stationResults.map(result => result.nb_reqs),\n name: stationResults[0].network + '.' + stationResults[0].station,\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n }\n });\n\n // show topN items and group the rest for clients\n barData.sort((a, b) => {\n const totalA = a.y1.reduce((sum, value) => sum + value, 0);\n const totalB = b.y1.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataClients = {\n x: [],\n y1: {},\n name: 'Grouped Items',\n type: 'scatter',\n mode: 'lines+markers',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataClients = [...barData];\n if (barDataClients.length > topN) {\n for (let i = topN; i < barDataClients.length; i++) {\n const item = barDataClients[i];\n item.x.forEach((date, i) => {\n if (!otherDataClients.x.includes(date)) {\n otherDataClients.x.push(date);\n }\n otherDataClients.y1[date] = (otherDataClients.y1[date] || 0) + item.y1[i];\n });\n }\n otherDataClients.y1 = Object.values(otherDataClients.y1);\n barDataClients.splice(topN, barDataClients.length - topN);\n }\n barDataClients.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataClients.x.length > 0) {\n barDataClients.push(otherDataClients);\n }\n // needed for clients of all specified stations plot\n let clientsAllStations = Array(barDataClients.length).fill([]);\n clientsAllStations[barDataClients.length - 1] = Object.values(hlls).map(hll => hll.cardinality());\n\n // show topN items and group the rest for bytes\n barData.sort((a, b) => {\n const totalA = a.y2.reduce((sum, value) => sum + value, 0);\n const totalB = b.y2.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataBytes = {\n x: [],\n y2: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataBytes = [...barData];\n if (barDataBytes.length > topN) {\n for (let i = topN; i < barDataBytes.length; i++) {\n const item = barDataBytes[i];\n item.x.forEach((date, i) => {\n if (!otherDataBytes.x.includes(date)) {\n otherDataBytes.x.push(date);\n }\n otherDataBytes.y2[date] = (otherDataBytes.y2[date] || 0) + item.y2[i];\n });\n }\n otherDataBytes.y2 = Object.values(otherDataBytes.y2);\n barDataBytes.splice(topN, barDataBytes.length - topN);\n }\n barDataBytes.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataBytes.x.length > 0) {\n barDataBytes.push(otherDataBytes);\n }\n\n // show topN items and group the rest for total requests\n barData.sort((a, b) => {\n const totalA = a.y3.reduce((sum, value) => sum + value, 0);\n const totalB = b.y3.reduce((sum, value) => sum + value, 0);\n return totalB - totalA;\n });\n let otherDataRequests = {\n x: [],\n y3: {},\n name: 'Grouped Items',\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n };\n let barDataRequests = [...barData];\n if (barDataRequests.length > topN) {\n for (let i = topN; i < barDataRequests.length; i++) {\n const item = barDataRequests[i];\n item.x.forEach((date, i) => {\n if (!otherDataRequests.x.includes(date)) {\n otherDataRequests.x.push(date);\n }\n otherDataRequests.y3[date] = (otherDataRequests.y3[date] || 0) + item.y3[i];\n });\n }\n otherDataRequests.y3 = Object.values(otherDataRequests.y3);\n barDataRequests.splice(topN, barDataRequests.length - topN);\n }\n barDataRequests.sort((a, b) => {\n const nameA = a.name;\n const nameB = b.name;\n return nameA.localeCompare(nameB);\n });\n if (otherDataRequests.x.length > 0) {\n barDataRequests.push(otherDataRequests);\n }\n\n let barLayout = {\n height: 500,\n margin: {\n b: 100\n },\n barmode: 'stack',\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n xaxis: {\n title: details.charAt(0).toUpperCase() + details.slice(1),\n tickmode: 'linear'\n },\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n updatemenus: [{\n buttons: [\n // clients per station button\n {\n args: [\n {\n x: barDataClients.map(bar => bar.x),\n y: barDataClients.map(bar => bar.y1),\n name: barDataClients.map(bar => bar.name),\n type: 'scatter',\n hovertemplate: '(%{x}, %{y:.3s})',\n },\n {\n title: 'Number of unique users per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique users'\n },\n showlegend: true,\n }\n ],\n label: 'Unique Users Per station',\n method: 'update'\n },\n // clients all specified stations button\n {\n args: [\n {\n x: [Object.keys(hlls)],\n y: clientsAllStations,\n name: Array(clientsAllStations.length).fill(\"\"),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of unique users of all specified stations per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of unique users of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Unique Users'\n },\n showlegend: false,\n }\n ],\n label: 'Unique Users All Stations',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n x: barDataBytes.map(bar => bar.x).reverse(),\n y: barDataBytes.map(bar => bar.y2).reverse(),\n name: barDataBytes.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of bytes per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the amount of data delivered during the use of EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Bytes'\n },\n showlegend: true,\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n x: barDataRequests.map(bar => bar.x).reverse(),\n y: barDataRequests.map(bar => bar.y3).reverse(),\n name: barDataRequests.map(bar => bar.name).reverse(),\n type: 'bar',\n hovertemplate: '(%{x}, %{value:.3s})',\n },\n {\n title: 'Number of requests per '+details,\n annotations: [\n {\n y: -0.27,\n yref: 'paper',\n xref: 'paper',\n text: `The above plot shows the number of requests made to the EIDA services per ${details}.${details === \"year\" ? ' Only months that were specified are included.' : ''}<\\i>`,\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n yaxis: {\n title: 'Requests'\n },\n showlegend: true,\n }\n ],\n label: 'Requests',\n method: 'update'\n },\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n if (details === \"year\") {\n barLayout.xaxis[\"dtick\"] = 1;\n }\n else if (details === \"month\") {\n barLayout.xaxis[\"dtick\"] = \"M1\";\n }\n Plotly.newPlot(details+'-plots', barDataClients.map(bar => ({x: bar.x, y: bar.y1, name: bar.name, type: bar.type, mode: bar.mode, hovertemplate: bar.hovertemplate})), barLayout, {displaylogo: false});\n })\n .catch((error) => console.log(error));\n }\n\n function mapPlots() {\n const url = `https://ws.resif.fr/eidaws/statistics/1/dataselect/restricted?start=${startTime}${endTime ? `&end=${endTime}` : ''}${node ? `&node=${node}` : ''}${net ? `&network=${net}` : ''}${sta ? `&station=${sta}` : ''}&level=station&details=country&hllvalues=true&format=json`;\n fetch(url, {method: 'POST', body: file})\n .then((response) => {\n if (response.ok) {\n return response.json();\n }\n else {\n response.text().then(errorMessage => {\n if (errorMessage.includes('Internal') || errorMessage.includes('Time-out')) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = \"Service is temporarily unavailable. Please try again.\";\n }\n else if (response.status >= 400 && response.status < 500) {\n let mapplots = document.getElementById('error-map');\n mapplots.innerHTML = errorMessage.match(/

(.*?)<\\/p>/)[0];\n }\n });\n throw Error(response.statusText);\n }\n })\n .then((data) => {\n // aggregate the results per country\n let aggregatedResults = data.results.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n // convert ISO-2 to ISO-3 country codes\n const iso2ToIso3 = require('country-iso-2-to-3');\n const countryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n\n // show clients to all nodes at first\n const mapData = [{\n locationmode: 'ISO-3',\n locations: countryCodesISO3,\n z: Object.values(aggregatedResults).map(result => result.clients),\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n let mapLayout = {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n width: 1000,\n mapbox: {\n style: \"open-street-map\",\n center: {lon: 0, lat: 20},\n zoom: 0\n },\n updatemenus: [{\n buttons: [\n // clients button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.clients)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of unique users per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of unique users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Unique Users',\n method: 'update'\n },\n // bytes button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.bytes)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of bytes per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the amount of data delivered to users of EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Bytes',\n method: 'update'\n },\n // requests button\n {\n args: [\n {\n z: [Object.values(aggregatedResults).map(result => result.nb_reqs)],\n type: 'choroplethmapbox',\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true\n },\n {\n title: 'Number of requests per country',\n annotations: [\n {\n y: -0.15,\n yref: 'paper',\n xref: 'paper',\n text: 'The above plot shows the number of requests made to the EIDA services from each country.<\\i>',\n showarrow: false,\n font: {\n family: 'Arial',\n size: 12,\n color: 'black'\n }\n }\n ],\n }\n ],\n label: 'Requests',\n method: 'update'\n },\n ],\n direction: 'down',\n type: 'buttons'\n }]\n };\n Plotly.newPlot('country-plots', mapData, mapLayout, {displaylogo: false});\n const stationsSorted = Array.from(new Set(data.results.map(result => result.network ? result.network + '.' + result.station : result.station))).sort((a, b) => a.localeCompare(b));\n let stationCheckboxes = stationsSorted.map((station, index) => (\n

\n \n \n
\n ));\n const stationCheckboxesContainer = document.getElementById('nns-checkboxes');\n stationCheckboxesContainer.innerHTML = '';\n ReactDOM.createRoot(stationCheckboxesContainer).render(stationCheckboxes);\n const mapAndBoxes = document.getElementById('mapAndBoxes');\n mapAndBoxes.style.backgroundColor = 'white';\n let lastClickedTime = 0;\n let lastClickedCheckbox = null;\n function handleCheckboxClick(event) {\n // first define checkboxes behavior\n const checkbox = event.target;\n const currentTime = new Date().getTime();\n const timeDiff = currentTime - lastClickedTime;\n const checkboxes = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]');\n const checkedCount = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked').length;\n if (checkbox === lastClickedCheckbox && timeDiff < 300) {\n if (checkedCount === 1 && checkbox.checked) {\n checkboxes.forEach((cb) => {\n cb.checked = true;\n });\n }\n else {\n checkboxes.forEach((cb) => {\n cb.checked = (cb === checkbox);\n });\n }\n }\n lastClickedCheckbox = checkbox;\n lastClickedTime = currentTime;\n // now update the plot with appropriate data\n const checked = document.querySelectorAll('#nns-checkboxes input[type=\"checkbox\"]:checked');\n const selectedStations = [];\n checked.forEach((cb) => {\n selectedStations.push(cb.value);\n })\n const filteredData = data.results.filter((result) => selectedStations.includes(result.station));\n aggregatedResults = filteredData.reduce((aggregate, result) => {\n if (!aggregate[result.country]) {\n aggregate[result.country] = {\n country: result.country,\n clients: new HLL(11, 5),\n bytes: 0,\n nb_reqs: 0\n };\n }\n aggregate[result.country].clients.union(fromHexString(result.hll_clients).hllSet);\n aggregate[result.country].bytes += result.bytes;\n aggregate[result.country].nb_reqs += result.nb_reqs;\n return aggregate;\n }, {});\n for (const country in aggregatedResults) {\n aggregatedResults[country].clients = aggregatedResults[country].clients.cardinality();\n }\n const newCountryCodesISO3 = Object.values(aggregatedResults).map(result => result.country).map(code => iso2ToIso3(code));\n const activeButtonIndex = mapLayout.updatemenus[0].active;\n const zValues = Object.values(aggregatedResults).map(result => {\n if (activeButtonIndex === 0 || activeButtonIndex === undefined) {\n return result.clients;\n } else if (activeButtonIndex === 1) {\n return result.bytes;\n } else if (activeButtonIndex === 2) {\n return result.nb_reqs;\n }\n });\n const newMapData = [{\n locationmode: 'ISO-3',\n locations: newCountryCodesISO3,\n z: zValues,\n type: 'choroplethmapbox',\n geojson: new URL('./world-countries.json', import.meta.url).href,\n colorscale: 'Viridis',\n autocolorscale: false,\n reversescale: true,\n hovertemplate: '%{z:.3s}%{location}'\n }];\n mapLayout.updatemenus[0].buttons.forEach((button, index) => {\n if (button && index === 0) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.clients)]\n } else if (button && index === 1) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.bytes)]\n } else if (button && index === 2) {\n button.args[0].z = [Object.values(aggregatedResults).map(result => result.nb_reqs)]\n }\n });\n Plotly.react('country-plots', newMapData, mapLayout);\n }\n })\n .catch((error) => console.log(error))\n .finally(() => {\n // remove loading message\n clearInterval(intervalId);\n loadingMsg.innerHTML = \"\";\n });\n }\n}\n","const 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","import React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport './index.css';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n \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":["module","exports","HLL","fromHexString","string","arrayBuffer","hex","length","substring","ArrayBuffer","byteView","Uint8Array","i","byteString","parseInt","hexToArrayBuffer","parseSet","DEFAULT_REGISTER_WIDTH","DEFAULT_LOG2M","LOWER","UPPER","log2m","registerWidth","self","arguments","Error","m","registers","push","maxRegisterValue","registerIndexMask","L","TWO_TO_L","Math","pow","LARGE_ESTIMATOR_CUTOFF","SMALL_ESTIMATOR_CUTOFF","ALPHA_M_SQUARED","cardinalityAlphaMSquared","rho","value","lsb","LEAST_SIGNIFICANT_BIT","leastSignificantBit","min","addRaw","hashValue","registerIndex","registerValue","longValue","shift","upper","shiftRightUnsignedLong","max","algorithmCardinality","sum","numberOfZeroes","j","estimator","log","cardinality","ceil","cardinalityError","sqrt","union","otherSet","selfRegisterCount","otherRegisterCount","registerCount","selfRegisters","otherRegisters","fold","clone","hllSet","foldedRegisters","difference","cloneRegisters","clear","toHexString","writer","ByteWriter","addBits","bytes","byteValue","toString","hexfromByteArray","getBytes","BITS_IN_BYTE","schema1","version","algorithm","lowerNibble","schema1_empty","UNDEFINED","EMPTY","schema1_explicit","EXPLICIT","schema1_sparse","SPARSE","schema1_full","FULL","schema1_parameters","parameterByte","getBitSequenceFromByte","parameters","byteOffset","getBitSequenceValueFromByteArray","offset","bitOffset","floor","key","common_sparse","extractLong","common_explicit","startByteIndex","lower","start","byteStartIndex","byteEndIndex","bitStartIndex","bitEndIndex","result","currentByte","remainingBitsInByteCount","this","bitCount","remainingBitsInValueCount","writeBitCount","copyBytes","slice","u","b","Symbol","for","c","d","e","f","g","h","k","l","n","p","q","t","v","a","r","$$typeof","type","Object","defineProperty","ref","current","_slicedToArray","require","_ref","controlled","defaultProp","default","isControlled","name","state","React","useRef","undefined","_React$useState","useState","_React$useState2","valueState","setValue","process","setValueIfUncontrolled","useCallback","newValue","obj","nodeInterop","__esModule","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","prototype","hasOwnProperty","call","desc","set","_interopRequireWildcard","WeakMap","cacheBabelInterop","cacheNodeInterop","_default","window","useLayoutEffect","useEffect","_interopRequireDefault","fn","_useEnhancedEffect","apply","_len","refs","Array","_key","useMemo","every","instance","forEach","_setRef","idOverride","maybeReactUseId","reactId","defaultId","setDefaultId","id","concat","globalId","useGlobalId","countryISOMapping","AF","AX","AL","DZ","AS","AD","AO","AI","AQ","AG","AR","AM","AW","AU","AT","AZ","BS","BH","BD","BB","BY","BE","BZ","BJ","BM","BT","BO","BA","BW","BV","BR","VG","IO","BN","BG","BF","BI","KH","CM","CA","CV","KY","CF","TD","CL","CN","HK","MO","CX","CC","CO","KM","CG","CD","CK","CR","CI","HR","CU","CY","CZ","DK","DJ","DM","DO","EC","EG","SV","GQ","ER","EE","ET","FK","FO","FJ","FI","FR","GF","PF","TF","GA","GM","GE","DE","GH","GI","GR","GL","GD","GP","GU","GT","GG","GN","GW","GY","HT","HM","VA","HN","HU","IS","IN","ID","IR","IQ","IE","IM","IL","IT","JM","JP","JE","JO","KZ","KE","KI","KP","KR","KW","KG","LA","LV","LB","LS","LR","LY","LI","LT","LU","MK","MG","MW","MY","MV","ML","MT","MH","MQ","MR","MU","YT","MX","FM","MD","MC","MN","ME","MS","MA","MZ","MM","NA","NR","NP","NL","AN","NC","NZ","NI","NE","NG","NU","NF","MP","NO","OM","PK","PW","PS","PA","PG","PY","PE","PH","PN","PL","PT","PR","QA","RE","RO","RU","RW","BL","SH","KN","LC","MF","PM","VC","WS","SM","ST","SA","SN","RS","SC","SL","SG","SK","SI","SB","SO","ZA","GS","SS","ES","LK","SD","SR","SJ","SZ","SE","CH","SY","TW","TJ","TZ","TH","TL","TG","TK","TO","TT","TN","TR","TM","TC","TV","UG","UA","AE","GB","US","UM","UY","UZ","VU","VE","VN","VI","WF","EH","YE","ZM","ZW","XK","countryCode","s","o","$","y","M","weekdays","split","months","ordinal","String","join","z","utcOffset","abs","date","year","month","add","w","D","ms","Q","toLowerCase","replace","_","S","args","O","locale","$L","utc","$u","x","$x","$offset","parse","$d","Date","NaN","test","match","UTC","init","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","unix","valueOf","getTime","toDate","$locale","weekStart","$set","daysInMonth","Number","round","subtract","format","invalidDate","meridiem","YY","YYYY","MMM","monthsShort","MMMM","DD","dd","weekdaysMin","ddd","weekdaysShort","dddd","H","HH","hh","A","mm","ss","SSS","Z","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","T","extend","$i","isDayjs","en","Ls","LTS","LL","LLL","LLLL","zone","indexOf","afternoon","milliseconds","Do","day","map","Y","ZZ","formats","toUpperCase","regex","parser","exec","hours","customParseFormat","parseTwoDigitYear","minutes","seconds","isBetween","week","yearStart","weeks","reactIs","REACT_STATICS","childContextTypes","contextType","contextTypes","defaultProps","displayName","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","KNOWN_STATICS","caller","callee","arity","MEMO_STATICS","compare","TYPE_STATICS","getStatics","component","isMemo","ForwardRef","render","Memo","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","targetStatics","sourceStatics","descriptor","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","Fragment","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","factory","__webpack_modules__","__unused_webpack_module","__unused_webpack_exports","__webpack_require__","Lib","rules","selector","fullSelector","addStyleRule","Plotly","register","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","props","propName","componentName","location","propFullName","secret","err","getShim","isRequired","ReactPropTypes","array","bigint","bool","func","number","object","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","aa","ca","encodeURIComponent","da","Set","ea","fa","ha","ia","document","createElement","ja","ka","la","ma","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","ra","sa","ta","pa","isNaN","qa","oa","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ua","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","va","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","iterator","Ka","La","assign","Ma","stack","trim","Na","Oa","prepareStackTrace","Reflect","construct","includes","Pa","tag","Qa","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","constructor","configurable","enumerable","getValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","defaultValue","_wrapperState","initialChecked","Za","initialValue","ab","bb","cb","db","ownerDocument","eb","isArray","fb","options","selected","defaultSelected","disabled","gb","dangerouslySetInnerHTML","children","hb","ib","jb","textContent","kb","lb","mb","nb","namespaceURI","innerHTML","firstChild","removeChild","appendChild","MSApp","execUnsafeLocalFunction","ob","lastChild","nodeType","nodeValue","pb","animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","qb","rb","sb","style","setProperty","charAt","tb","menuitem","area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr","ub","vb","is","wb","xb","target","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","addEventListener","removeEventListener","Nb","onError","Ob","Pb","Qb","Rb","Sb","Tb","Vb","alternate","return","flags","Wb","memoizedState","dehydrated","Xb","Zb","child","sibling","Yb","$b","ac","unstable_scheduleCallback","bc","unstable_cancelCallback","cc","unstable_shouldYield","dc","unstable_requestPaint","B","unstable_now","ec","unstable_getCurrentPriorityLevel","fc","unstable_ImmediatePriority","gc","unstable_UserBlockingPriority","hc","unstable_NormalPriority","ic","unstable_LowPriority","jc","unstable_IdlePriority","kc","lc","oc","clz32","pc","qc","LN2","rc","sc","tc","uc","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","vc","xc","yc","zc","Ac","eventTimes","Cc","C","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Map","Pc","Qc","Rc","Sc","delete","pointerId","Tc","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","Vc","Wc","priority","isDehydrated","containerInfo","Xc","Yc","dispatchEvent","Zc","$c","ad","bd","cd","ReactCurrentBatchConfig","ed","transition","fd","gd","hd","Uc","stopPropagation","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","now","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","data","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","fromCharCode","code","repeat","which","Rd","Td","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","ae","be","documentMode","ce","de","ee","fe","ge","he","ie","le","color","datetime","email","password","range","search","tel","text","time","url","me","ne","oe","event","listeners","pe","qe","re","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","detachEvent","Be","Ce","attachEvent","De","Ee","Fe","He","Ie","Je","Ke","nextSibling","Le","contains","compareDocumentPosition","Me","HTMLIFrameElement","contentWindow","href","Ne","contentEditable","Oe","focusedElem","selectionRange","documentElement","end","selectionStart","selectionEnd","defaultView","getSelection","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","focus","Pe","Qe","Re","Se","Te","Ue","Ve","We","animationend","animationiteration","animationstart","transitionend","Xe","Ye","Ze","animation","$e","af","bf","cf","df","ef","ff","gf","hf","lf","mf","nf","Ub","listener","of","pf","qf","rf","random","sf","bind","capture","passive","J","F","tf","uf","parentWindow","vf","wf","na","xa","$a","ba","je","char","ke","unshift","xf","yf","zf","Af","Bf","Cf","Df","Ef","__html","Ff","setTimeout","Gf","clearTimeout","Hf","Promise","Jf","queueMicrotask","resolve","then","catch","If","Kf","Lf","Mf","previousSibling","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","E","G","Vf","Wf","Xf","Yf","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Zf","$f","ag","bg","getChildContext","cg","__reactInternalMemoizedMergedChildContext","dg","eg","fg","gg","hg","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","tg","ug","vg","wg","xg","yg","I","zg","Ag","Bg","deletions","Cg","pendingProps","overflow","treeContext","retryLane","Dg","mode","Eg","Fg","Gg","memoizedProps","Hg","Ig","Jg","Kg","Lg","Mg","Ng","Og","Pg","Qg","Rg","_currentValue","Sg","childLanes","Tg","dependencies","firstContext","lanes","Ug","Vg","context","memoizedValue","next","Wg","Xg","Yg","interleaved","Zg","ah","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","bh","ch","eventTime","lane","payload","callback","dh","K","eh","fh","gh","ih","jh","Component","kh","nh","isMounted","_reactInternals","enqueueSetState","lh","mh","enqueueReplaceState","enqueueForceUpdate","oh","shouldComponentUpdate","isPureReactComponent","ph","updater","qh","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","rh","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","sh","_owner","_stringRef","th","uh","vh","index","wh","xh","yh","implementation","zh","Ah","done","Bh","Ch","Dh","Eh","Fh","Gh","Hh","Ih","tagName","Jh","Kh","Lh","Mh","revealOrder","Nh","Oh","_workInProgressVersionPrimary","Ph","ReactCurrentDispatcher","Qh","Rh","N","P","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","baseQueue","queue","di","ei","fi","lastRenderedReducer","action","hasEagerState","eagerState","lastRenderedState","dispatch","gi","hi","ii","ji","ki","getSnapshot","li","mi","R","ni","lastEffect","stores","oi","pi","qi","ri","create","destroy","deps","si","ti","ui","vi","wi","xi","yi","zi","Ai","Bi","Ci","Di","Ei","Fi","Gi","Hi","Ii","Ji","readContext","useContext","useImperativeHandle","useInsertionEffect","useReducer","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","Ki","message","digest","Li","Mi","console","error","Ni","Oi","Pi","Qi","Ri","componentDidCatch","Si","componentStack","Ti","pingCache","Ui","Vi","Wi","Xi","ReactCurrentOwner","Yi","Zi","aj","bj","cj","dj","ej","baseLanes","cachePool","transitions","fj","gj","hj","ij","jj","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","kj","lj","pendingContext","mj","Aj","Bj","Cj","Dj","nj","oj","pj","fallback","qj","rj","tj","dataset","dgst","uj","vj","_reactRetry","sj","subtreeFlags","wj","xj","isBackwards","rendering","renderingStartTime","last","tail","tailMode","yj","Ej","Fj","Gj","wasMultiple","multiple","suppressHydrationWarning","onClick","onclick","size","createElementNS","autoFocus","createTextNode","Hj","Ij","Jj","Kj","U","Lj","WeakSet","V","Mj","W","Nj","Oj","Qj","Rj","Sj","Tj","Uj","Vj","Wj","insertBefore","_reactRootContainer","Xj","X","Yj","Zj","ak","onCommitFiberUnmount","componentWillUnmount","bk","ck","dk","ek","fk","isHidden","gk","hk","display","ik","jk","kk","lk","__reactInternalSnapshotBeforeUpdate","src","Wk","mk","nk","ok","pk","qk","rk","sk","tk","uk","Infinity","vk","wk","xk","yk","zk","Ak","Bk","Ck","Dk","Ek","callbackNode","expirationTimes","expiredLanes","wc","callbackPriority","ig","Fk","Gk","Hk","Ik","Jk","Kk","Lk","Mk","Nk","Ok","Pk","finishedWork","finishedLanes","Qk","timeoutHandle","Rk","Sk","Tk","Uk","Vk","mutableReadLanes","Bc","Pj","onCommitFiberRoot","mc","onRecoverableError","Xk","onPostCommitFiberRoot","Yk","Zk","al","isReactComponent","pendingChildren","bl","mutableSourceEagerHydrationData","cl","pendingSuspenseBoundaries","el","fl","gl","hl","il","jl","zj","$k","ll","reportError","ml","_internalRoot","nl","ol","pl","ql","sl","rl","unmount","unstable_scheduleHydration","splice","querySelectorAll","JSON","stringify","form","tl","usingClientEntryPoint","Events","ul","findFiberByHostInstance","bundleType","rendererPackageName","vl","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","wl","isDisabled","supportsFiber","inject","createPortal","dl","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","_source","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","__self","__source","jsx","jsxs","setState","forceUpdate","escape","_status","_result","Children","count","toArray","only","PureComponent","cloneElement","createContext","_currentValue2","_threadCount","Provider","Consumer","_defaultValue","_globalName","createFactory","createRef","forwardRef","isValidElement","lazy","memo","startTransition","unstable_act","pop","sortIndex","performance","setImmediate","startTime","expirationTime","priorityLevel","navigator","scheduling","isInputPending","MessageChannel","port2","port1","onmessage","postMessage","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","delay","unstable_wrapCallback","arr","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","TypeError","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","arrayLikeToArray","minLen","from","__webpack_module_cache__","moduleId","cachedModule","getter","leafPrototypes","getProto","__proto__","ns","def","definition","chunkId","all","reduce","promises","miniCssF","prop","inProgress","dataWebpackPrefix","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","nc","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","baseURI","installedChunks","installedChunkData","promise","reject","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","_typeof","_toPropertyKey","arg","hint","prim","toPrimitive","res","_defineProperty","writable","ownKeys","enumerableOnly","symbols","filter","sym","_objectSpread2","getOwnPropertyDescriptors","defineProperties","_regeneratorRuntime","Op","hasOwn","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","NativeIteratorPrototype","values","Gp","defineIteratorMethods","method","_invoke","AsyncIterator","PromiseImpl","invoke","record","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","awrap","async","iter","val","reverse","skipTempReset","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","_arrayLikeToArray","_unsupportedIterableToArray","_objectWithoutPropertiesLoose","excluded","sourceKeys","resolveProps","output","_objectSpread","defaultSlotProps","slotProps","slotPropName","composeClasses","slots","getUtilityClass","classes","slot","acc","utilityClass","formatMuiErrorMessage","clamp","decomposeColor","RegExp","colors","hexToRgb","marker","_formatMuiErrorMessage","colorSpace","parseFloat","recomposeColor","getLuminance","rgb","hslToRgb","toFixed","alpha","darken","coefficient","lighten","memoize","reactPropsRegex","isPropValid","charCodeAt","StyleSheet","_this","_insertTag","before","tags","insertionPoint","prepend","container","isSpeedy","speedy","ctr","nonce","_proto","nodes","insert","rule","createStyleElement","sheet","styleSheets","ownerNode","sheetForTag","insertRule","cssRules","flush","pattern","replacement","indexof","charat","substr","begin","strlen","sizeof","append","line","column","position","character","characters","root","parent","copy","peek","caret","token","alloc","dealloc","delimit","delimiter","whitespace","escaping","commenter","identifier","MOZ","WEBKIT","COMMENT","RULESET","DECLARATION","KEYFRAMES","serialize","compile","rulesets","pseudo","points","declarations","atrule","property","previous","variable","scanning","ampersand","reference","comment","declaration","ruleset","post","identifierWithPointTracking","getRules","parsed","toRules","fixedElements","compat","isImplicitRule","parentRules","removeLabel","prefix","hash","defaultStylisPlugins","combine","createCache","ssrStyles","stylisPlugins","_insert","inserted","nodesToHydrate","attrib","currentSheet","finalizingPlugins","serializer","collection","middleware","serialized","shouldCache","styles","stylis","registered","unitlessKeys","msGridRow","msGridRowSpan","msGridColumn","msGridColumnSpan","WebkitLineClamp","hyphenateRegex","animationRegex","isCustomProperty","isProcessableValue","processStyleName","styleName","processStyleValue","p1","p2","cursor","unitless","handleInterpolation","mergedProps","interpolation","__emotion_styles","anim","interpolated","createStringFromObject","previousCursor","cached","labelPattern","serializeStyles","stringMode","strings","raw","lastIndex","identifierName","str","hashString","useInsertionEffectAlwaysWithSyncFallback","useInsertionEffectWithLayoutFallback","EmotionCacheContext","HTMLElement","withEmotionCache","ThemeContext","registerStyles","isStringTag","className","insertStyles","testOmitPropsOnStringTag","testOmitPropsOnComponent","getDefaultShouldForwardProp","composeShouldForwardProps","isReal","shouldForwardProp","optionsShouldForwardProp","__emotion_forwardProp","Insertion","newStyled","createStyled","targetClassName","__emotion_real","baseTag","__emotion_base","label","defaultShouldForwardProp","shouldUseAs","Styled","FinalTag","as","classInterpolations","theme","registeredStyles","classNames","rawClassName","getRegisteredStyles","finalShouldForwardProp","newProps","withComponent","nextTag","nextOptions","_extends","isPlainObject","item","deepClone","deepmerge","_excluded","sortBreakpointsValues","breakpointsAsArray","sort","breakpoint1","breakpoint2","borderRadius","xs","sm","xl","defaultBreakpoints","up","handleBreakpoints","propValue","styleFromPropValue","themeBreakpoints","breakpoints","breakpoint","cssKey","createEmptyBreakpointObject","_breakpointsInput$key","breakpointsInput","removeUnusedBreakpoints","breakpointKeys","breakpointOutput","resolveBreakpointValues","breakpointValues","breakpointsKeys","computeBreakpointsBase","capitalize","getPath","path","checkVars","vars","getStyleValue","themeMapping","transform","propValueFinal","userValue","_options$cssProperty","cssProperty","themeKey","filterProps","properties","directions","aliases","marginX","marginY","paddingX","paddingY","getCssProperties","_prop$split2","direction","dir","marginKeys","paddingKeys","spacingKeys","createUnaryUnit","_getPath","themeSpacing","createUnarySpacing","transformer","transformed","resolveCssProperty","cssProperties","getStyleFromPropValue","merge","margin","padding","spacing","handlers","borderTransform","border","borderTop","borderRight","borderBottom","borderLeft","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","compose","gap","columnGap","rowGap","paletteTransform","sizingTransform","maxWidth","_props$theme","_props$theme$breakpoi","_props$theme$breakpoi2","breakpointsValues","minWidth","maxHeight","minHeight","bgcolor","backgroundColor","pt","pr","px","py","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd","mt","mr","mx","my","marginTop","marginRight","marginBottom","marginLeft","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd","displayPrint","textOverflow","visibility","whiteSpace","flexBasis","flexDirection","flexWrap","justifyContent","alignItems","alignContent","alignSelf","justifyItems","justifySelf","gridAutoFlow","gridAutoColumns","gridAutoRows","gridTemplateColumns","gridTemplateRows","gridTemplateAreas","right","bottom","boxShadow","boxSizing","fontFamily","fontSize","fontStyle","letterSpacing","textTransform","textAlign","typography","styleFunctionSx","getThemeValue","config","_props","_theme$unstable_sxCon","_ref4","sx","_ref4$theme","unstable_sxConfig","defaultSxConfig","traverse","sxInput","sxObject","emptyBreakpoints","css","styleKey","maybeFn","objects","allKeys","objectsHaveSameKeys","unstable_createStyleFunctionSx","_options$breakpoints","_options$palette","palette","paletteInput","spacingInput","_options$shape","shapeInput","other","_breakpoints$values","_breakpoints$unit","unit","_breakpoints$step","step","sortedValues","down","between","endIndex","not","keyIndex","createBreakpoints","mui","argsInput","argument","createSpacing","muiTheme","components","unstable_sx","isEmpty","propsToClassKey","variant","classKey","systemDefaultTheme","createTheme","resolveTheme","defaultTheme","themeId","createMixins","_toolbar","toolbar","black","white","A100","A200","A400","A700","light","primary","secondary","divider","background","paper","common","active","hover","hoverOpacity","selectedOpacity","disabledBackground","disabledOpacity","focusOpacity","activatedOpacity","dark","icon","addLightOrDark","intent","shade","tonalOffset","tonalOffsetLight","tonalOffsetDark","main","createPalette","_palette$mode","_palette$contrastThre","contrastThreshold","_palette$tonalOffset","blue","getDefaultPrimary","purple","getDefaultSecondary","red","getDefaultError","lightBlue","getDefaultInfo","success","green","getDefaultSuccess","warning","orange","getDefaultWarning","getContrastText","contrastText","foreground","lumA","lumB","getContrastRatio","augmentColor","_ref$mainShade","mainShade","_ref$lightShade","lightShade","_ref$darkShade","darkShade","modes","grey","caseAllCaps","defaultFontFamily","createTypography","_ref$fontFamily","_ref$fontSize","_ref$fontWeightLight","fontWeightLight","_ref$fontWeightRegula","fontWeightRegular","_ref$fontWeightMedium","fontWeightMedium","_ref$fontWeightBold","fontWeightBold","_ref$htmlFontSize","htmlFontSize","allVariants","pxToRem2","pxToRem","coef","buildVariant","casing","variants","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","caption","overline","inherit","createShadow","easing","easeInOut","easeOut","easeIn","sharp","duration","shortest","shorter","short","standard","complex","enteringScreen","leavingScreen","formatMs","getAutoHeightDuration","constant","createTransitions","inputTransitions","mergedEasing","mergedDuration","_options$duration","durationOption","_options$easing","easingOption","_options$delay","animatedProp","mobileStepper","fab","speedDial","appBar","drawer","modal","snackbar","tooltip","_options$mixins","mixinsInput","_options$transitions","transitionsInput","_options$typography","typographyInput","systemTheme","systemCreateTheme","shadows","rootShouldForwardProp","slotShouldForwardProp","styled","_input$defaultTheme","_input$rootShouldForw","_input$slotShouldForw","systemSx","__mui_systemSx","inputOptions","processor","processStyles","componentSlot","inputSkipVariantsResolver","skipVariantsResolver","inputSkipSx","skipSx","overridesResolver","shouldForwardPropOption","defaultStyledResolver","emStyled","styledEngineStyled","muiStyledResolver","styleArg","expressions","expressionsWithDefaultTheme","stylesArg","transformedStyleArg","styleOverrides","getStyleOverrides","resolvedStyleOverrides","entries","_ref2","_ref3","slotKey","slotStyle","_theme$components","_theme$components$nam","_props$ownerState","ownerState","variantsStyles","themeVariants","themeVariant","isMatch","variantsResolver","getVariantStyles","numOfCustomFnsApplied","placeholders","fill","_toConsumableArray","muiName","withConfig","THEME_ID","getThemeProps","params","contextTheme","useThemeWithoutDefault","useThemeProps","useTheme","systemUseThemeProps","setRef","useForkRef","useEventCallback","useEnhancedEffect","hadFocusVisibleRecentlyTimeout","hadKeyboardEvent","hadFocusVisibleRecently","inputTypesWhitelist","handleKeyDown","handlePointerDown","handleVisibilityChange","visibilityState","isFocusVisible","matches","readOnly","isContentEditable","focusTriggersKeyboardModality","doc","isFocusVisibleRef","onFocus","onBlur","_taggedTemplateLiteral","freeze","_setPrototypeOf","_inheritsLoose","subClass","superClass","getChildMapping","mapFn","mapper","getProp","getNextChildMapping","nextProps","prevChildMapping","onExited","nextChildMapping","getValueForKey","nextKeysPending","pendingKeys","prevKey","childMapping","nextKey","pendingNextKey","mergeChildMappings","hasPrev","hasNext","prevChild","isLeaving","in","exit","enter","TransitionGroup","_React$Component","handleExited","ReferenceError","_assertThisInitialized","contextValue","isMounting","firstRender","mounted","appear","currentChildMapping","_this$props","childFactory","TransitionGroupContext","Global","sheetRef","rehydrating","querySelector","sheetRefCurrent","nextElementSibling","keyframes","insertable","_props$pulsate","pulsate","rippleX","rippleY","rippleSize","inProp","leaving","setLeaving","rippleClassName","clsx","ripple","rippleVisible","ripplePulsate","rippleStyles","childClassName","childLeaving","childPulsate","timeoutId","_jsx","defaultGenerator","generate","configure","createClassNameGenerator","globalStateClassesMapping","completed","expanded","focused","focusVisible","required","generateUtilityClass","globalStatePrefix","globalStateClass","ClassNameGenerator","generateUtilityClasses","_t","_t2","_t3","_t4","enterKeyframe","_templateObject","exitKeyframe","_templateObject2","pulsateKeyframe","_templateObject3","TouchRippleRoot","pointerEvents","TouchRippleRipple","Ripple","_templateObject4","touchRippleClasses","TouchRipple","inProps","_props$center","center","centerProp","_props$classes","ripples","setRipples","rippleCallback","ignoringMouseDown","startTimer","startTimerCommit","startCommit","oldRipples","_options$pulsate","_options$center","_options$fakeElement","fakeElement","rect","getBoundingClientRect","_ref5","sizeX","clientWidth","sizeY","clientHeight","getButtonBaseUtilityClass","ButtonBaseRoot","_styled","WebkitTapHighlightColor","outline","userSelect","verticalAlign","MozAppearance","WebkitAppearance","textDecoration","borderStyle","buttonBaseClasses","colorAdjust","ButtonBase","_props$centerRipple","centerRipple","_props$component","_props$disabled","_props$disableRipple","disableRipple","_props$disableTouchRi","disableTouchRipple","_props$focusRipple","focusRipple","_props$LinkComponent","LinkComponent","onContextMenu","onDragLeave","onFocusVisible","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchEnd","onTouchMove","onTouchStart","_props$tabIndex","tabIndex","TouchRippleProps","touchRippleRef","buttonRef","rippleRef","handleRippleRef","_useIsFocusVisible","useIsFocusVisible","handleFocusVisible","handleBlurVisible","focusVisibleRef","setFocusVisible","_React$useState4","mountedState","setMountedState","enableTouchRipple","useRippleHandler","rippleAction","eventCallback","skipRippleAction","handleMouseDown","handleContextMenu","handleDragLeave","handleMouseUp","handleMouseLeave","handleTouchStart","handleTouchEnd","handleTouchMove","handleBlur","handleFocus","isNonNativeButton","keydownRef","handleKeyUp","ComponentProp","to","buttonProps","role","handleRef","focusVisibleClassName","composedClasses","useUtilityClasses","_jsxs","getButtonUtilityClass","commonIconStyles","ButtonRoot","colorInherit","disableElevation","fullWidth","_extends2","_theme$palette$getCon","_theme$palette","inheritContainedBackgroundColor","inheritContainedHoverBackgroundColor","primaryChannel","mainChannel","Button","inheritContainedHoverBg","buttonClasses","inheritContainedBg","ButtonStartIcon","startIcon","ButtonEndIcon","endIcon","contextProps","ButtonGroupContext","_props$color","_props$disableElevati","_props$disableFocusRi","disableFocusRipple","endIconProp","_props$fullWidth","_props$size","startIconProp","_props$variant","ownerWindow","debounce","wait","debounced","outerHeightStyle","TextareaAutosize","forwardedRef","onChange","maxRows","_props$minRows","minRows","inputRef","shadowRef","renders","getUpdatedState","computedStyle","getComputedStyle","inputShallow","placeholder","borderBottomWidth","borderTopWidth","innerHeight","scrollHeight","singleRowHeight","outerHeight","updateState","prevState","newState","syncHeight","resizeObserver","handleResize","ReactDOM","syncHeightWithFlushSync","containerWindow","ResizeObserver","observe","disconnect","rows","isHostComponent","formControlState","states","muiFormControl","useFormControl","FormControlContext","GlobalStyles","_props$defaultTheme","globalStyles","themeInput","_ref$defaultTheme","upperTheme","MuiGlobalStyles","SystemGlobalStyles","hasValue","isFilled","SSR","getInputBaseUtilityClass","rootOverridesResolver","formControl","startAdornment","adornedStart","endAdornment","adornedEnd","sizeSmall","multiline","hiddenLabel","inputOverridesResolver","inputSizeSmall","inputMultiline","inputTypeSearch","inputAdornedStart","inputAdornedEnd","inputHiddenLabel","InputBaseRoot","inputBaseClasses","InputBaseComponent","_extends3","inputPlaceholder","placeholderHidden","placeholderVisible","font","animationDuration","WebkitTextFillColor","resize","inputGlobalStyles","InputBase","_slotProps$input","ariaDescribedby","autoComplete","_props$components","_props$componentsProp","componentsProps","disableInjectingGlobalStyles","_props$inputComponent","inputComponent","_props$inputProps","inputProps","inputPropsProp","inputRefProp","_props$multiline","renderSuffix","_props$slotProps","_props$slots","_props$type","valueProp","handleInputRefWarning","handleInputRef","setFocused","fcs","onFilled","onEmpty","checkDirty","InputComponent","setAdornedStart","Boolean","Root","rootProps","Input","onAnimationStart","getInputUtilityClass","InputRoot","inputBaseRootOverridesResolver","disableUnderline","underline","bottomLineColor","onBackgroundChannel","inputUnderline","content","inputClasses","borderBottomStyle","InputInput","InputBaseInput","inputBaseInputOverridesResolver","_slots$root","_slots$input","componentsPropsProp","inputComponentsProps","RootSlot","InputSlot","getFilledInputUtilityClass","FilledInputRoot","_palette","hoverBackground","FilledInput","borderTopLeftRadius","borderTopRightRadius","hoverBg","filledInputClasses","disabledBg","FilledInputInput","WebkitBoxShadow","caretColor","getColorSchemeSelector","filledInputComponentsProps","_span","NotchedOutlineRoot","borderWidth","NotchedOutlineLegend","float","withLabel","notched","getOutlinedInputUtilityClass","OutlinedInputRoot","outlinedInputClasses","notchedOutline","OutlinedInputInput","OutlinedInput","_React$Fragment","filled","getFormLabelUtilityClasses","FormLabelRoot","colorSecondary","formLabelClasses","AsteriskComponent","asterisk","FormLabel","getInputLabelUtilityClasses","InputLabelRoot","shrink","disableAnimation","animated","transformOrigin","_props$disableAnimati","shrinkProp","muiNames","getFormControlUtilityClasses","FormControlRoot","FormControl","_props$error","visuallyFocused","_props$hiddenLabel","_props$margin","_props$required","initialAdornedStart","isMuiElement","initialFilled","setFilled","_React$useState6","focusedState","registerEffect","childContext","getFormHelperTextUtilityClasses","FormHelperTextRoot","contained","formHelperTextClasses","getListUtilityClass","ListRoot","disablePadding","dense","subheader","listStyle","_props$dense","_props$disablePadding","ListContext","getScrollbarSize","documentWidth","innerWidth","nextItem","list","disableListWrap","previousItem","previousElementSibling","textCriteriaMatches","nextFocus","textCriteria","innerText","repeating","moveFocus","currentFocus","disabledItemsFocusable","traversalFunction","wrappedOnce","nextFocusDisabled","hasAttribute","actions","_props$autoFocus","_props$autoFocusItem","autoFocusItem","_props$disabledItemsF","_props$disableListWra","listRef","textCriteriaRef","previousKeyMatched","lastTime","adjustStyleForScrollbar","containerElement","noExplicitWidth","scrollbarSize","activeItemIndex","muiSkipListHighlight","items","newChildProps","List","criteria","lowerKey","currTime","keepFocusOnCurrent","omitEventHandlers","mergeSlotProps","getSlotProps","additionalProps","externalSlotProps","externalForwardedProps","joinedClasses","mergedStyle","internalRef","eventHandlers","excludeKeys","extractEventHandlers","componentsPropsWithoutEventHandlers","otherPropsWithoutEventHandlers","internalSlotProps","resolveComponentProps","componentProps","useSlotProps","_parameters$additiona","rest","resolvedComponentsProps","_mergeSlotProps","otherProps","appendOwnerState","forceReflow","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","initialStatus","appearStatus","unmountOnExit","mountOnEnter","status","nextCallback","updateStatus","prevProps","nextStatus","cancelNextCallback","getTimeouts","mounting","nodeRef","performEnter","performExit","_this2","appearing","maybeNode","maybeAppearing","timeouts","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","_this3","onExit","onExiting","cancel","nextState","setNextCallback","_this4","handler","doesNotHaveTimeoutOrListener","addEndListener","maybeNextCallback","childProps","noop","useThemeSystem","reflow","getTransitionProps","_style$transitionDura","_style$transitionTimi","_props$style","transitionDuration","transitionTimingFunction","transitionDelay","getScale","entering","entered","isWebKit154","userAgent","Grow","_props$appear","_props$timeout","_props$TransitionComp","TransitionComponent","timer","autoTimeout","normalizedTransitionCallback","maybeIsAppearing","handleEntering","handleEnter","isAppearing","_getTransitionProps","handleEntered","handleExiting","handleExit","_getTransitionProps2","muiSupportAuto","createChainedFunction","funcs","_len2","_key2","_props$disablePortal","disablePortal","mountNode","setMountNode","getContainer","_classCallCheck","Constructor","_defineProperties","_createClass","protoProps","staticProps","ariaHidden","show","getPaddingRight","ariaHiddenSiblings","mountElement","currentElement","elementsToExclude","isNotExcludedElement","isNotForbiddenElement","isForbiddenTagName","isInputHidden","isAriaHiddenForbiddenOnElement","findIndexOf","idx","handleContainer","restoreStyle","disableScrollLock","isOverflowing","scrollContainer","DocumentFragment","parentElement","overflowY","overflowX","removeProperty","ModalManager","containers","modals","modalIndex","modalRef","hiddenSiblings","getHiddenSiblings","mount","containerIndex","restore","ariaHiddenState","nextTop","candidatesSelector","defaultGetTabbable","regularTabNodes","orderedTabNodes","nodeTabIndex","tabindexAttr","getTabIndex","getRadio","roving","isNonTabbableRadio","isNodeMatchingSelectorFocusable","documentOrder","defaultIsEnabled","_props$disableAutoFoc","disableAutoFocus","_props$disableEnforce","disableEnforceFocus","_props$disableRestore","disableRestoreFocus","_props$getTabbable","getTabbable","_props$isEnabled","isEnabled","open","ignoreNextEnforceFocus","sentinelStart","sentinelEnd","nodeToRestore","reactFocusEventTarget","activated","rootRef","lastKeydown","contain","rootElement","hasFocus","tabbable","_lastKeydown$current","_lastKeydown$current2","isShiftTab","focusNext","focusPrevious","loopFocus","interval","setInterval","clearInterval","handleFocusSentinel","childrenPropsHandler","getModalUtilityClass","defaultContextValue","disableDefaultClasses","ClassNameConfiguratorContext","useClassNamesOverride","defaultManager","Modal","_props$ariaHidden","_props$closeAfterTran","closeAfterTransition","_props$disableEscapeK","disableEscapeKeyDown","_props$disableScrollL","_props$hideBackdrop","hideBackdrop","_props$keepMounted","keepMounted","_props$manager","manager","managerProp","onBackdropClick","onClose","onTransitionEnter","onTransitionExited","exited","setExited","mountNodeRef","hasTransition","getHasTransition","ariaHiddenProp","getModal","handleMounted","handleOpen","resolvedContainer","isTopModal","handlePortalRef","handleClose","remove","backdrop","BackdropComponent","backdropProps","FocusTrap","Fade","defaultTimeout","transitionProps","webkitTransition","getBackdropUtilityClass","BackdropRoot","invisible","_slotProps$root","_props$invisible","rootSlotProps","ModalRoot","hidden","ModalBackdrop","Backdrop","_slots$backdrop","_slotProps$backdrop","_props$BackdropCompon","BackdropProps","commonProps","BackdropSlot","backdropSlotProps","ModalUnstyled","elevation","getPaperUtilityClass","PaperRoot","square","rounded","_theme$vars$overlays","backgroundImage","getOverlayAlpha","overlays","_props$elevation","_props$square","getPopoverUtilityClass","_excluded2","_excluded3","getOffsetTop","vertical","getOffsetLeft","horizontal","getTransformOriginValue","resolveAnchorEl","anchorEl","PopoverRoot","PopoverPaper","PaperBase","Popover","_slotProps$paper","_slots$paper","_props$anchorOrigin","anchorOrigin","anchorPosition","_props$anchorReferenc","anchorReference","containerProp","_props$marginThreshol","marginThreshold","_props$PaperProps","PaperProps","PaperPropsProp","_props$transformOrigi","_props$transitionDura","transitionDurationProp","_props$TransitionProp","TransitionProps","externalPaperSlotProps","paperRef","handlePaperRef","getAnchorOffset","resolvedAnchorEl","anchorRect","getTransformOrigin","elemRect","getPositioningStyle","offsetWidth","offsetHeight","elemTransformOrigin","heightThreshold","widthThreshold","isPositioned","setIsPositioned","setPositioningStyles","positioning","updatePosition","PaperSlot","paperProps","_useSlotProps","rootSlotPropsProp","getMenuUtilityClass","RTL_ORIGIN","LTR_ORIGIN","MenuRoot","MenuPaper","WebkitOverflowScrolling","MenuMenuList","MenuList","disableAutoFocusItem","_props$MenuListProps","MenuListProps","PopoverClasses","isRtl","menuListActionsRef","getNativeSelectUtilityClasses","nativeSelectSelectStyles","nativeSelectClasses","NativeSelectSelect","select","nativeSelectIconStyles","NativeSelectIcon","iconOpen","IconComponent","useControlled","getSelectUtilityClasses","SelectSelect","selectClasses","SelectIcon","SelectNativeInput","nativeInput","areEqualValues","SelectInput","ariaLabel","autoWidth","defaultOpen","displayEmpty","labelId","_props$MenuProps","MenuProps","onOpen","openProp","renderValue","_props$SelectDisplayP","SelectDisplayProps","tabIndexProp","_useControlled2","setValueState","_useControlled4","openState","setOpenState","displayRef","displayNode","setDisplayNode","isOpenControlled","menuMinWidthState","setMenuMinWidthState","handleDisplayRef","anchorElement","getElementById","isCollapsed","displaySingle","update","childrenArray","handleItemClick","itemIndex","clonedEvent","displayMultiple","computeDisplay","menuMinWidth","buttonId","find","childItem","getSvgIconUtilityClass","SvgIconRoot","_theme$transitions","_theme$transitions$cr","_theme$transitions2","_theme$transitions2$d","_theme$typography","_theme$typography$pxT","_theme$typography2","_theme$typography2$px","_theme$typography3","_theme$typography3$px","_palette$ownerState$c","_palette$ownerState$c2","_palette2","_palette2$action","_palette3","_palette3$action","small","medium","large","SvgIcon","_props$fontSize","htmlColor","_props$inheritViewBox","inheritViewBox","titleAccess","_props$viewBox","viewBox","instanceFontSize","more","focusable","createSvgIcon","styledRootConfig","StyledInput","StyledOutlinedInput","StyledFilledInput","Select","_props$autoWidth","classesProp","_props$defaultOpen","_props$displayEmpty","_props$IconComponent","ArrowDropDownIcon","_props$multiple","_props$native","native","variantProp","NativeSelectInput","outlined","inputComponentRef","getTextFieldUtilityClass","variantComponent","TextFieldRoot","TextField","FormHelperTextProps","helperText","InputLabelProps","InputProps","_props$select","SelectProps","InputMore","helperTextId","inputLabelId","InputElement","InputLabel","htmlFor","FormHelperText","stripDiacritics","normalize","findIndex","comp","defaultFilterOptions","_config$ignoreAccents","ignoreAccents","_config$ignoreCase","ignoreCase","limit","_config$matchFrom","matchFrom","_config$trim","inputValue","getOptionLabel","filteredOptions","option","candidate","createFilterOptions","defaultIsActiveElementInListbox","listboxRef","_listboxRef$current$p","useAutocomplete","_props$unstable_isAct","unstable_isActiveElementInListbox","_props$unstable_class","unstable_classNamePrefix","_props$autoComplete","_props$autoHighlight","autoHighlight","_props$autoSelect","autoSelect","_props$blurOnSelect","blurOnSelect","_props$clearOnBlur","clearOnBlur","freeSolo","_props$clearOnEscape","clearOnEscape","_props$componentName","_props$defaultValue","_props$disableClearab","disableClearable","_props$disableCloseOn","disableCloseOnSelect","disabledProp","_props$filterOptions","filterOptions","_props$filterSelected","filterSelectedOptions","_props$freeSolo","getOptionDisabled","_props$getOptionLabel","getOptionLabelProp","_option$label","groupBy","_props$handleHomeEndK","handleHomeEndKeys","idProp","_props$includeInputIn","includeInputInList","inputValueProp","_props$isOptionEqualT","isOptionEqualToValue","onHighlightChange","onInputChange","_props$openOnFocus","openOnFocus","_props$readOnly","_props$selectOnFocus","selectOnFocus","optionLabel","ignoreFocus","firstFocus","setAnchorEl","focusedTag","setFocusedTag","defaultHighlighted","highlightedIndexRef","setInputValueState","resetInputValue","newInputValue","_useControlled6","_React$useState8","inputPristine","setInputPristine","inputValueIsSelectedValue","popupOpen","value2","previousProps","usePreviousProps","valueChange","listboxAvailable","focusTag","tagToFocus","setHighlightedIndex","_ref2$reason","reason","classList","listboxNode","scrollBottom","elementBottom","offsetTop","changeHighlightedIndex","_ref3$direction","_ref3$reason","nextIndex","validOptionIndex","maxIndex","newIndex","getNextIndex","setSelectionRange","syncHighlightedIndex","value1","previousHighlightedOption","checkHighlightedOptionExists","valueItem","currentOption","optionItem","handleListboxRef","handleValue","details","isTouch","selectNewValue","origin","blur","handleFocusTag","validTagIndex","handleClear","defaultMuiPrevented","handleInputChange","handleOptionMouseMove","handleOptionTouchStart","handleOptionClick","handleTagDelete","handlePopupIndicator","handleClick","handleInputMouseDown","dirty","groupedOptions","group","getRootProps","getInputLabelProps","getInputProps","autoCapitalize","spellCheck","getClearProps","getPopupIndicatorProps","getTagProps","onDelete","getListboxProps","getOptionProps","onMouseMove","getWindow","isHTMLElement","isShadowRoot","ShadowRoot","getUAString","uaData","userAgentData","brands","brand","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","visualViewport","addVisualOffsets","offsetLeft","getWindowScroll","win","pageXOffset","pageYOffset","getNodeName","getDocumentElement","getWindowScrollBarX","isScrollParent","_getComputedStyle","getCompositeRect","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","scroll","offsets","getNodeScroll","clientLeft","clientTop","getLayoutRect","getParentNode","assignedSlot","host","getScrollParent","listScrollParents","_element$ownerDocumen","scrollParent","isBody","updatedList","isTableElement","getTrueOffsetParent","getOffsetParent","isFirefox","currentNode","perspective","willChange","getContainingBlock","auto","basePlacements","clippingParents","viewport","popper","variationPlacements","placement","placements","modifierPhases","modifiers","visited","modifier","requires","requiresIfExists","dep","depModifier","DEFAULT_OPTIONS","strategy","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","orderedModifiers","modifiersData","elements","attributes","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","scrollParents","contextElement","phase","orderModifiers","merged","existing","mergeByName","enabled","_ref$options","effect","cleanupFn","noopFn","_state$elements","rects","_state$orderedModifie","_state$orderedModifie2","_options","onFirstUpdate","getBasePlacement","getVariation","getMainAxisFromPlacement","computeOffsets","basePlacement","variation","commonX","commonY","mainAxis","unsetSides","mapToStyles","_Object$assign2","popperRect","gpuAcceleration","adaptive","roundOffsets","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","heightProp","widthProp","_Object$assign","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","initialStyles","arrow","attribute","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","popperOffsets","getOppositePlacement","matched","getOppositeVariationPlacement","rootNode","getRootNode","isSameNode","rectToClientRect","getClientRectFromMixedType","clippingParent","html","layoutViewport","getViewportRect","getInnerBoundingClientRect","winScroll","scrollWidth","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","mergePaddingObject","paddingObject","expandToHashMap","hashMap","detectOverflow","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","axis","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","_options$allowedAutoP","allPlacements","allowedPlacements","overflows","computeAutoPlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","check","_loop","fittingPlacement","within","mathMax","mathMin","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","maxLen","arrowElement","arrowRect","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","arrowOffsetParent","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","_state$modifiersData$","toPaddingObject","minProp","maxProp","endDiff","startDiff","clientSize","centerToReference","axisProp","centerOffset","_options$element","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","createPopper","_options$scroll","_options$resize","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","applyStyles","flip","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","getPopperUtilityClass","defaultPopperOptions","PopperTooltip","initialPlacement","popperOptions","popperRefProp","popperRef","tooltipRef","ownRef","handlePopperRef","handlePopperRefRef","rtlPlacement","flipPlacement","setPlacement","resolvedAnchorElement","setResolvedAnchorElement","popperModifiers","Popper","_props$direction","_props$placement","_props$popperOptions","_props$transition","_props$slotProps2","_props$slots2","PopperRoot","RootComponent","getListSubheaderUtilityClass","ListSubheaderRoot","disableGutters","gutters","inset","disableSticky","sticky","ListSubheader","_props$disableGutters","_props$disableSticky","_props$inset","getIconButtonUtilityClass","IconButtonRoot","edge","activeChannel","iconButtonClasses","IconButton","_props$edge","getChipUtilityClass","ChipRoot","iconColor","clickable","chipClasses","avatar","deleteIcon","deletable","_ref11","textColor","Chip","defaultAvatarColor","defaultIconColor","contrastTextChannel","selectedChannel","_ref14","_ref15","_ref17","_ref18","_ref19","defaultBorder","ChipLabel","_ref20","isDeleteKeyboardEvent","keyboardEvent","avatarProp","clickableProp","deleteIconProp","iconProp","_props$skipFocusWhenD","skipFocusWhenDisabled","chipRef","handleDeleteIconClick","moreProps","CancelIcon","getAutocompleteUtilityClass","_ClearIcon","_ArrowDropDownIcon","AutocompleteRoot","hasClearIcon","hasPopupIcon","inputFocused","autocompleteClasses","inputRoot","_ref6","_$concat","_$concat2","_$concat3","AutocompleteEndAdornment","AutocompleteClearIndicator","clearIndicator","AutocompletePopupIndicator","_ref7","popupIndicator","popupIndicatorOpen","_ref8","AutocompletePopper","popperDisablePortal","_ref10","AutocompletePaper","Paper","AutocompleteLoading","loading","_ref12","AutocompleteNoOptions","noOptions","_ref13","AutocompleteListbox","listbox","_ariaSelectedTru","_$concat4","AutocompleteGroupLabel","groupLabel","_ref16","AutocompleteGroupUl","groupUl","_slotProps$clearIndic","_slotProps$popper","_slotProps$popupIndic","ChipProps","_props$clearIcon","clearIcon","ClearIcon","_props$clearText","clearText","_props$closeText","closeText","_props$forcePopupIcon","forcePopupIcon","_props$getLimitTagsTe","getLimitTagsText","_props$limitTags","limitTags","_props$ListboxCompone","ListboxComponent","ListboxProps","_props$loading","_props$loadingText","loadingText","_props$noOptionsText","noOptionsText","_props$openText","openText","_props$PaperComponent","PaperComponent","_props$PopperComponen","PopperComponent","_props$popupIcon","popupIcon","renderGroupProp","renderGroup","renderInput","renderOptionProp","renderOption","renderTags","_useAutocomplete","externalListboxRef","_getListboxProps","otherListboxProps","combinedListboxRef","getCustomizedTagProps","props2","renderListOption","optionProps","clearIndicatorSlotProps","paperSlotProps","popperSlotProps","popupIndicatorSlotProps","title","option2","index2","getCircularProgressUtilityClass","SIZE","circularRotateKeyframe","circularDashKeyframe","CircularProgressRoot","CircularProgressSVG","svg","CircularProgressCircle","circle","disableShrink","circleDisableShrink","stroke","CircularProgress","_props$disableShrink","_props$thickness","thickness","_props$value","circleStyle","rootStyle","circumference","PI","cx","cy","extendSxProp","finalSx","inSx","_splitProps","_props$theme$unstable","systemProps","splitProps","getTypographyUtilityClass","TypographyRoot","align","noWrap","gutterBottom","paragraph","defaultVariantMapping","colorTransformations","textPrimary","textSecondary","Typography","themeProps","transformDeprecatedColors","_props$align","_props$gutterBottom","_props$noWrap","_props$paragraph","_props$variantMapping","variantMapping","getFormControlLabelUtilityClasses","FormControlLabelRoot","formControlLabelClasses","labelPlacement","_slotProps$typography","control","disableTypography","labelProp","_props$labelPlacement","requiredProp","controlProps","typographySlotProps","getSwitchBaseUtilityClass","SwitchBaseRoot","SwitchBaseInput","checkedProp","checkedIcon","setCheckedState","hasLabelFor","newChecked","RadioButtonIconRoot","RadioButtonIconBackground","RadioButtonUncheckedIcon","RadioButtonIconDot","RadioButtonCheckedIcon","_props$checked","dot","getRadioUtilityClass","RadioRoot","SwitchBase","radioClasses","defaultCheckedIcon","RadioButtonIcon","defaultIcon","Radio","_defaultIcon$props$fo","_defaultCheckedIcon$p","_props$checkedIcon","_props$icon","nameProp","onChangeProp","radioGroup","RadioGroupContext","getFormGroupUtilityClass","FormGroupRoot","row","_props$row","FormGroup","getCheckboxUtilityClass","CheckboxRoot","indeterminate","checkboxClasses","CheckBoxIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","Checkbox","_icon$props$fontSize","_indeterminateIcon$pr","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","getGridUtilityClass","GRID_SIZES","gridClasses","getOffset","extractZeroValueBreakpointKeys","nonZeroKey","sortedBreakpointKeysByValue","GridRoot","zeroMinWidth","spacingStyles","resolveSpacingStyles","breakpointsStyles","rowSpacing","zeroValueBreakpointKeys","rowSpacingValues","_zeroValueBreakpointK","columnSpacing","columnSpacingValues","_zeroValueBreakpointK2","columnsBreakpointValues","columnValue","spacingClasses","resolveSpacingClasses","breakpointsClasses","Grid","columnsProp","columnSpacingProp","_props$container","_props$item","rowSpacingProp","_props$spacing","_props$wrap","_props$zeroMinWidth","columnsContext","GridContext","otherFiltered","useMediaQueryOld","query","defaultMatches","matchMedia","ssrMatchMedia","noSsr","setMatch","queryList","updateMatch","addListener","removeListener","maybeReactUseSyncExternalStore","useMediaQueryNew","getDefaultSnapshot","getServerSnapshot","_React$useMemo2","mediaQueryList","notify","subscribe","areViewsEqual","views","expectedViews","expectedView","findClosestEnabledDate","disableFuture","disablePast","maxDate","minDate","isDateDisabled","utils","today","startOfDay","forward","backward","addDays","applyDefaultDate","getMonthsInYear","startOfYear","prevMonth","addMonths","mergeDateAndTime","dateParam","timeParam","mergedDate","setHours","setMinutes","setSeconds","getTodayDate","valueType","dateViews","isDatePickerView","resolveDateFormat","isInToolbar","dayOfMonth","getCurrentLocaleCode","normalDateWithWeekday","normalDate","keyboardDate","timeViews","getSecondsInDay","SECTION_TYPE_GRANULARITY","roundDate","granularity","startOfMonth","roundedDate","setMilliseconds","getDefaultReferenceDate","_props$disableIgnorin","referenceDate","isAfterDay","isBeforeDay","disableIgnoringDatePartForTimeValidation","dateLeft","dateRight","createIsAfterIgnoreDatePart","minTime","maxTime","getDateSectionConfigFromFormatToken","formatToken","formatTokenMap","contentType","maxLength","sectionType","getDaysInWeekStr","startDate","startOfWeek","endDate","endOfWeek","weekDay","formatByString","getLetterEditingOptions","endOfDay","cleanLeadingZeros","valueStr","cleanValueStr","cleanDigitSectionValue","sectionBoundaries","section","setDate","longestMonth","hasLeadingZerosInInput","getSectionVisibleValue","hasLeadingZeros","hasLeadingZerosInFormat","cleanString","dirtyString","addPositionPropertiesToSections","sections","isRTL","positionInInput","newSections","renderedValue","sectionStr","startSeparator","endSeparator","sectionLength","sectionLengthInInput","cleanedValue","startInInput","endInInput","getSectionPlaceholder","localeText","sectionConfig","currentTokenValue","fieldYearPlaceholder","digitAmount","fieldMonthPlaceholder","fieldDayPlaceholder","fieldWeekDayPlaceholder","fieldHoursPlaceholder","fieldMinutesPlaceholder","fieldSecondsPlaceholder","fieldMeridiemPlaceholder","changeSectionValueFormat","currentFormat","newFormat","isFourDigitYearFormat","doesSectionFormatHaveLeadingZeros","setYear","splitFormatIntoSections","formatDensity","shouldRespectLeadingZeros","commitToken","isValidDate","sectionValue","modified","formatExpansionOverflow","prevFormat","nextFormat","expandFormat","expandedFormat","escapedParts","_utils$escapedCharact","escapedCharacters","startChar","endChar","regExp","getEscapedPartsFromFormat","isTokenStartRegExp","escapedPartOfCurrentChar","escapeIndex","isEscapedChar","potentialToken","cleanSeparator","separator","cleanedSeparator","getDateFromDateSections","shouldSkipWeekDays","sectionFormats","sectionValues","formatWithoutSeparator","dateWithoutSeparatorStr","reliableSectionModificationOrder","mergeDateIntoReferenceDate","dateToTransferFrom","shouldLimitToEditedSections","dateToTransferTo","getYear","setMonth","formattedDaysInWeek","dayInWeekStrOfActiveDate","dayInWeekOfActiveDate","isAM","mergedDateHours","addHours","transferDateSectionValue","singleItemValueManager","emptyValue","getTodayValue","getInitialReferenceValue","cleanValue","areValuesEqual","isEqual","isSameError","hasError","defaultErrorState","getTimezone","singleItemFieldValueManager","updateReferenceValue","prevReferenceValue","getSectionsFromValue","prevSections","getSectionsFromDate","getValueStrFromSections","dateStr","dateValue","getActiveDateManager","referenceValue","getSections","getNewValuesFromNewActiveDate","newActiveDate","parseValueStr","parseDate","MuiPickersAdapterContext","LocalizationProvider","_React$useContext","inLocaleText","otherInProps","parentUtils","parentLocaleText","DateAdapter","dateAdapter","dateFormats","dateLibInstance","adapterLocale","themeLocaleText","adapter","isMUIAdapter","defaultDates","enUSPickers","previousMonth","nextMonth","openPreviousView","openNextView","calendarViewSwitchingButtonAriaLabel","cancelButtonLabel","clearButtonLabel","okButtonLabel","todayButtonLabel","datePickerToolbarTitle","dateTimePickerToolbarTitle","timePickerToolbarTitle","dateRangePickerToolbarTitle","clockLabelText","hoursClockNumberText","minutesClockNumberText","secondsClockNumberText","selectViewText","calendarWeekNumberHeaderLabel","calendarWeekNumberHeaderText","calendarWeekNumberAriaLabelText","weekNumber","calendarWeekNumberText","openDatePickerDialogue","openTimePickerDialogue","timeTableLabel","dateTableLabel","DEFAULT_LOCALE","useLocalizationContext","localization","useUtils","useDefaultDates","useLocaleText","useNow","getPickersToolbarUtilityClass","PickersToolbarRoot","isLandscape","PickersToolbarContent","PickersToolbar","_props$landscapeDirec","landscapeDirection","toolbarTitle","titleId","penIconButton","getDatePickerToolbarUtilityClass","DatePickerToolbarRoot","DatePickerToolbarTitle","DatePickerToolbar","toolbarFormat","_props$toolbarPlaceho","toolbarPlaceholder","dateText","formatFromViews","uncapitalizeObjectKeys","capitalizedObject","useDatePickerDefaultizedProps","_themeProps$slots","_themeProps$disableFu","_themeProps$disablePa","_themeProps$slotProps","_themeProps$localeTex","openToWithDefault","openTo","defaultOpenTo","defaultViews","viewsWithDefault","applyDefaultViewProps","validateDate","shouldDisableDate","shouldDisableMonth","shouldDisableYear","getInputAdornmentUtilityClass","InputAdornmentRoot","disablePointerEvents","inputAdornmentClasses","InputAdornment","_props$disablePointer","_props$disableTypogra","getPickersPopperUtilityClass","getActiveElement","activeEl","shadowRoot","PickersPopperRoot","MuiPopper","PickersPopperPaper","MuiPaper","PickersPopper","_slots$desktopTransit","_slots$desktopTrapFoc","_slots$desktopPaper","_slots$popper","_props$containerRef","containerRef","shouldRestoreFocus","onDismiss","lastFocusedElementRef","_useClickAwayListener2","onClickAway","movedRef","syntheticEventRef","activatedRef","armClickAwayListener","handleClickAway","insideReactTree","clickedRootScrollbar","composedPath","handleSynthetic","useClickAwayListener","clickAwayRef","onPaperClick","onPaperTouchStart","desktopTransition","TrapFocus","desktopTrapFocus","MuiTrapFocus","desktopPaper","popperProps","popperPlacement","_paperProps$onClick","_paperProps$onTouchSt","useValidation","validate","previousValidationErrorRef","validationError","usePickerValue","valueManager","wrapperVariant","validator","onAccept","inValue","inDefaultValue","_props$closeOnSelect","closeOnSelect","selectedSectionsProp","selectedSections","onSelectedSectionsChange","setSelectedSections","_useOpenState","isControllingOpenProp","setIsOpenState","isOpen","setIsOpen","newIsOpen","useOpenState","draft","lastPublishedValue","lastCommittedValue","lastControlledValue","hasBeenModifiedSinceMount","dateState","setDateState","updateDate","updaterParams","hasChanged","comparison","shouldPublish","isCurrentValueTheDefaultValue","pickerAction","selectionState","shouldPublishValue","shouldCommit","shouldCommitValue","shouldClose","shouldClosePicker","isUpdateComingFromPicker","handleAccept","handleDismiss","handleCancel","handleSetToday","handleChange","handleChangeField","handleFieldSelectedSectionsChange","newSelectedSections","onClear","onCancel","onSetToday","fieldResponse","viewValue","fieldProps","viewProps","layoutProps","testedValue","useViews","_views","_views2","onViewChange","inView","inFocusedView","focusedView","onFocusedViewChange","previousOpenTo","previousViews","setView","setFocusedView","previousView","viewIndex","nextView","handleFocusedViewChange","viewToFocus","prevFocusedView","handleChangeView","newView","goToNextView","setValueAndGoToNextView","currentViewSelectionState","selectedView","isSelectionFinishedOnCurrentView","hasMoreViews","setValueAndGoToView","usePickerViews","propsFromPickerValue","additionalViewProps","autoFocusView","disableOpenPicker","viewRenderers","propsToForwardToView","_useViews","_React$useMemo","viewForReduce","viewMode","viewModeLookup","hasUIView","timeViewsCount","isTimeView","currentViewMode","popperView","setPopperView","renderCurrentView","renderer","showViewSwitcher","getOrientation","screen","orientation","angle","useIsLandscape","customOrientation","itemOrItems","setOrientation","eventHandler","buildWarning","gravity","alreadyWarned","cleanMessage","warn","usePicker","pickerValueResponse","pickerViewsResponse","pickerLayoutResponse","propsFromPickerViews","usePickerLayoutProps","getPickersLayoutUtilityClass","pickersLayoutClasses","getDialogActionsUtilityClass","DialogActionsRoot","disableSpacing","_props$disableSpacing","PickersActionBar","actionType","DialogActions","getListItemUtilityClass","getListItemSecondaryActionClassesUtilityClass","ListItemSecondaryActionRoot","ListItemSecondaryAction","ListItemRoot","alignItemsFlexStart","hasSecondaryAction","secondaryAction","listItemButtonClasses","listItemClasses","backgroundClip","ListItemContainer","_props$alignItems","_props$button","childrenProp","componentProp","_props$ContainerCompo","ContainerComponent","_props$ContainerProps","ContainerProps","ContainerClassName","_props$divider","_props$selected","listItemRef","VIEW_HEIGHT","PickersShortcuts","resolvedItems","ListItem","_slots$actionBar","_slots$shortcuts","innerSlots","innerSlotProps","contentWrapper","actionBar","tabs","landscape","shortcuts","ActionBar","actionBarProps","Toolbar","toolbarProps","toolbarHasView","Tabs","Shortcuts","shortcutsProps","PickersLayoutRoot","PickersLayoutContentWrapper","PickersLayout","_usePickerLayout","usePickerLayout","ArrowLeftIcon","ArrowRightIcon","CalendarIcon","useFieldState","fieldValueManager","internalProps","_params$internalProps","referenceDateProp","_params$internalProps2","_params$internalProps3","firstDefaultValue","valueFromTheOutside","sectionsValueBoundaries","endOfYear","_getMonthsInYear$redu","getDaysInMonth","maxDaysInMonth","minimum","maximum","currentDate","daysInWeek","lastHourInDay","getSectionsBoundaries","fallbackSections","stateWithoutReferenceDate","tempValueStrAndroid","_SECTION_TYPE_GRANULA","getSectionTypeGranularity","innerSetSelectedSections","selectedSectionQuery","selectedSectionIndexes","startIndex","shouldSelectBoundarySelectors","selectedSectionIndex","publishValue","setSectionValue","sectionIndex","newSectionValue","clearValue","clearActiveSection","activeSection","activeDateManager","isTheOnlyNonEmptySection","newValues","updateSectionValue","shouldGoToNextSection","newActiveDateSections","shouldRegenSections","clampedSections","sectionsForStartOfMonth","dayBoundaries","clampDaySectionIfPossible","updateValueFromValueStr","newReferenceValue","setTempAndroidValueStr","isQueryResponseWithoutValue","response","saveQuery","useFieldCharacterEditing","setQuery","resetQuery","_sections$query$secti","applyQuery","getFirstSectionValueMatchingWithQuery","isValidQueryValue","keyPressed","cleanKeyPressed","concatenatedQueryValue","queryResponse","applyCharacterEditing","getNewSectionValue","queryValue","queryValueNumber","applyNumericEditing","findMatchingOptions","matchingValues","startsWith","testQueryOnFormatAndFallbackFormat","fallbackFormat","formatFallbackValue","getOptions","fallbackOptions","fallbackValue","weekday","applyLetterEditing","resetCharacterQuery","useField","_useFieldState","unstableFieldRef","_params$forwardedProp","forwardedProps","onPaste","otherForwardedProps","_useFieldCharacterEdi","focusTimeoutRef","sectionOrder","neighbors","leftIndex","rightIndex","rtl2ltr","ltr2rtl","groupedSectionsStart","groupedSectionsEnd","RTLIndex","_section$endSeparator","rtlIndex","getSectionOrder","syncSelectionFromDOM","_selectionStart","nextSectionIndex","browserStartIndex","handleInputClick","handleInputMouseUp","handleInputFocus","handleInputBlur","handleInputPaste","pastedValue","getData","lettersOnly","digitsOnly","digitsAndLetterOnly","prevValueStr","startOfDiffIndex","endOfDiffIndex","activeSectionEndRelativeToNewValue","handleInputKeyDown","activeDate","delta","getDeltaFromKeyCode","isStart","isEnd","shouldSetAbsolute","getCleanValue","newSectionValueNumber","adjustDigitSection","currentOptionIndex","adjustLetterSection","adjustSectionValue","firstSelectedSection","lastSelectedSection","currentScrollTop","inputError","_state$tempValueStrAn","inputMode","shouldShowPlaceholder","getActiveSectionIndex","_selectionStart2","_selectionEnd","browserEndIndex","activeSectionIndex","DATE_VALIDATION_PROP_NAMES","TIME_VALIDATION_PROP_NAMES","DATE_TIME_VALIDATION_PROP_NAMES","VALIDATION_PROP_NAMES","extractValidationProps","extractedProps","SHARED_FIELD_INTERNAL_PROP_NAMES","useDateField","_splitFieldInternalAn","extractProp","splitFieldInternalAndForwardedProps","_props$disablePast","_props$disableFuture","_props$format","useDefaultizedDateField","DateField","_slots$textField","_slotProps$textField","textField","MuiTextField","externalInputRef","textFieldProps","_useDateField","useIsDateDisabled","useCalendarState","defaultCalendarMonth","_ref2$disableSwitchTo","disableSwitchToMonthOnDayFocus","onMonthChange","reduceAnimations","reducerFn","slideDirection","currentMonth","newMonth","isMonthSwitchingAnimating","focusedDay","isSameDay","needMonthSwitch","isSameMonth","withoutMonthSwitchingAnimation","createCalendarStateReducer","_React$useReducer2","calendarState","handleChangeMonth","changeMonth","newDate","newDateRequested","onMonthSwitchingAnimationEnd","changeFocusedDay","newFocusedDate","getPickersFadeTransitionGroupUtilityClass","PickersFadeTransitionGroupRoot","PickersFadeTransitionGroup","transKey","getPickersDayUtilityClass","pickersDayClasses","disableMargin","outsideCurrentMonth","showDaysOutsideCurrentMonth","disableHighlightToday","dayWithMargin","dayOutsideMonth","hiddenDaySpacingFiller","PickersDayRoot","PickersDayFiller","PickersDayRaw","_props$disableHighlig","_props$disableMargin","isAnimating","onDaySelect","_props$onFocus","_props$onBlur","_props$onKeyDown","_props$onMouseDown","_props$onMouseEnter","onMouseEnter","_props$showDaysOutsid","_props$today","isToday","PickersDay","replaceClassName","origClass","classToRemove","removeClass","baseVal","CSSTransition","appliedClasses","_this$resolveArgument","resolveArguments","removeClasses","addClass","_this$resolveArgument2","_this$resolveArgument3","getClassNames","isStringClassNames","baseClassName","activeClassName","doneClassName","hasClass","_addClass","_this$appliedClasses$","getPickersSlideTransitionUtilityClass","pickersSlideTransitionClasses","PickersSlideTransitionRoot","slideEnterActive","slideExit","slideTransition","getDayCalendarUtilityClass","defaultDayOfWeekFormatter","PickersCalendarDayHeader","header","PickersCalendarWeekDayLabel","weekDayLabel","PickersCalendarWeekNumberLabel","weekNumberLabel","PickersCalendarWeekNumber","PickersCalendarLoadingContainer","loadingContainer","PickersCalendarSlideTransition","enterActive","exitActive","transitionClasses","PickersCalendarWeekContainer","monthContainer","PickersCalendarWeek","weekContainer","WrappedDay","_slots$day","_slotProps$day","parentProps","focusableDay","selectedDays","currentMonthNumber","isViewFocused","isFocusableDay","isSelected","selectedDay","Day","dayProps","toJsDate","isFirstVisibleCell","isLastVisibleCell","endOfMonth","DayCalendar","onFocusedDayChange","onSelectedDaysChange","_props$renderLoading","renderLoading","_props$dayOfWeekForma","dayOfWeekFormatter","gridLabelId","displayWeekNumber","fixedWeekNumber","internalHasFocus","setInternalHasFocus","internalFocusedDay","setInternalFocusedDay","handleDaySelect","focusDay","newFocusedDayDefault","nextAvailableMonth","closestDayToFocus","validSelectedDays","transitionKey","slideNodeRef","startOfCurrentWeek","weeksToDisplay","toDisplay","getWeekArray","additionalWeeks","hasCommonWeek","getWeekdays","_dayOfWeekFormatter","getWeekNumber","dayIndex","getPickersMonthUtilityClass","pickersMonthClasses","PickersMonthRoot","monthsPerRow","PickersMonthButton","monthButton","PickersMonth","ariaCurrent","_ref$current","getMonthCalendarUtilityClass","MonthCalendarRoot","MonthCalendar","useMonthCalendarDefaultizedProps","onMonthFocus","_props$monthsPerRow","todayMonth","selectedDateOrStartOfMonth","selectedMonth","focusedMonth","setFocusedMonth","changeHasFocus","newHasFocus","isMonthDisabled","firstEnabledMonth","lastEnabledMonth","handleMonthSelection","focusMonth","prevFocusedMonth","monthsInYear","handleMonthFocus","handleMonthBlur","monthNumber","monthText","getPickersYearUtilityClass","pickersYearClasses","PickersYearRoot","yearsPerRow","PickersYearButton","yearButton","PickersYear","getYearCalendarUtilityClass","YearCalendarRoot","YearCalendar","useYearCalendarDefaultizedProps","onYearFocus","_props$yearsPerRow","selectedDateOrStartOfYear","todayYear","selectedYear","focusedYear","setFocusedYear","isYearDisabled","dateToValidate","isBeforeYear","isAfterYear","handleYearSelection","focusYear","prevFocusedYear","handleYearFocus","handleYearBlur","scrollerRef","tabbableButton","getYearRange","yearNumber","getPickersArrowSwitcherUtilityClass","PickersArrowSwitcherRoot","PickersArrowSwitcherSpacer","spacer","PickersArrowSwitcherButton","PickersArrowSwitcher","_slots$previousIconBu","_slots$nextIconButton","_slots$leftArrowIcon","_slots$rightArrowIcon","isNextDisabled","isNextHidden","onGoToNext","nextLabel","isPreviousDisabled","isPreviousHidden","onGoToPrevious","previousLabel","goTo","leftProps","rightProps","PreviousIconButton","previousIconButton","previousIconButtonProps","NextIconButton","nextIconButton","nextIconButtonProps","LeftArrowIcon","leftArrowIcon","leftArrowIconProps","RightArrowIcon","rightArrowIcon","rightArrowIconProps","getPickersCalendarHeaderUtilityClass","pickersCalendarHeaderClasses","PickersCalendarHeaderRoot","PickersCalendarHeaderLabelContainer","labelContainer","PickersCalendarHeaderLabel","PickersCalendarHeaderSwitchViewButton","switchViewButton","switchViewIcon","PickersCalendarHeaderSwitchViewIcon","PickersCalendarHeader","_slots$switchViewButt","_slots$switchViewIcon","SwitchViewButton","switchViewButtonProps","SwitchViewIcon","switchViewIconProps","isNextMonthDisabled","useNextMonthDisabled","isPreviousMonthDisabled","usePreviousMonthDisabled","nextIndexToOpen","PickerViewRoot","defaultReduceAnimations","getDateCalendarUtilityClass","DateCalendarRoot","DateCalendarViewTransitionContainer","viewTransitionContainer","DateCalendar","useDateCalendarDefaultizedProps","onYearChange","handleValueChange","_useCalendarState","handleDateMonthChange","closestEnabledDate","handleDateYearChange","handleSelectedDayChange","baseDateValidationProps","minDateWithDisabled","maxDateWithDisabled","commonViewProps","prevOpenViewRef","renderDateViewCalendar","DesktopDatePicker","_defaultizedProps$yea","_defaultizedProps$slo2","defaultizedProps","_useDesktopPicker","_innerSlotProps$toolb","_innerSlotProps$toolb2","_slots$inputAdornment","_slots$openPickerButt","_slots$layout","getOpenDialogAriaText","pickerParams","internalInputRef","isToolbarHidden","_usePicker","pickerFieldProps","inputAdornment","MuiInputAdornment","inputAdornmentProps","OpenPickerButton","openPickerButton","openPickerButtonProps","OpenPickerIcon","openPickerIcon","Field","field","slotsForField","Layout","layout","labelledById","renderPicker","useDesktopPicker","_defaultizedProps$slo","getDialogContentUtilityClass","DialogContentRoot","dividers","dialogTitleClasses","_props$dividers","getDialogUtilityClass","DialogBackdrop","overrides","DialogRoot","DialogContainer","DialogPaper","paperFullWidth","fullScreen","paperFullScreen","dialogClasses","Dialog","defaultTransitionDuration","ariaLabelledbyProp","_props$fullScreen","_props$maxWidth","_props$scroll","backdropClick","ariaLabelledby","dialogContextValue","DialogContext","PickersModalDialogRoot","PickersModalDialogContent","DialogContent","PickersModalDialog","_slots$dialog","_slots$mobileTransiti","dialog","mobileTransition","mobilePaper","MobileDatePicker","_useMobilePicker","externalEvent","useMobilePicker","DatePicker","_props$desktopModeMed","desktopModeMediaQuery","isDesktop","queryInput","supportMatchMedia","_getThemeProps","_getThemeProps$defaul","_getThemeProps$matchM","_getThemeProps$ssrMat","_getThemeProps$noSsr","useMediaQuery","defaultDayjs","customParseFormatPlugin","localizedFormatPlugin","isBetweenPlugin","localeNotFoundWarning","defaultFormats","monthShort","weekdayShort","hours24h","hours12h","fullDate","fullDateWithWeekday","shortDate","monthAndYear","monthAndDate","fullTime","fullTime12h","fullTime24h","fullDateTime","fullDateTime12h","fullDateTime24h","keyboardDateTime","keyboardDateTime12h","keyboardDateTime24h","MISSING_UTC_PLUGIN","MISSING_TIMEZONE_PLUGIN","AdapterDayjs","dayjs","_locale","isTimezoneCompatible","lib","rawDayJsInstance","setLocaleToValue","expectedLocale","hasUTCPlugin","hasTimezonePlugin","comparing","comparisonTemplate","comparingInValueTimezone","setTimezone","createSystemDate","createUTCDate","createTZDate","timezone","cleanTimezone","keepLocalTime","endsWith","tz","getLocaleFormats","locales","localeObject","dateWithTimezone","parsedValue","isUTC","_value$$x","$timezone","local","cleanZone","parseISO","isoString","toISO","is12HourCycleInCurrentLocale","localeFormats","getFormatHelperText","toLocaleLowerCase","isNull","formatKey","formatString","formatNumber","numberToFormat","getDiff","isSameYear","isSameHour","isWithinRange","addYears","amount","addWeeks","addMinutes","addSeconds","hour","minute","second","millisecond","getNextMonth","getPreviousMonth","getMonthArray","monthArray","cleanLocale","nestedWeeks","years","getMeridiemText","ampm","weekOfYear","_useState2","isAuthenticated","setIsAuthenticated","_useState4","commaNets","setCommaNets","_useState6","authTokenFile","setAuthTokenFile","_useState8","setStartTime","_useState10","endTime","setEndTime","_useState12","level","setLevel","_useState14","showError","setShowError","_useState16","setNode","_useState18","inputNode","setInputNode","_useState20","network","setNetwork","_useState22","inputNetwork","setInputNetwork","_useState24","station","setStation","_useState26","topN","setTopN","nodeCheckboxesContainer","paramToPass","lst","loadingMsg","intervalId","fetch","json","errorMessage","statusText","indicatorDataClients","results","clients","displaylogo","indicatorDataBytes","valueformat","pieDataRequests","nb_successful_reqs","nb_reqs","labels","hovertemplate","totalPlots","monthAndYearPlots","endYear","barData","barLayout","annotations","yref","xref","showarrow","family","xaxis","tickmode","yaxis","updatemenus","showlegend","barmode","iso2ToIso3","mapData","locationmode","locations","country","geojson","URL","colorscale","autocolorscale","reversescale","mapLayout","mapbox","lon","lat","finally","mapPlots","makePlotsEIDA","nodesColors","rearrangedResults","hll","hll_clients","pieDataClients","texttemplate","pieLayoutClients","xshift","pieDataBytes","pieLayoutRequests","hlls","clientsAllNodes","nodeResults","y1","y2","y3","y4","y5","bar","aggregatedResults","aggregate","nodeCheckboxes","handleCheckboxClick","lastClickedTime","lastClickedCheckbox","checkbox","currentTime","timeDiff","checkboxes","checkedCount","selectedNodes","filteredData","newCountryCodesISO3","activeButtonIndex","newMapData","makePlotsNode","file","FormData","strNets","net","single","foundNets","groupedDataClients","belongsInLess","otherValueClients","sortedDataClients","localeCompare","customdata","sharedBytes","accumulator","networks","groupedDataBytes","otherValueBytes","sortedDataBytes","sharedReq","groupedDataReq","otherValueReq","sortedDataReq","networksSet","groupedResults","grouped","totalA","otherDataClients","barDataClients","nameA","nameB","clientsAllNetworks","otherDataBytes","barDataBytes","_loop2","otherDataReq","barDataReq","_loop3","networkCheckboxes","networkCheckboxesContainer","selectedNetworks","makePlotsNetwork","fileSta","sta","topDataClients","groupedSliceClients","total","belongsHere","topDataBytes","groupedSliceBytes","topDataRequests","groupedSliceRequests","stationsSet","stationResults","clientsAllStations","otherDataRequests","barDataRequests","stationCheckboxes","stationCheckboxesContainer","selectedStations","makePlotsStation","get_nodes","_get_nodes","_callee3","_context3","t0","_useState28","setOpen","_useState30","get_networks","_get_networks","_callee4","networkNodes","filteredNetworks","_context4","setBroughtNets","_callee","_useState32","openNet","setOpenNet","_useState34","optionsNet","setOptionsNet","_useState36","broughtNets","loadingNet","activeNet","_callee2","_context2","FormControlLabel","files","RadioGroup","Autocomplete","nv","_Fragment","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","App","reportWebVitals"],"sourceRoot":""} \ No newline at end of file

(.*?)<\/p>/)[0])})),Error(e.statusText)})).then((function(e){var t=e.results.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e}),{});for(var i in t)t[i].clients=t[i].clients.cardinality();var a=r(106),o=[{locationmode:"ISO-3",locations:Object.values(t).map((function(e){return e.country})).map((function(e){return a(e)})),z:Object.values(t).map((function(e){return e.clients})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}],s={title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}],width:1e3,mapbox:{style:"open-street-map",center:{lon:0,lat:20},zoom:0},updatemenus:[{buttons:[{args:[{z:[Object.values(t).map((function(e){return e.clients}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of unique users per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of unique users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Unique Users",method:"update"},{args:[{z:[Object.values(t).map((function(e){return e.bytes}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of bytes per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the amount of data delivered to users of EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Bytes",method:"update"},{args:[{z:[Object.values(t).map((function(e){return e.nb_reqs}))],type:"choroplethmapbox",colorscale:"Viridis",autocolorscale:!1,reversescale:!0},{title:"Number of requests per country",annotations:[{y:-.15,yref:"paper",xref:"paper",text:"The above plot shows the number of requests made to the EIDA services from each country.",showarrow:!1,font:{family:"Arial",size:12,color:"black"}}]}],label:"Requests",method:"update"}],direction:"down",type:"buttons"}]};m().newPlot("country-plots",o,s,{displaylogo:!1});var l=Array.from(new Set(e.results.map((function(e){return e.network?e.network+"."+e.station:e.station})))).sort((function(e,t){return e.localeCompare(t)})).map((function(e,t){return(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)("input",{type:"checkbox",id:"station-".concat(t),value:e,defaultChecked:!0,onChange:d}),(0,Fn.jsx)("label",{htmlFor:"station-".concat(t),children:e})]},t)})),u=document.getElementById("nns-checkboxes");u.innerHTML="",n.createRoot(u).render(l),document.getElementById("mapAndBoxes").style.backgroundColor="white";var c=0,f=null;function d(n){var i=n.target,o=(new Date).getTime(),l=o-c,u=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]'),d=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked').length;i===f&&l<300&&(1===d&&i.checked?u.forEach((function(e){e.checked=!0})):u.forEach((function(e){e.checked=e===i}))),f=i,c=o;var h=document.querySelectorAll('#nns-checkboxes input[type="checkbox"]:checked'),p=[];h.forEach((function(e){p.push(e.value)}));var v=e.results.filter((function(e){return p.includes(e.station)}));for(var g in t=v.reduce((function(e,t){return e[t.country]||(e[t.country]={country:t.country,clients:new wg.HLL(11,5),bytes:0,nb_reqs:0}),e[t.country].clients.union((0,wg.fromHexString)(t.hll_clients).hllSet),e[t.country].bytes+=t.bytes,e[t.country].nb_reqs+=t.nb_reqs,e}),{}))t[g].clients=t[g].clients.cardinality();var y=Object.values(t).map((function(e){return e.country})).map((function(e){return a(e)})),x=s.updatemenus[0].active,b=[{locationmode:"ISO-3",locations:y,z:Object.values(t).map((function(e){return 0===x||void 0===x?e.clients:1===x?e.bytes:2===x?e.nb_reqs:void 0})),type:"choroplethmapbox",geojson:new URL(r(29),r.b).href,colorscale:"Viridis",autocolorscale:!1,reversescale:!0,hovertemplate:"%{z:.3s}%{location}"}];s.updatemenus[0].buttons.forEach((function(e,r){e&&0===r?e.args[0].z=[Object.values(t).map((function(e){return e.clients}))]:e&&1===r?e.args[0].z=[Object.values(t).map((function(e){return e.bytes}))]:e&&2===r&&(e.args[0].z=[Object.values(t).map((function(e){return e.nb_reqs}))])})),m().react("country-plots",b,s)}})).catch((function(e){return console.log(e)})).finally((function(){clearInterval(c),u.innerHTML=""}))}()}(o,h,y,t(S,L),t(D,F),j,!isNaN(H)&&H>=0?H:void 0);break;default:return void M("Choose level to plot statistics!")}}),200)):M("Specify at least 'Start Time' parameter!")}function G(){return Y.apply(this,arguments)}function Y(){return Y=f(u().mark((function e(){var t,r;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,fetch("https://ws.resif.fr/eidaws/statistics/1/nodes");case 3:if((t=e.sent).ok){e.next=6;break}throw new Error("Failed to fetch nodes");case 6:return e.next=8,t.json();case 8:return r=e.sent,e.abrupt("return",r.nodes.map((function(e){return e.name})).sort());case 12:return e.prev=12,e.t0=e.catch(0),console.error(e.t0),e.abrupt("return",[]);case 16:case"end":return e.stop()}}),e,null,[[0,12]])}))),Y.apply(this,arguments)}var Z=p((0,e.useState)(!1),2),X=Z[0],K=Z[1],$=p((0,e.useState)([]),2),J=$[0],Q=$[1],ee=X&&0===J.length;function te(){return re.apply(this,arguments)}function re(){return re=f(u().mark((function e(){var t,r,n,i;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,fetch("https://ws.resif.fr/eidaws/statistics/1/networks");case 3:if((t=e.sent).ok){e.next=6;break}throw new Error("Failed to fetch networks");case 6:return e.next=8,t.json();case 8:if(r=e.sent,n=new Set,Array.isArray(S)&&S.forEach((function(e){return n.add(e)})),"string"===typeof L&&""!==L&&L.split(",").forEach((function(e){return n.add(e)})),0!==n.size){e.next=17;break}return fe(!0),e.abrupt("return",Array.from(new Set(r.networks.map((function(e){return e.name})))).sort());case 17:return i=r.networks.filter((function(e){return Array.from(n).includes(e.node)})),fe(!0),e.abrupt("return",Array.from(new Set(i.map((function(e){return e.name})))).sort());case 20:e.next=26;break;case 22:return e.prev=22,e.t0=e.catch(0),console.error(e.t0),e.abrupt("return",[]);case 26:case"end":return e.stop()}}),e,null,[[0,22]])}))),re.apply(this,arguments)}(0,e.useEffect)((function(){var e=!0;if(ee)return f(u().mark((function t(){var r;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,G();case 2:r=t.sent,e&&Q(r);case 4:case"end":return t.stop()}}),t)})))(),function(){e=!1}}),[ee]),(0,e.useEffect)((function(){X||Q([])}),[X]);var ne=p((0,e.useState)(!1),2),ie=ne[0],ae=ne[1],oe=p((0,e.useState)([]),2),se=oe[0],le=oe[1],ue=p((0,e.useState)(!1),2),ce=ue[0],fe=ue[1],de=ie&&!ce;return(0,e.useEffect)((function(){var e=!0;if(de)return f(u().mark((function t(){var r;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,te();case 2:r=t.sent,e&&le(r);case 4:case"end":return t.stop()}}),t)})))(),function(){e=!1}}),[de]),(0,e.useEffect)((function(){ie||le([])}),[ie]),(0,e.useEffect)((function(){W()}),[]),(0,Fn.jsxs)("div",{className:"App",children:[(0,Fn.jsxs)(Ld,{id:"form-container",container:!0,spacing:2,children:[(0,Fn.jsxs)(Ld,{id:"form-left",item:!0,xs:5,children:[(0,Fn.jsx)("h1",{children:"EIDA Statistics Dashboard"}),(0,Fn.jsxs)("div",{className:"info",children:["Dashboard UI to explore usage statistics in the form of plots for services distributed in the ",(0,Fn.jsx)("a",{href:"http://www.orfeus-eu.org/data/eida/",children:"EIDA"})," federation.",(0,Fn.jsx)("br",{}),"For more details, visit the ",(0,Fn.jsx)("a",{href:"https://ws.resif.fr/eidaws/statistics/1/",children:"statistics webservice"}),".",(0,Fn.jsx)("br",{}),"The code of the current dashboard is hosted at ",(0,Fn.jsx)("a",{href:"https://github.com/EIDA/statsboard",children:"github"}),".",(0,Fn.jsx)("br",{}),"The starting date of collecting statistics data is 2020-11.",(0,Fn.jsx)("br",{}),"For members of EIDA federation, choose the authentication below for full access to data."]}),(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)(Of,{control:(0,Fn.jsx)(yd,{checked:i,onChange:function(){a(!i),c(void 0),w("eida"),E([]),O(""),R([]),N(""),U("")}}),label:"Authentication"}),i&&(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)("label",{children:"Select token file: "}),(0,Fn.jsx)("input",{type:"file",onChange:function(e){return c(e.target.files[0])}}),(0,Fn.jsxs)("div",{className:"upload-note",children:["To redeem an EIDA authentication token file visit ",(0,Fn.jsx)("a",{href:"https://geofon.gfz-potsdam.de/eas/",children:"https://geofon.gfz-potsdam.de/eas"}),"."]})]})]}),("network"===_||"station"===_)&&(0,Fn.jsxs)("div",{id:"limit",children:[(0,Fn.jsxs)("label",{children:["Show only top items in the plots and group the rest",(0,Fn.jsxs)("span",{style:{fontSize:"14px"},children:[(0,Fn.jsx)("br",{}),(0,Fn.jsx)("br",{}),"Enter 0 to show all items: "]})]}),(0,Fn.jsx)(Il,{label:"Top N",type:"number",size:"small",sx:{mx:1,my:-1,maxWidth:100},defaultValue:10,inputProps:{min:0},InputLabelProps:{shrink:!0},onChange:function(e){return q(parseInt(e.target.value,10))}})]})]}),(0,Fn.jsxs)(Ld,{item:!0,xs:5,mt:2,children:[(0,Fn.jsx)("div",{children:(0,Fn.jsx)(yh,{dateAdapter:_g,children:(0,Fn.jsx)(ag,{label:"Start Time",sx:{my:1},views:["year","month"],slotProps:{textField:{size:"small"}},format:"MM-YYYY",onChange:function(e){return v(e?e.$y+"-"+(e.$M+1):void 0)}})})}),(0,Fn.jsx)("div",{children:(0,Fn.jsx)(yh,{dateAdapter:_g,children:(0,Fn.jsx)(ag,{label:"End Time",sx:{my:1},views:["year","month"],slotProps:{textField:{size:"small"}},format:"MM-YYYY",onChange:function(e){return x(e?e.$y+"-"+(e.$M+1):void 0)}})})}),(0,Fn.jsx)("div",{children:(0,Fn.jsxs)(Ga,{children:[(0,Fn.jsx)(za,{id:"demo-row-radio-buttons-group-label",children:"Level"}),(0,Fn.jsxs)(od,{row:!0,"aria-labelledby":"demo-row-radio-buttons-group-label",name:"row-radio-buttons-group",children:[(0,Fn.jsx)(Of,{value:"eida",control:(0,Fn.jsx)(Qf,{checked:"eida"===_,onChange:function(e){w(e.target.value),E([]),O(""),R([]),N(""),U("")}}),label:"EIDA"}),(0,Fn.jsx)(Of,{value:"node",control:(0,Fn.jsx)(Qf,{checked:"node"===_,onChange:function(e){w(e.target.value),R([]),N(""),U("")}}),label:"Node"}),(0,Fn.jsx)(Of,{value:"network",control:(0,Fn.jsx)(Qf,{checked:"network"===_,onChange:function(e){w(e.target.value),U("")}}),label:"Network"}),i&&(0,Fn.jsx)(Of,{value:"station",control:(0,Fn.jsx)(Qf,{checked:"station"===_,onChange:function(e){return w(e.target.value)}}),label:"Station"})]})]})}),"eida"!==_&&(0,Fn.jsx)("div",{children:(0,Fn.jsx)(Jc,{className:"autocomplete",sx:{my:1,minWidth:300},size:"small",freeSolo:!0,multiple:!0,onInputChange:function(e){return O(e.target.value)},onChange:function(e,t){E(t),O("")},options:J,open:X,onOpen:function(){return K(!0)},onClose:function(){return K(!1)},isOptionEqualToValue:function(e,t){return e===t},loading:ee,renderInput:function(t){return(0,Fn.jsx)(Il,l(l({},t),{},{label:"Node",InputProps:l(l({},t.InputProps),{},{endAdornment:(0,Fn.jsxs)(e.Fragment,{children:[ee?(0,Fn.jsx)(gf,{color:"inherit",size:20}):null,t.InputProps.endAdornment]})})}))}})}),("network"===_||"station"===_)&&(0,Fn.jsx)("div",{children:(0,Fn.jsx)(Jc,{className:"autocomplete",sx:{my:1,minWidth:300},size:"small",freeSolo:!0,multiple:i,onInputChange:function(e){return N(e.target.value)},onChange:function(e,t){R(t),N("")},options:se,open:ie,onOpen:function(){return ae(!0)},onClose:function(){ae(!1),fe(!1)},isOptionEqualToValue:function(e,t){return e===t},loading:de,renderInput:function(t){return(0,Fn.jsx)(Il,l(l({},t),{},{label:"Network",InputProps:l(l({},t.InputProps),{},{endAdornment:(0,Fn.jsxs)(e.Fragment,{children:[de?(0,Fn.jsx)(gf,{color:"inherit",size:20}):null,t.InputProps.endAdornment]})})}))}})}),"station"===_&&(0,Fn.jsxs)("div",{children:[(0,Fn.jsx)(Il,{label:"Station",sx:{my:1,minWidth:300},size:"small",variant:"outlined",value:j,onChange:function(e){return U(e.target.value)}}),(0,Fn.jsx)("div",{className:"stations-note",children:"Comma-separated list, e.g. STA1,STA2"})]})]})]}),(0,Fn.jsx)(Ti,{sx:{m:.5},variant:"contained",onClick:W,children:"Make Plots"}),T&&(0,Fn.jsx)("div",{className:"error-message",children:T}),!T&&(0,Fn.jsxs)(Fn.Fragment,{children:[(0,Fn.jsx)("div",{id:"loading-msg"}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-total"}),(0,Fn.jsxs)(Ld,{container:!0,spacing:2,children:[(0,Fn.jsx)(Ld,{item:!0,xs:12,lg:4,children:(0,Fn.jsx)("div",{className:"plot",id:"total-clients"})}),(0,Fn.jsx)(Ld,{item:!0,xs:12,lg:4,children:(0,Fn.jsx)("div",{className:"plot",id:"total-bytes"})}),(0,Fn.jsx)(Ld,{item:!0,xs:12,lg:4,children:(0,Fn.jsx)("div",{className:"plot",id:"total-requests"})})]}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-month"}),(0,Fn.jsx)("div",{className:"plot",id:"month-plots"}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-year"}),(0,Fn.jsx)("div",{className:"plot",id:"year-plots"}),(0,Fn.jsx)("div",{className:"error-plot",id:"error-map"}),(0,Fn.jsxs)("div",{id:"mapAndBoxes",children:[(0,Fn.jsx)("div",{id:"country-plots"}),(0,Fn.jsx)("div",{id:"nns-checkboxes"})]})]})]})},Tg=function(e){e&&e instanceof Function&&r.e(787).then(r.bind(r,787)).then((function(t){var r=t.getCLS,n=t.getFID,i=t.getFCP,a=t.getLCP,o=t.getTTFB;r(e),n(e),i(e),a(e),o(e)}))};n.createRoot(document.getElementById("root")).render((0,Fn.jsx)(e.StrictMode,{children:(0,Fn.jsx)(kg,{})})),Tg()}()}(); -//# sourceMappingURL=main.7bab7422.js.map \ No newline at end of file +/*! For license information please see main.c8287e73.js.LICENSE.txt */ +!function(){var e={571:function(e){e.exports={HLL:a,fromHexString:function(e){var t=function(e){for(var t=(e=e.substring(2)).length/2,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i24)throw new Error("Register width must be between 4 and 24 inclusive (log2m = "+e+").");if(o<1||o>5)throw new Error("Register width must be between 1 and 5 inclusive (registerWidth = "+o+").");s.log2m=e,s.m=1<=0;l--)s.registers.push(0);var u=(1<>>0,c=(1<>>0,f=u-1+e,d=Math.pow(2,f),h=d/30,p=5*s.registers.length/2,v=function(e){switch(e){case 1:case 2:case 4:case 8:throw new Error("'m' cannot be less than 16 ("+e+" < 16).");case 16:return.673*e*e;case 32:return.697*e*e;case 64:return.709*e*e;default:return.7213/(1+1.079/e)*e*e}}(s.m);function m(e){var t=function(e){return 0==e?-1:0!=(255&e)?_[e>>>0&255]+0:0!=(65535&e)?_[e>>>8&255]+8:0!=(16777215&e)?_[e>>>16&255]+16:_[e>>>24&255]+24}(e[n])+1;return Math.min(u,t)}return s.addRaw=function(t){var r=t[n]&c,a=m(function(e,t){if(0==(t&=63))return e;var r=e[i];return t<32?[e[n]>>>t|r<<32-t,r>>>t]:32==t?[r,0]:[r>>>t-32,0]}(t,e));s.registers[r]=Math.max(s.registers[r],a)},s.algorithmCardinality=function(){for(var e=s.m,t=0,r=0,n=s.registers,i=e-1;i>=0;i--){var a=n[i];t+=1/(1<>>0),0==a&&r++}var o=v/t;return 0!=r&&o=0;o--)i[o]=Math.max(i[o],a[o]);return s},s.fold=function(e){if(e==s.log2m)return s.clone();if(e<1||e>s.log2m)throw new Error("'log2m' cannot be less than 1 or greater than the current value.");for(var t=new a(e,s.registerWidth),r=t.registers,n=s.registers,i=s.log2m-e,o=t.m-1;o>=0;o--)r[o]=Math.min(n[o]+i,u);return t},s.clone=function(){for(var e=new a(s.log2m,s.registerWidth),t=s.registers,r=e.registers,n=s.m-1;n>=0;n--)r[n]=t[n];return e},s.clear=function(){for(var e=s.registers,t=s.m-1;t>=0;t--)e[t]=0;return s},s.toHexString=function(){var t=new w;t.addBits(20,8),t.addBits(o-1,3),t.addBits(e,5),t.addBits(0,8);for(var r=s.m,n=s.registers,i=0;i>4,n=function(e){return 15&e}(t[0]);if(1!=r)throw new Error("Unknown schema version: "+r);switch(n){case s:return{hllSet:m(e),version:r,algorithm:n.UNDEFINED};case l:return{hllSet:m(e),version:r,algorithm:n.EMPTY};case u:return{hllSet:g(e),version:r,algorithm:n.EXPLICIT};case c:return{hllSet:v(e),version:r,algorithm:n.SPARSE};case f:return{hllSet:p(e),version:r,algorithm:n.FULL};default:throw new Error("Unknown schema version 1 algorithm (index): "+n)}};function h(e){return{registerWidth:x(e,0,3)+1,log2m:x(e,3,5)}}function p(e){for(var t=new Uint8Array(e),r=h(t[1]),n=r.registerWidth,i=r.log2m,s=[],l=3*o,u=(1<=0;u--)s.push(b(t,l,n)),l+=n;var c=new a(i,n);return c.registers=s,c}function v(e){return function(e,t,r){for(var n=r.registerWidth,i=r.log2m,s=1<=0;u--)l.push(0);var c=t*o;c+=s*n%o;var f=new Uint8Array(e);for(u=Math.floor((f.length-t)*o/(i+n))-1;u>=0;u--){var d=b(f,c,i),h=b(f,c+=i,n);c+=n,l[d]=h}var p=new a(i,n);return p.registers=l,p}(e,3,h(new Uint8Array(e)[1]))}function m(e){var t,r=new Uint8Array(e);return new a((t=h(r[1])).log2m,t.registerWidth)}function g(e){return function(e,t,r){var n=new a(r.log2m,r.registerWidth),i=new Uint8Array(e),o=t;for(;o>>0,n>>>0]}function x(e,t,r){return e>>>o-(t+r)&(1<>>3,i=t+r>>>3,a=7&t;if(n==i)return x(e[i],a,r);for(var s=t+r&7,l=0,u=0,c=i;c>=n;c--){l|=(c==n?x(e[c],a,o-a):c==i?x(e[c],0,s):e[c])<0;){var s=Math.min(a,r);e|=(n>>>a-s&(1<>>0<=t?e:""+Array(t+1-n.length).join(r)+e},y={s:g,z:function(e){var t=-e.utcOffset(),r=Math.abs(t),n=Math.floor(r/60),i=r%60;return(t<=0?"+":"-")+g(n,2,"0")+":"+g(i,2,"0")},m:function e(t,r){if(t.date()1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!n&&i&&(x=i),i||!n&&x},k=function(e,t){if(_(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new M(r)},T=y;T.l=w,T.i=_,T.w=function(e,t){return k(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var M=function(){function m(e){this.$L=w(e.locale,null,!0),this.parse(e)}var g=m.prototype;return g.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(T.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(p);if(n){var i=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.$x=e.x||{},this.init()},g.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},g.$utils=function(){return T},g.isValid=function(){return!(this.$d.toString()===h)},g.isSame=function(e,t){var r=k(e);return this.startOf(t)<=r&&r<=this.endOf(t)},g.isAfter=function(e,t){return k(e)68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),r=60*t[1]+(+t[2]||0);return 0===r?0:"+"===t[0]?-r:r}(e)}],u=function(e){var t=a[e];return t&&(t.indexOf?t:t.s.concat(t.f))},c=function(e,t){var r,n=a.meridiem;if(n){for(var i=1;i<=24;i+=1)if(e.indexOf(n(i,0,t))>-1){r=i>12;break}}else r=e===(t?"pm":"PM");return r},f={A:[i,function(e){this.afternoon=c(e,!1)}],a:[i,function(e){this.afternoon=c(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[r,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[n,s("seconds")],ss:[n,s("seconds")],m:[n,s("minutes")],mm:[n,s("minutes")],H:[n,s("hours")],h:[n,s("hours")],HH:[n,s("hours")],hh:[n,s("hours")],D:[n,s("day")],DD:[r,s("day")],Do:[i,function(e){var t=a.ordinal,r=e.match(/\d+/);if(this.day=r[0],t)for(var n=1;n<=31;n+=1)t(n).replace(/\[|\]/g,"")===e&&(this.day=n)}],M:[n,s("month")],MM:[r,s("month")],MMM:[i,function(e){var t=u("months"),r=(u("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[i,function(e){var t=u("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[r,function(e){this.year=o(e)}],YYYY:[/\d{4}/,s("year")],Z:l,ZZ:l};function d(r){var n,i;n=r,i=a&&a.formats;for(var o=(r=n.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,r,n){var a=n&&n.toUpperCase();return r||i[n]||e[n]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))).match(t),s=o.length,l=0;l-1)return new Date(("X"===t?1e3:1)*e);var n=d(t)(e),i=n.year,a=n.month,o=n.day,s=n.hours,l=n.minutes,u=n.seconds,c=n.milliseconds,f=n.zone,h=new Date,p=o||(i||a?1:h.getDate()),v=i||h.getFullYear(),m=0;i&&!a||(m=a>0?a-1:h.getMonth());var g=s||0,y=l||0,x=u||0,b=c||0;return f?new Date(Date.UTC(v,m,p,g,y,x,b+60*f.offset*1e3)):r?new Date(Date.UTC(v,m,p,g,y,x,b)):new Date(v,m,p,g,y,x,b)}catch(e){return new Date("")}}(t,s,n),this.init(),f&&!0!==f&&(this.$L=this.locale(f).$L),c&&t!=this.format(s)&&(this.$d=new Date("")),a={}}else if(s instanceof Array)for(var h=s.length,p=1;p<=h;p+=1){o[1]=s[p-1];var v=r.apply(this,o);if(v.isValid()){this.$d=v.$d,this.$L=v.$L,this.init();break}p===h&&(this.$d=new Date(""))}else i.call(this,e)}}}()},818:function(e){e.exports=function(){"use strict";return function(e,t,r){t.prototype.isBetween=function(e,t,n,i){var a=r(e),o=r(t),s="("===(i=i||"()")[0],l=")"===i[1];return(s?this.isAfter(a,n):!this.isBefore(a,n))&&(l?this.isBefore(o,n):!this.isAfter(o,n))||(s?this.isBefore(a,n):!this.isAfter(a,n))&&(l?this.isAfter(o,n):!this.isBefore(o,n))}}}()},893:function(e){e.exports=function(){"use strict";var e={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"};return function(t,r,n){var i=r.prototype,a=i.format;n.en.formats=e,i.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var r=this.$locale().formats,n=function(t,r){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,i){var a=i&&i.toUpperCase();return n||r[i]||e[i]||r[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))}(t,void 0===r?{}:r);return a.call(this,n)}}}()},216:function(e){e.exports=function(){"use strict";var e="week",t="year";return function(r,n,i){var a=n.prototype;a.week=function(r){if(void 0===r&&(r=null),null!==r)return this.add(7*(r-this.week()),"day");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var a=i(this).startOf(t).add(1,t).date(n),o=i(this).endOf(e);if(a.isBefore(o))return 1}var s=i(this).startOf(t).date(n).startOf(e).subtract(1,"millisecond"),l=this.diff(s,e,!0);return l<0?i(this).startOf("week").week():Math.ceil(l)},a.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}()},110:function(e,t,r){"use strict";var n=r(309),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return n.isMemo(e)?o:s[e.$$typeof]||i}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=o;var u=Object.defineProperty,c=Object.getOwnPropertyNames,f=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(p){var i=h(r);i&&i!==p&&e(t,i,n)}var o=c(r);f&&(o=o.concat(f(r)));for(var s=l(t),v=l(r),m=0;m: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");n.addStyleRule(o,i[a])}},98222:function(e,t,r){"use strict";e.exports=r(82887)},27206:function(e,t,r){"use strict";e.exports=r(60822)},59893:function(e,t,r){"use strict";e.exports=r(23381)},5224:function(e,t,r){"use strict";e.exports=r(83832)},59509:function(e,t,r){"use strict";e.exports=r(72201)},75557:function(e,t,r){"use strict";e.exports=r(91815)},40338:function(e,t,r){"use strict";e.exports=r(21462)},35080:function(e,t,r){"use strict";e.exports=r(51319)},61396:function(e,t,r){"use strict";e.exports=r(57516)},40549:function(e,t,r){"use strict";e.exports=r(98128)},49866:function(e,t,r){"use strict";e.exports=r(99442)},36089:function(e,t,r){"use strict";e.exports=r(93740)},19548:function(e,t,r){"use strict";e.exports=r(8729)},35831:function(e,t,r){"use strict";e.exports=r(93814)},61039:function(e,t,r){"use strict";e.exports=r(14382)},97040:function(e,t,r){"use strict";e.exports=r(51759)},77986:function(e,t,r){"use strict";e.exports=r(10421)},24296:function(e,t,r){"use strict";e.exports=r(43102)},58872:function(e,t,r){"use strict";e.exports=r(92165)},29626:function(e,t,r){"use strict";e.exports=r(3325)},65591:function(e,t,r){"use strict";e.exports=r(36071)},69738:function(e,t,r){"use strict";e.exports=r(43905)},92650:function(e,t,r){"use strict";e.exports=r(35902)},35630:function(e,t,r){"use strict";e.exports=r(69816)},73434:function(e,t,r){"use strict";e.exports=r(94507)},27909:function(e,t,r){"use strict";var n=r(19548);n.register([r(27206),r(5224),r(58872),r(65591),r(69738),r(92650),r(49866),r(25743),r(6197),r(97040),r(85461),r(73434),r(54201),r(81299),r(47645),r(35630),r(77986),r(83043),r(93005),r(96881),r(4534),r(50581),r(40549),r(77900),r(47582),r(35080),r(21641),r(17280),r(5861),r(29626),r(10021),r(65317),r(96268),r(61396),r(35831),r(16122),r(46163),r(40344),r(40338),r(48131),r(36089),r(55334),r(75557),r(19440),r(99488),r(59893),r(97393),r(98222),r(61039),r(24296),r(66398),r(59509)]),e.exports=n},46163:function(e,t,r){"use strict";e.exports=r(15154)},96881:function(e,t,r){"use strict";e.exports=r(64943)},50581:function(e,t,r){"use strict";e.exports=r(21164)},55334:function(e,t,r){"use strict";e.exports=r(54186)},65317:function(e,t,r){"use strict";e.exports=r(94873)},10021:function(e,t,r){"use strict";e.exports=r(67618)},54201:function(e,t,r){"use strict";e.exports=r(58810)},5861:function(e,t,r){"use strict";e.exports=r(20593)},16122:function(e,t,r){"use strict";e.exports=r(29396)},83043:function(e,t,r){"use strict";e.exports=r(13551)},48131:function(e,t,r){"use strict";e.exports=r(46858)},47582:function(e,t,r){"use strict";e.exports=r(17988)},21641:function(e,t,r){"use strict";e.exports=r(68868)},96268:function(e,t,r){"use strict";e.exports=r(20467)},19440:function(e,t,r){"use strict";e.exports=r(91271)},99488:function(e,t,r){"use strict";e.exports=r(21461)},97393:function(e,t,r){"use strict";e.exports=r(85956)},25743:function(e,t,r){"use strict";e.exports=r(52979)},66398:function(e,t,r){"use strict";e.exports=r(32275)},17280:function(e,t,r){"use strict";e.exports=r(6419)},77900:function(e,t,r){"use strict";e.exports=r(61510)},81299:function(e,t,r){"use strict";e.exports=r(87619)},93005:function(e,t,r){"use strict";e.exports=r(93601)},40344:function(e,t,r){"use strict";e.exports=r(96595)},47645:function(e,t,r){"use strict";e.exports=r(70954)},6197:function(e,t,r){"use strict";e.exports=r(47462)},4534:function(e,t,r){"use strict";e.exports=r(17659)},85461:function(e,t,r){"use strict";e.exports=r(19990)},82884:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(82884),i=r(41940),a=r(85555),o=r(44467).templatedArray;r(24695),e.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:n.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:n.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(e,t,r){"use strict";var n=r(71828),i=r(89298),a=r(92605).draw;function o(e){var t=e._fullLayout;n.filterVisible(t.annotations).forEach((function(t){var r=i.getFromId(e,t.xref),n=i.getFromId(e,t.yref),a=i.getRefType(t.xref),o=i.getRefType(t.yref);t._extremes={},"range"===a&&s(t,r),"range"===o&&s(t,n)}))}function s(e,t){var r,n=t._id,a=n.charAt(0),o=e[a],s=e["a"+a],l=e[a+"ref"],u=e["a"+a+"ref"],c=e["_"+a+"padplus"],f=e["_"+a+"padminus"],d={x:1,y:-1}[a]*e[a+"shift"],h=3*e.arrowsize*e.arrowwidth||0,p=h+d,v=h-d,m=3*e.startarrowsize*e.arrowwidth||0,g=m+d,y=m-d;if(u===l){var x=i.findExtremes(t,[t.r2c(o)],{ppadplus:p,ppadminus:v}),b=i.findExtremes(t,[t.r2c(s)],{ppadplus:Math.max(c,g),ppadminus:Math.max(f,y)});r={min:[x.min[0],b.min[0]],max:[x.max[0],b.max[0]]}}else g=s?g+s:g,y=s?y-s:y,r=i.findExtremes(t,[t.r2c(o)],{ppadplus:Math.max(c,p,g),ppadminus:Math.max(f,v,y)});e._extremes[n]=r}e.exports=function(e){var t=e._fullLayout;if(n.filterVisible(t.annotations).length&&e._fullData.length)return n.syncOrAsync([a,o],e)}},44317:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(44467).arrayEditor;function o(e,t){var r,n,i,a,o,l,u,c=e._fullLayout.annotations,f=[],d=[],h=[],p=(t||[]).length;for(r=0;r0||r.explicitOff.length>0},onClick:function(e,t){var r,s,l=o(e,t),u=l.on,c=l.off.concat(l.explicitOff),f={},d=e._fullLayout.annotations;if(u.length||c.length){for(r=0;r2/3?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[t]}for(var Y=!1,Z=["x","y"],X=0;X1)&&(ne===re?((he=ie.r2fraction(t["a"+te]))<0||he>1)&&(Y=!0):Y=!0),K=ie._offset+ie.r2p(t[te]),Q=.5}else{var pe="domain"===de;"x"===te?(J=t[te],K=pe?ie._offset+ie._length*J:K=k.l+k.w*J):(J=1-t[te],K=pe?ie._offset+ie._length*J:K=k.t+k.h*J),Q=t.showarrow?.5:J}if(t.showarrow){fe.head=K;var ve=t["a"+te];if(ee=oe*q(.5,t.xanchor)-se*q(.5,t.yanchor),ne===re){var me=l.getRefType(ne);"domain"===me?("y"===te&&(ve=1-ve),fe.tail=ie._offset+ie._length*ve):"paper"===me?"y"===te?(ve=1-ve,fe.tail=k.t+k.h*ve):fe.tail=k.l+k.w*ve:fe.tail=ie._offset+ie.r2p(ve),$=ee}else fe.tail=K+ve,$=ee+ve;fe.text=fe.tail+ee;var ge=w["x"===te?"width":"height"];if("paper"===re&&(fe.head=o.constrain(fe.head,1,ge-1)),"pixel"===ne){var ye=-Math.max(fe.tail-3,fe.text),xe=Math.min(fe.tail+3,fe.text)-ge;ye>0?(fe.tail+=ye,fe.text+=ye):xe>0&&(fe.tail-=xe,fe.text-=xe)}fe.tail+=ce,fe.head+=ce}else $=ee=le*q(Q,ue),fe.text=K+ee;fe.text+=ce,ee+=ce,$+=ce,t["_"+te+"padplus"]=le/2+$,t["_"+te+"padminus"]=le/2-$,t["_"+te+"size"]=le,t["_"+te+"shift"]=ee}if(Y)z.remove();else{var be=0,_e=0;if("left"!==t.align&&(be=(M-b)*("center"===t.align?.5:1)),"top"!==t.valign&&(_e=(R-_)*("middle"===t.valign?.5:1)),f)n.select("svg").attr({x:B+be-1,y:B+_e}).call(c.setClipUrl,U?C:null,e);else{var we=B+_e-v.top,ke=B+be-v.left;W.call(d.positionText,ke,we).call(c.setClipUrl,U?C:null,e)}V.select("rect").call(c.setRect,B,B,M,R),j.call(c.setRect,F/2,F/2,N-F,H-F),z.call(c.setTranslate,Math.round(L.x.text-N/2),Math.round(L.y.text-H/2)),I.attr({transform:"rotate("+P+","+L.x.text+","+L.y.text+")"});var Te,Me=function(r,n){O.selectAll(".annotation-arrow-g").remove();var l=L.x.head,f=L.y.head,d=L.x.tail+r,h=L.y.tail+n,v=L.x.text+r,b=L.y.text+n,_=o.rotationXYMatrix(P,v,b),w=o.apply2DTransform(_),M=o.apply2DTransform2(_),C=+j.attr("width"),D=+j.attr("height"),R=v-.5*C,F=R+C,N=b-.5*D,B=N+D,U=[[R,N,R,B],[R,B,F,B],[F,B,F,N],[F,N,R,N]].map(M);if(!U.reduce((function(e,t){return e^!!o.segmentsIntersect(l,f,l+1e6,f+1e6,t[0],t[1],t[2],t[3])}),!1)){U.forEach((function(e){var t=o.segmentsIntersect(d,h,l,f,e[0],e[1],e[2],e[3]);t&&(d=t.x,h=t.y)}));var V=t.arrowwidth,H=t.arrowcolor,q=t.arrowside,W=O.append("g").style({opacity:u.opacity(H)}).classed("annotation-arrow-g",!0),G=W.append("path").attr("d","M"+d+","+h+"L"+l+","+f).style("stroke-width",V+"px").call(u.stroke,u.rgb(H));if(m(G,q,t),T.annotationPosition&&G.node().parentNode&&!a){var Y=l,Z=f;if(t.standoff){var X=Math.sqrt(Math.pow(l-d,2)+Math.pow(f-h,2));Y+=t.standoff*(d-l)/X,Z+=t.standoff*(h-f)/X}var K,$,J=W.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(d-Y)+","+(h-Z),transform:s(Y,Z)}).style("stroke-width",V+6+"px").call(u.stroke,"rgba(0,0,0,0)").call(u.fill,"rgba(0,0,0,0)");p.init({element:J.node(),gd:e,prepFn:function(){var e=c.getTranslate(z);K=e.x,$=e.y,g&&g.autorange&&A(g._name+".autorange",!0),x&&x.autorange&&A(x._name+".autorange",!0)},moveFn:function(e,r){var n=w(K,$),i=n[0]+e,a=n[1]+r;z.call(c.setTranslate,i,a),S("x",y(g,e,"x",k,t)),S("y",y(x,r,"y",k,t)),t.axref===t.xref&&S("ax",y(g,e,"ax",k,t)),t.ayref===t.yref&&S("ay",y(x,r,"ay",k,t)),W.attr("transform",s(e,r)),I.attr({transform:"rotate("+P+","+i+","+a+")"})},doneFn:function(){i.call("_guiRelayout",e,E());var t=document.querySelector(".js-notes-box-panel");t&&t.redraw(t.selectedObj)}})}}};t.showarrow&&Me(0,0),D&&p.init({element:z.node(),gd:e,prepFn:function(){Te=I.attr("transform")},moveFn:function(e,r){var n="pointer";if(t.showarrow)t.axref===t.xref?S("ax",y(g,e,"ax",k,t)):S("ax",t.ax+e),t.ayref===t.yref?S("ay",y(x,r,"ay",k.w,t)):S("ay",t.ay+r),Me(e,r);else{if(a)return;var i,o;if(g)i=y(g,e,"x",k,t);else{var l=t._xsize/k.w,u=t.x+(t._xshift-t.xshift)/k.w-l/2;i=p.align(u+e/k.w,l,0,1,t.xanchor)}if(x)o=y(x,r,"y",k,t);else{var c=t._ysize/k.h,f=t.y-(t._yshift+t.yshift)/k.h-c/2;o=p.align(f-r/k.h,c,0,1,t.yanchor)}S("x",i),S("y",o),g&&x||(n=p.getCursor(g?.5:i,x?.5:o,t.xanchor,t.yanchor))}I.attr({transform:s(e,r)+Te}),h(z,n)},clickFn:function(r,n){t.captureevents&&e.emit("plotly_clickannotation",G(n))},doneFn:function(){h(z),i.call("_guiRelayout",e,E());var t=document.querySelector(".js-notes-box-panel");t&&t.redraw(t.selectedObj)}})}}}e.exports={draw:function(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r=0,x=t.indexOf("end")>=0,b=p.backoff*m+r.standoff,_=v.backoff*g+r.startstandoff;if("line"===h.nodeName){o={x:+e.attr("x1"),y:+e.attr("y1")},c={x:+e.attr("x2"),y:+e.attr("y2")};var w=o.x-c.x,k=o.y-c.y;if(d=(f=Math.atan2(k,w))+Math.PI,b&&_&&b+_>Math.sqrt(w*w+k*k))return void D();if(b){if(b*b>w*w+k*k)return void D();var T=b*Math.cos(f),M=b*Math.sin(f);c.x+=T,c.y+=M,e.attr({x2:c.x,y2:c.y})}if(_){if(_*_>w*w+k*k)return void D();var A=_*Math.cos(f),S=_*Math.sin(f);o.x-=A,o.y-=S,e.attr({x1:o.x,y1:o.y})}}else if("path"===h.nodeName){var E=h.getTotalLength(),C="";if(E1){u=!0;break}}u?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+s+'"]').remove():(l._pdata=i(e.glplot.cameraParams,[t.xaxis.r2l(l.x)*r[0],t.yaxis.r2l(l.y)*r[1],t.zaxis.r2l(l.z)*r[2]]),n(e.graphDiv,l,s,e.id,l._xa,l._ya))}}},2468:function(e,t,r){"use strict";var n=r(73972),i=r(71828);e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:r(26997)}}},layoutAttributes:r(26997),handleDefaults:r(20226),includeBasePlot:function(e,t){var r=n.subplotsRegistry.gl3d;if(r)for(var a=r.attrRegex,o=Object.keys(e),s=0;s=0))return e;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return e}var s=Math.round(255*n[0])+", "+Math.round(255*n[1])+", "+Math.round(255*n[2]);return a?"rgba("+s+", "+n[3]+")":"rgb("+s+")"}o.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"},o.rgb=function(e){return o.tinyRGB(n(e))},o.opacity=function(e){return e?n(e).getAlpha():0},o.addOpacity=function(e,t){var r=n(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"},o.combine=function(e,t){var r=n(e).toRgb();if(1===r.a)return n(e).toRgbString();var i=n(t||u).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-r.a)+r.r*r.a,g:a.g*(1-r.a)+r.g*r.a,b:a.b*(1-r.a)+r.b*r.a};return n(o).toRgbString()},o.contrast=function(e,t,r){var i=n(e);return 1!==i.getAlpha()&&(i=n(o.combine(e,u))),(i.isDark()?t?i.lighten(t):u:r?i.darken(r):l).toString()},o.stroke=function(e,t){var r=n(t);e.style({stroke:o.tinyRGB(r),"stroke-opacity":r.getAlpha()})},o.fill=function(e,t){var r=n(t);e.style({fill:o.tinyRGB(r),"fill-opacity":r.getAlpha()})},o.clean=function(e){if(e&&"object"===typeof e){var t,r,n,i,s=Object.keys(e);for(t=0;t0?n>=l:n<=l));i++)n>c&&n0?n>=l:n<=l));i++)n>r[0]&&n1){var ue=Math.pow(10,Math.floor(Math.log(le)/Math.LN10));oe*=ue*u.roundUp(le/ue,[2,5,10]),(Math.abs(q.start)/q.size+1e-6)%1<2e-6&&(ie.tick0=0)}ie.dtick=oe}ie.domain=o?[re+O/z.h,re+$-O/z.h]:[re+P/z.w,re+$-P/z.w],ie.setScale(),e.attr("transform",c(Math.round(z.l),Math.round(z.t)));var ce,fe=e.select("."+M.cbtitleunshift).attr("transform",c(-Math.round(z.l),-Math.round(z.t))),de=ie.ticklabelposition,he=ie.title.font.size,pe=e.select("."+M.cbaxis),ve=0,me=0;function ge(n,i){var a={propContainer:ie,propName:t._propPrefix+"title",traceIndex:t._traceIndex,_meta:t._meta,placeholder:R._dfltTitle.colorbar,containerGroup:e.select("."+M.cbtitle)},o="h"===n.charAt(0)?n.substr(1):"h"+n;e.selectAll("."+o+",."+o+"-math-group").remove(),v.draw(r,n,f(a,i||{}))}function ye(){var e,t;(o&&ae||!o&&!ae)&&("top"===j&&(e=P+z.l+z.w*I,t=O+z.t+z.h*(1-re-$)+3+.75*he),"bottom"===j&&(e=P+z.l+z.w*I,t=O+z.t+z.h*(1-re)-3-.25*he),"right"===j&&(t=O+z.t+z.h*D+3+.75*he,e=P+z.l+z.w*re),ge(ie._id+"title",{attributes:{x:e,y:t,"text-anchor":o?"start":"middle"}}))}function xe(){if(o&&!ae||!o&&ae){var e,i,a=ie.position||0,s=ie._offset+ie._length/2;if("right"===j)i=s,e=z.l+z.w*a+10+he*(ie.showticklabels?1:.5);else if(e=s,"bottom"===j&&(i=z.t+z.h*a+10+(-1===de.indexOf("inside")?ie.tickfont.size:0)+("intside"!==ie.ticks&&t.ticklen||0)),"top"===j){var l=B.text.split("
").length;i=z.t+z.h*a+10-Z-w*he*l}ge((o?"h":"v")+ie._id+"title",{avoid:{selection:n.select(r).selectAll("g."+ie._id+"tick"),side:j,offsetTop:o?0:z.t,offsetLeft:o?z.l:0,maxShift:o?R.width:R.height},attributes:{x:e,y:i,"text-anchor":"middle"},transform:{rotate:o?-90:0,offset:0}})}}function be(){if(!o&&!ae||o&&ae){var a,l=e.select("."+M.cbtitle),f=l.select("text"),d=[-A/2,A/2],p=l.select(".h"+ie._id+"title-math-group").node(),v=15.6;if(f.node()&&(v=parseInt(f.node().style.fontSize,10)*w),p?(a=h.bBox(p),me=a.width,(ve=a.height)>v&&(d[1]-=(ve-v)/2)):f.node()&&!f.classed(M.jsPlaceholder)&&(a=h.bBox(f.node()),me=a.width,ve=a.height),o){if(ve){if(ve+=5,"top"===j)ie.domain[1]-=ve/z.h,d[1]*=-1;else{ie.domain[0]+=ve/z.h;var g=m.lineCount(f);d[1]+=(1-g)*v}l.attr("transform",c(d[0],d[1])),ie.setScale()}}else me&&("right"===j&&(ie.domain[0]+=(me+he/2)/z.w),l.attr("transform",c(d[0],d[1])),ie.setScale())}e.selectAll("."+M.cbfills+",."+M.cblines).attr("transform",o?c(0,Math.round(z.h*(1-ie.domain[1]))):c(Math.round(z.w*ie.domain[0]),0)),pe.attr("transform",o?c(0,Math.round(-z.t)):c(Math.round(-z.l),0));var y=e.select("."+M.cbfills).selectAll("rect."+M.cbfill).attr("style","").data(G);y.enter().append("rect").classed(M.cbfill,!0).style("stroke","none"),y.exit().remove();var x=U.map(ie.c2p).map(Math.round).sort((function(e,t){return e-t}));y.each((function(e,a){var s=[0===a?U[0]:(G[a]+G[a-1])/2,a===G.length-1?U[1]:(G[a]+G[a+1])/2].map(ie.c2p).map(Math.round);o&&(s[1]=u.constrain(s[1]+(s[1]>s[0])?1:-1,x[0],x[1]));var l=n.select(this).attr(o?"x":"y",J).attr(o?"y":"x",n.min(s)).attr(o?"width":"height",Math.max(Z,2)).attr(o?"height":"width",Math.max(n.max(s)-n.min(s),2));if(t._fillgradient)h.gradient(l,r,t._id,o?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var c=H(e).replace("e-","");l.attr("fill",i(c).toHexString())}}));var b=e.select("."+M.cblines).selectAll("path."+M.cbline).data(N.color&&N.width?Y:[]);b.enter().append("path").classed(M.cbline,!0),b.exit().remove(),b.each((function(e){var t=J,r=Math.round(ie.c2p(e))+N.width/2%1;n.select(this).attr("d","M"+(o?t+","+r:r+","+t)+(o?"h":"v")+Z).call(h.lineGroupStyle,N.width,V(e),N.dash)})),pe.selectAll("g."+ie._id+"tick,path").remove();var _=J+Z+(A||0)/2-("outside"===t.ticks?1:0),k=s.calcTicks(ie),T=s.getTickSigns(ie)[2];return s.drawTicks(r,ie,{vals:"inside"===ie.ticks?s.clipEnds(ie,k):k,layer:pe,path:s.makeTickPath(ie,_,T),transFn:s.makeTransTickFn(ie)}),s.drawLabels(r,ie,{vals:k,layer:pe,transFn:s.makeTransTickLabelFn(ie),labelFns:s.makeLabelFns(ie,_)})}function _e(){var n,s=Z+A/2;-1===de.indexOf("inside")&&(n=h.bBox(pe.node()),s+=o?n.width:n.height),ce=fe.select("text");var u=0,f=o&&"top"===j,v=!o&&"right"===j,m=0;if(ce.node()&&!ce.classed(M.jsPlaceholder)){var y,x=fe.select(".h"+ie._id+"title-math-group").node();x&&(o&&ae||!o&&!ae)?(u=(n=h.bBox(x)).width,y=n.height):(u=(n=h.bBox(fe.node())).right-z.l-(o?J:ne),y=n.bottom-z.t-(o?ne:J),o||"top"!==j||(s+=n.height,m=n.height)),v&&(ce.attr("transform",c(u/2+he/2,0)),u*=2),s=Math.max(s,o?u:y)}var b=2*(o?P:O)+s+S+A/2,w=0;!o&&B.text&&"bottom"===L&&D<=0&&(b+=w=b/2,m+=w),R._hColorbarMoveTitle=w,R._hColorbarMoveCBTitle=m;var F=S+A;e.select("."+M.cbbg).attr("x",(o?J:ne)-F/2-(o?P:0)).attr("y",(o?ne:J)-(o?K:O+m-w)).attr(o?"width":"height",Math.max(b-w,2)).attr(o?"height":"width",Math.max(K+F,2)).call(p.fill,E).call(p.stroke,t.bordercolor).style("stroke-width",S);var N=v?Math.max(u-10,0):0;if(e.selectAll("."+M.cboutline).attr("x",(o?J:ne+P)+N).attr("y",(o?ne+O-K:J)+(f?ve:0)).attr(o?"width":"height",Math.max(Z,2)).attr(o?"height":"width",Math.max(K-(o?2*O+ve:2*P+N),2)).call(p.stroke,t.outlinecolor).style({fill:"none","stroke-width":A}),e.attr("transform",c(z.l-(o?Q*b:0),z.t-(o?0:(1-ee)*b-m))),!o&&(S||i(E).getAlpha()&&!i.equals(R.paper_bgcolor,E))){var U=pe.selectAll("text"),V=U[0].length,H=e.select("."+M.cbbg).node(),q=h.bBox(H),W=h.getTranslate(e),G=2;U.each((function(e,t){var r=0,n=V-1;if(t===r||t===n){var i,a=h.bBox(this),o=h.getTranslate(this);if(t===n){var s=a.right+o.x;(i=q.right+W.x+ne-S-G+I-s)>0&&(i=0)}else if(t===r){var l=a.left+o.x;(i=q.left+W.x+ne+S+G-l)<0&&(i=0)}i&&(V<3?this.setAttribute("transform","translate("+i+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}}))}var Y={},X=k[C],$=T[C],te=k[L],re=T[L],oe=b-Z;o?("pixels"===d?(Y.y=D,Y.t=K*te,Y.b=K*re):(Y.t=Y.b=0,Y.yt=D+l*te,Y.yb=D-l*re),"pixels"===_?(Y.x=I,Y.l=b*X,Y.r=b*$):(Y.l=oe*X,Y.r=oe*$,Y.xl=I-g*X,Y.xr=I+g*$)):("pixels"===d?(Y.x=I,Y.l=K*X,Y.r=K*$):(Y.l=Y.r=0,Y.xl=I+l*X,Y.xr=I-l*$),"pixels"===_?(Y.y=1-D,Y.t=b*te,Y.b=b*re):(Y.t=oe*te,Y.b=oe*re,Y.yt=D-g*te,Y.yb=D+g*re)),a.autoMargin(r,t._id,Y)}return u.syncOrAsync([a.previousPromises,ye,be,xe,a.previousPromises,_e],r)}(r,t,e);g&&g.then&&(e._promises||[]).push(g),e._context.edits.colorbarPosition&&function(e,t,r){var n,i,a,s="v"===t.orientation,u=r._fullLayout,f=u._size;l.init({element:e.node(),gd:r,prepFn:function(){n=e.attr("transform"),d(e)},moveFn:function(r,o){e.attr("transform",n+c(r,o)),i=l.align((s?t._uFrac:t._vFrac)+r/f.w,s?t._thickFrac:t._lenFrac,0,1,t.xanchor),a=l.align((s?t._vFrac:1-t._uFrac)-o/f.h,s?t._lenFrac:t._thickFrac,0,1,t.yanchor);var u=l.getCursor(i,a,t.xanchor,t.yanchor);d(e,u)},doneFn:function(){if(d(e),void 0!==i&&void 0!==a){var n={};n[t._propPrefix+"x"]=i,n[t._propPrefix+"y"]=a,void 0!==t._traceIndex?o.call("_guiRestyle",r,n,t._traceIndex):o.call("_guiRelayout",r,n)}}})}(r,t,e)})),t.exit().each((function(t){a.autoMargin(e,t._id)})).remove(),t.order()}}},76228:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e){return n.isPlainObject(e.colorbar)}},12311:function(e,t,r){"use strict";e.exports={moduleType:"component",name:"colorbar",attributes:r(63583),supplyDefaults:r(62499),draw:r(98981).draw,hasColorbar:r(76228)}},50693:function(e,t,r){"use strict";var n=r(63583),i=r(30587).counter,a=r(78607),o=r(63282).scales;function s(e){return"`"+e+"`"}a(o),e.exports=function(e,t){e=e||"";var r,a=(t=t||{}).cLetter||"c",l=("onlyIfNumerical"in t?t.onlyIfNumerical:Boolean(e),"noScale"in t?t.noScale:"marker.line"===e),u="showScaleDflt"in t?t.showScaleDflt:"z"===a,c="string"===typeof t.colorscaleDflt?o[t.colorscaleDflt]:null,f=t.editTypeOverride||"",d=e?e+".":"";"colorAttr"in t?(r=t.colorAttr,t.colorAttr):s(d+(r={z:"z",c:"color"}[a]));var h=a+"auto",p=a+"min",v=a+"max",m=a+"mid",g=(s(d+h),s(d+p),s(d+v),{});g[p]=g[v]=void 0;var y={};y[h]=!1;var x={};return"color"===r&&(x.color={valType:"color",arrayOk:!0,editType:f||"style"},t.anim&&(x.color.anim=!0)),x[h]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:g},x[p]={valType:"number",dflt:null,editType:f||"plot",impliedEdits:y},x[v]={valType:"number",dflt:null,editType:f||"plot",impliedEdits:y},x[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:g},x.colorscale={valType:"colorscale",editType:"calc",dflt:c,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:"boolean",dflt:!1!==t.autoColorDflt,editType:"calc",impliedEdits:{colorscale:void 0}},x.reversescale={valType:"boolean",dflt:!1,editType:"plot"},l||(x.showscale={valType:"boolean",dflt:u,editType:"calc"},x.colorbar=n),t.noColorAxis||(x.coloraxis={valType:"subplotid",regex:i("coloraxis"),dflt:null,editType:"calc"}),x}},78803:function(e,t,r){"use strict";var n=r(92770),i=r(71828),a=r(52075).extractOpts;e.exports=function(e,t,r){var o,s=e._fullLayout,l=r.vals,u=r.containerStr,c=u?i.nestedProperty(t,u).get():t,f=a(c),d=!1!==f.auto,h=f.min,p=f.max,v=f.mid,m=function(){return i.aggNums(Math.min,null,l)},g=function(){return i.aggNums(Math.max,null,l)};void 0===h?h=m():d&&(h=c._colorAx&&n(h)?Math.min(h,m()):m()),void 0===p?p=g():d&&(p=c._colorAx&&n(p)?Math.max(p,g()):g()),d&&void 0!==v&&(p-v>v-h?h=v-(p-v):p-v=0?s.colorscale.sequential:s.colorscale.sequentialminus,f._sync("colorscale",o))}},33046:function(e,t,r){"use strict";var n=r(71828),i=r(52075).hasColorscale,a=r(52075).extractOpts;e.exports=function(e,t){function r(e,t){var r=e["_"+t];void 0!==r&&(e[t]=r)}function o(e,i){var o=i.container?n.nestedProperty(e,i.container).get():e;if(o)if(o.coloraxis)o._colorAx=t[o.coloraxis];else{var s=a(o),l=s.auto;(l||void 0===s.min)&&r(o,i.min),(l||void 0===s.max)&&r(o,i.max),s.autocolorscale&&r(o,"colorscale")}}for(var s=0;s=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function p(e,t){t=t||{};for(var r=e.domain,o=e.range,l=o.length,u=new Array(l),c=0;c4/3-s?o:s}},70461:function(e,t,r){"use strict";var n=r(71828),i=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];e.exports=function(e,t,r,a){return e="left"===r?0:"center"===r?1:"right"===r?2:n.constrain(Math.floor(3*e),0,2),t="bottom"===a?0:"middle"===a?1:"top"===a?2:n.constrain(Math.floor(3*t),0,2),i[t][e]}},64505:function(e,t){"use strict";t.selectMode=function(e){return"lasso"===e||"select"===e},t.drawMode=function(e){return"drawclosedpath"===e||"drawopenpath"===e||"drawline"===e||"drawrect"===e||"drawcircle"===e},t.openMode=function(e){return"drawline"===e||"drawopenpath"===e},t.rectMode=function(e){return"select"===e||"drawline"===e||"drawrect"===e||"drawcircle"===e},t.freeMode=function(e){return"lasso"===e||"drawclosedpath"===e||"drawopenpath"===e},t.selectingOrDrawing=function(e){return t.freeMode(e)||t.rectMode(e)}},28569:function(e,t,r){"use strict";var n=r(48956),i=r(57035),a=r(38520),o=r(71828).removeElement,s=r(85555),l=e.exports={};l.align=r(92807),l.getCursor=r(70461);var u=r(26041);function c(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}function f(e){return n(e.changedTouches?e.changedTouches[0]:e,document.body)}l.unhover=u.wrapped,l.unhoverRaw=u.raw,l.init=function(e){var t,r,n,u,d,h,p,v,m=e.gd,g=1,y=m._context.doubleClickDelay,x=e.element;m._mouseDownTime||(m._mouseDownTime=0),x.style.pointerEvents="all",x.onmousedown=_,a?(x._ontouchstart&&x.removeEventListener("touchstart",x._ontouchstart),x._ontouchstart=_,x.addEventListener("touchstart",_,{passive:!1})):x.ontouchstart=_;var b=e.clampFn||function(e,t,r){return Math.abs(e)y&&(g=Math.max(g-1,1)),m._dragged)e.doneFn&&e.doneFn();else if(e.clickFn&&e.clickFn(g,h),!v){var r;try{r=new MouseEvent("click",t)}catch(a){var n=f(t);(r=document.createEvent("MouseEvents")).initMouseEvent("click",t.bubbles,t.cancelable,t.view,t.detail,t.screenX,t.screenY,n[0],n[1],t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget)}p.dispatchEvent(r)}m._dragging=!1,m._dragged=!1}else m._dragged=!1}},l.coverSlip=c},26041:function(e,t,r){"use strict";var n=r(11086),i=r(79990),a=r(24401).getGraphDiv,o=r(26675),s=e.exports={};s.wrapped=function(e,t,r){(e=a(e))._fullLayout&&i.clear(e._fullLayout._uid+o.HOVERID),s.raw(e,t,r)},s.raw=function(e,t){var r=e._fullLayout,i=e._hoverdata;t||(t={}),t.target&&!e._dragged&&!1===n.triggerHandler(e,"plotly_beforehover",t)||(r._hoverlayer.selectAll("g").remove(),r._hoverlayer.selectAll("line").remove(),r._hoverlayer.selectAll("circle").remove(),e._hoverdata=void 0,t.target&&i&&e.emit("plotly_unhover",{event:t,points:i}))}},79952:function(e,t){"use strict";t.P={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"},t.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(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.numberFormat,o=r(92770),s=r(84267),l=r(73972),u=r(7901),c=r(21081),f=i.strTranslate,d=r(63893),h=r(77922),p=r(18783).LINE_SPACING,v=r(37822).DESELECTDIM,m=r(34098),g=r(39984),y=r(23469).appendArrayPointValue,x=e.exports={};function b(e,t,r){var n=t.fillpattern,i=n&&x.getPatternAttr(n.shape,0,"");if(i){var a=x.getPatternAttr(n.bgcolor,0,null),o=x.getPatternAttr(n.fgcolor,0,null),s=n.fgopacity,l=x.getPatternAttr(n.size,0,8),c=x.getPatternAttr(n.solidity,0,.3),f=t.uid;x.pattern(e,"point",r,f,i,l,c,void 0,n.fillmode,a,o,s)}else t.fillcolor&&e.call(u.fill,t.fillcolor)}x.font=function(e,t,r,n){i.isPlainObject(t)&&(n=t.color,r=t.size,t=t.family),t&&e.style("font-family",t),r+1&&e.style("font-size",r+"px"),n&&e.call(u.fill,n)},x.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)},x.setSize=function(e,t,r){e.attr("width",t).attr("height",r)},x.setRect=function(e,t,r,n,i){e.call(x.setPosition,t,r).call(x.setSize,n,i)},x.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);return!!(o(i)&&o(a)&&t.node())&&("text"===t.node().nodeName?t.attr("x",i).attr("y",a):t.attr("transform",f(i,a)),!0)},x.translatePoints=function(e,t,r){e.each((function(e){var i=n.select(this);x.translatePoint(e,i,t,r)}))},x.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")},x.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,i=t.yaxis;e.each((function(t){var a=t[0].trace,o=a.xcalendar,s=a.ycalendar,u=l.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(u).each((function(e){x.hideOutsideRangePoint(e,n.select(this),r,i,o,s)}))}))}},x.crispRound=function(e,t,r){return t&&o(t)?e._context.staticPlot?t:t<1?1:Math.round(t):r||0},x.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";u.stroke(t,n||a.color),x.dashLine(t,s,o)},x.lineGroupStyle=function(e,t,r,i){e.style("fill","none").each((function(e){var a=(((e||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=i||a.dash||"";n.select(this).call(u.stroke,r||a.color).call(x.dashLine,s,o)}))},x.dashLine=function(e,t,r){r=+r||0,t=x.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})},x.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return"solid"===e?e="":"dot"===e?e=r+"px,"+r+"px":"dash"===e?e=3*r+"px,"+3*r+"px":"longdash"===e?e=5*r+"px,"+5*r+"px":"dashdot"===e?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":"longdashdot"===e&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e},x.singleFillStyle=function(e,t){var r=n.select(e.node());b(e,((r.data()[0]||[])[0]||{}).trace||{},t)},x.fillGroupStyle=function(e,t){e.style("stroke-width",0).each((function(e){var r=n.select(this);e[0].trace&&b(r,e[0].trace,t)}))};var _=r(90998);x.symbolNames=[],x.symbolFuncs=[],x.symbolBackOffs=[],x.symbolNeedLines={},x.symbolNoDot={},x.symbolNoFill={},x.symbolList=[],Object.keys(_).forEach((function(e){var t=_[e],r=t.n;x.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),x.symbolNames[r]=e,x.symbolFuncs[r]=t.f,x.symbolBackOffs[r]=t.backoff||0,t.needLine&&(x.symbolNeedLines[r]=!0),t.noDot?x.symbolNoDot[r]=!0:x.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(x.symbolNoFill[r]=!0)}));var w=x.symbolNames.length;function k(e,t,r,n){var i=e%100;return x.symbolFuncs[i](t,r,n)+(e>=200?"M0,0.5L0.5,0L0,-0.5L-0.5,0Z":"")}x.symbolNumber=function(e){if(o(e))e=+e;else if("string"===typeof e){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),(e=x.symbolNames.indexOf(e))>=0&&(e+=t)}return e%100>=w||e>=400?0:Math.floor(Math.max(e,0))};var T={x1:1,x2:0,y1:0,y2:0},M={x1:0,x2:0,y1:1,y2:0},A=a("~f"),S={radial:{node:"radialGradient"},radialreversed:{node:"radialGradient",reversed:!0},horizontal:{node:"linearGradient",attrs:T},horizontalreversed:{node:"linearGradient",attrs:T,reversed:!0},vertical:{node:"linearGradient",attrs:M},verticalreversed:{node:"linearGradient",attrs:M,reversed:!0}};x.gradient=function(e,t,r,a,o,l){for(var c=o.length,f=S[a],d=new Array(c),h=0;h=100;var f=re(e,r),d=W(e,r);t.attr("d",k(c,l,f,d))}var h,p,v,m=!1;if(e.so)v=s.outlierwidth,p=s.outliercolor,h=o.outliercolor;else{var g=(s||{}).width;v=(e.mlw+1||g+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,p="mlc"in e?e.mlcc=n.lineScale(e.mlc):i.isArrayOrTypedArray(s.color)?u.defaultLine:s.color,i.isArrayOrTypedArray(o.color)&&(h=u.defaultLine,m=!0),h="mc"in e?e.mcc=n.markerScale(e.mc):o.color||"rgba(0,0,0,0)",n.selectedColorFn&&(h=n.selectedColorFn(e))}if(e.om)t.call(u.stroke,h).style({"stroke-width":(v||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:v)+"px");var y=o.gradient,b=e.mgt;b?m=!0:b=y&&y.type,i.isArrayOrTypedArray(b)&&(b=b[0],S[b]||(b=0));var _=o.pattern,w=_&&x.getPatternAttr(_.shape,e.i,"");if(b&&"none"!==b){var T=e.mgc;T?m=!0:T=y.color;var M=r.uid;m&&(M+="-"+e.i),x.gradient(t,a,M,b,[[0,T],[1,h]],"fill")}else if(w){var A=x.getPatternAttr(_.bgcolor,e.i,null),E=x.getPatternAttr(_.fgcolor,e.i,null),C=_.fgopacity,L=x.getPatternAttr(_.size,e.i,8),P=x.getPatternAttr(_.solidity,e.i,.3),O=e.mcc||i.isArrayOrTypedArray(_.shape)||i.isArrayOrTypedArray(_.bgcolor)||i.isArrayOrTypedArray(_.size)||i.isArrayOrTypedArray(_.solidity),I=r.uid;O&&(I+="-"+e.i),x.pattern(t,"point",a,I,w,L,P,e.mcc,_.fillmode,A,E,C)}else u.fill(t,h);v&&u.stroke(t,p)}},x.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=x.tryColorscale(r,""),t.lineScale=x.tryColorscale(r,"line"),l.traceIs(e,"symbols")&&(t.ms2mrc=m.isBubble(e)?g(e):function(){return(r.size||6)/2}),e.selectedpoints&&i.extendFlat(t,x.makeSelectedPointStyleFns(e)),t},x.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},a=e.marker||{},o=r.marker||{},s=n.marker||{},u=a.opacity,c=o.opacity,f=s.opacity,d=void 0!==c,h=void 0!==f;(i.isArrayOrTypedArray(u)||d||h)&&(t.selectedOpacityFn=function(e){var t=void 0===e.mo?a.opacity:e.mo;return e.selected?d?c:t:h?f:v*t});var p=a.color,m=o.color,g=s.color;(m||g)&&(t.selectedColorFn=function(e){var t=e.mcc||p;return e.selected?m||t:g||t});var y=a.size,x=o.size,b=s.size,_=void 0!==x,w=void 0!==b;return l.traceIs(e,"symbols")&&(_||w)&&(t.selectedSizeFn=function(e){var t=e.mrc||y/2;return e.selected?_?x/2:t:w?b/2:t}),t},x.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,c=o.color;return t.selectedTextColorFn=function(e){var t=e.tc||s;return e.selected?l||t:c||(l?t:u.addOpacity(t,v))},t},x.selectedPointStyle=function(e,t){if(e.size()&&t.selectedpoints){var r=x.makeSelectedPointStyleFns(t),i=t.marker||{},a=[];r.selectedOpacityFn&&a.push((function(e,t){e.style("opacity",r.selectedOpacityFn(t))})),r.selectedColorFn&&a.push((function(e,t){u.fill(e,r.selectedColorFn(t))})),r.selectedSizeFn&&a.push((function(e,n){var a=n.mx||i.symbol||0,o=r.selectedSizeFn(n);e.attr("d",k(x.symbolNumber(a),o,re(n,t),W(n,t))),n.mrc2=o})),a.length&&e.each((function(e){for(var t=n.select(this),r=0;r0?r:0}function I(e,t,r){return r&&(e=B(e)),t?R(e[1]):D(e[0])}function D(e){var t=n.round(e,2);return E=t,t}function R(e){var t=n.round(e,2);return C=t,t}function z(e,t,r,n){var i=e[0]-t[0],a=e[1]-t[1],o=r[0]-t[0],s=r[1]-t[1],l=Math.pow(i*i+a*a,.25),u=Math.pow(o*o+s*s,.25),c=(u*u*i-l*l*o)*n,f=(u*u*a-l*l*s)*n,d=3*u*(l+u),h=3*l*(l+u);return[[D(t[0]+(d&&c/d)),R(t[1]+(d&&f/d))],[D(t[0]-(h&&c/h)),R(t[1]-(h&&f/h))]]}x.textPointStyle=function(e,t,r){if(e.size()){var a;if(t.selectedpoints){var o=x.makeSelectedTextStyleFns(t);a=o.selectedTextColorFn}var s=t.texttemplate,l=r._fullLayout;e.each((function(e){var o=n.select(this),u=s?i.extractOption(e,t,"txt","texttemplate"):i.extractOption(e,t,"tx","text");if(u||0===u){if(s){var c=t._module.formatLabels,f=c?c(e,t,l):{},h={};y(h,t,e.i);var p=t._meta||{};u=i.texttemplateString(u,f,l._d3locale,h,e,p)}var v=e.tp||t.textposition,m=O(e,t),g=a?a(e):e.tc||t.textfont.color;o.call(x.font,e.tf||t.textfont.family,m,g).text(u).call(d.convertToTspans,r).call(P,v,m,e.mrc)}else o.remove()}))}},x.selectedTextStyle=function(e,t){if(e.size()&&t.selectedpoints){var r=x.makeSelectedTextStyleFns(t);e.each((function(e){var i=n.select(this),a=r.selectedTextColorFn(e),o=e.tp||t.textposition,s=O(e,t);u.fill(i,a);var c=l.traceIs(t,"bar-like");P(i,o,s,e.mrc2||e.mrc,c)}))}},x.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r,n="M"+e[0],i=[];for(r=1;r=u||w>=f&&w<=u)&&(k<=d&&k>=c||k>=d&&k<=c)&&(e=[w,k])}return e}x.steps=function(e){var t=F[e]||N;return function(e){for(var r="M"+D(e[0][0])+","+R(e[0][1]),n=e.length,i=1;i=1e4&&(x.savedBBoxes={},j=0),r&&(x.savedBBoxes[r]=m),j++,i.extendFlat({},m)},x.setClipUrl=function(e,t,r){e.attr("clip-path",V(t,r))},x.getTranslate=function(e){var t=(e[e.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,(function(e,t,r){return[t,r].join(" ")})).split(" ");return{x:+t[0]||0,y:+t[1]||0}},x.setTranslate=function(e,t,r){var n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",a=e[n]("transform")||"";return t=t||0,r=r||0,a=a.replace(/(\btranslate\(.*?\);?)/,"").trim(),a=(a+=f(t,r)).trim(),e[i]("transform",a),a},x.getScale=function(e){var t=(e[e.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,(function(e,t,r){return[t,r].join(" ")})).split(" ");return{x:+t[0]||1,y:+t[1]||1}},x.setScale=function(e,t,r){var n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",a=e[n]("transform")||"";return t=t||1,r=r||1,a=a.replace(/(\bscale\(.*?\);?)/,"").trim(),a=(a+="scale("+t+","+r+")").trim(),e[i]("transform",a),a};var H=/\s*sc.*/;x.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,e){var n=1===t&&1===r?"":"scale("+t+","+r+")";e.each((function(){var e=(this.getAttribute("transform")||"").replace(H,"");e=(e+=n).trim(),this.setAttribute("transform",e)}))}};var q=/translate\([^)]*\)\s*$/;function W(e,t){var r;return e&&(r=e.mf),void 0===r&&(r=t.marker&&t.marker.standoff||0),t._geo||t._xA?r:-r}x.setTextPointsScale=function(e,t,r){e&&e.each((function(){var e,i=n.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(q);e=1===t&&1===r?[]:[f(o,s),"scale("+t+","+r+")",f(-o,-s)],l&&e.push(l),i.attr("transform",e.join(""))}}))},x.getMarkerStandoff=W;var G,Y,Z,X,K,$,J=Math.atan2,Q=Math.cos,ee=Math.sin;function te(e,t){var r=t[0],n=t[1];return[r*Q(e)-n*ee(e),r*ee(e)+n*Q(e)]}function re(e,t){var r,n,i=e.ma;void 0===i&&(i=t.marker.angle||0);var a=t.marker.angleref;if("previous"===a||"north"===a){if(t._geo){var s=t._geo.project(e.lonlat);r=s[0],n=s[1]}else{var l=t._xA,u=t._yA;if(!l||!u)return 90;r=l.c2p(e.x),n=u.c2p(e.y)}if(t._geo){var c,f=e.lonlat[0],d=e.lonlat[1],h=t._geo.project([f,d+1e-5]),p=t._geo.project([f+1e-5,d]),v=J(p[1]-n,p[0]-r),m=J(h[1]-n,h[0]-r);if("north"===a)c=i/180*Math.PI;else if("previous"===a){var g=f/180*Math.PI,y=d/180*Math.PI,x=G/180*Math.PI,b=Y/180*Math.PI,_=x-g,w=Q(b)*ee(_),k=ee(b)*Q(y)-Q(b)*ee(y)*Q(_);c=-J(w,k)-Math.PI,G=f,Y=d}var T=te(v,[Q(c),0]),M=te(m,[ee(c),0]);i=J(T[1]+M[1],T[0]+M[0])/Math.PI*180,"previous"!==a||$===t.uid&&e.i===K+1||(i=null)}if("previous"===a&&!t._geo)if($===t.uid&&e.i===K+1&&o(r)&&o(n)){var A=r-Z,S=n-X,E=t.line&&t.line.shape||"",C=E.slice(E.length-1);"h"===C&&(S=0),"v"===C&&(A=0),i+=J(S,A)/Math.PI*180+90}else i=null}return Z=r,X=n,K=e.i,$=t.uid,i}x.getMarkerAngle=re},90998:function(e,t,r){"use strict";var n,i,a,o,s=r(95616),l=r(39898).round,u="M0,0Z",c=Math.sqrt(2),f=Math.sqrt(3),d=Math.PI,h=Math.cos,p=Math.sin;function v(e){return null===e}function m(e,t,r){if((!e||e%360===0)&&!t)return r;if(a===e&&o===t&&n===r)return i;function l(e,r){var n=h(e),i=p(e),a=r[0],o=r[1]+(t||0);return[a*n-o*i,a*i+o*n]}a=e,o=t,n=r;for(var u=e/180*d,c=0,f=0,v=s(r),m="",g=0;g0,f=e._context.staticPlot;t.each((function(t){var d,h=t[0].trace,p=h.error_x||{},v=h.error_y||{};h.ids&&(d=function(e){return e.id});var m=o.hasMarkers(h)&&h.marker.maxdisplayed>0;v.visible||p.visible||(t=[]);var g=n.select(this).selectAll("g.errorbar").data(t,d);if(g.exit().remove(),t.length){p.visible||g.selectAll("path.xerror").remove(),v.visible||g.selectAll("path.yerror").remove(),g.style("opacity",1);var y=g.enter().append("g").classed("errorbar",!0);c&&y.style("opacity",0).transition().duration(s.duration).style("opacity",1),a.setClipUrl(g,r.layerClipId,e),g.each((function(e){var t=n.select(this),r=function(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return void 0!==e.yh&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),i(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),void 0!==e.xh&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),i(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}(e,l,u);if(!m||e.vis){var a,o=t.select("path.yerror");if(v.visible&&i(r.x)&&i(r.yh)&&i(r.ys)){var d=v.width;a="M"+(r.x-d)+","+r.yh+"h"+2*d+"m-"+d+",0V"+r.ys,r.noYS||(a+="m-"+d+",0h"+2*d),o.size()?c&&(o=o.transition().duration(s.duration).ease(s.easing)):o=t.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("yerror",!0),o.attr("d",a)}else o.remove();var h=t.select("path.xerror");if(p.visible&&i(r.y)&&i(r.xh)&&i(r.xs)){var g=(p.copy_ystyle?v:p).width;a="M"+r.xh+","+(r.y-g)+"v"+2*g+"m0,-"+g+"H"+r.xs,r.noXS||(a+="m0,-"+g+"v"+2*g),h.size()?c&&(h=h.transition().duration(s.duration).ease(s.easing)):h=t.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("xerror",!0),h.attr("d",a)}else h.remove()}}))}}))}},62662:function(e,t,r){"use strict";var n=r(39898),i=r(7901);e.exports=function(e){e.each((function(e){var t=e[0].trace,r=t.error_y||{},a=t.error_x||{},o=n.select(this);o.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(i.stroke,r.color),a.copy_ystyle&&(a=r),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(i.stroke,a.color)}))}},77914:function(e,t,r){"use strict";var n=r(41940),i=r(528).hoverlabel,a=r(1426).extendFlat;e.exports={hoverlabel:{bgcolor:a({},i.bgcolor,{arrayOk:!0}),bordercolor:a({},i.bordercolor,{arrayOk:!0}),font:n({arrayOk:!0,editType:"none"}),align:a({},i.align,{arrayOk:!0}),namelength:a({},i.namelength,{arrayOk:!0}),editType:"none"}}},30732:function(e,t,r){"use strict";var n=r(71828),i=r(73972);function a(e,t,r,i){i=i||n.identity,Array.isArray(e)&&(t[0][r]=i(e))}e.exports=function(e){var t=e.calcdata,r=e._fullLayout;function o(e){return function(t){return n.coerceHoverinfo({hoverinfo:t},{_module:e._module},r)}}for(var s=0;s=0&&r.index_[0]._length||le<0||le>w[0]._length)return p.unhoverRaw(e,t)}else se="xpx"in t?t.xpx:_[0]._length/2,le="ypx"in t?t.ypx:w[0]._length/2;if(t.pointerX=se+_[0]._offset,t.pointerY=le+w[0]._offset,q="xval"in t?g.flat(l,t.xval):g.p2c(_,se),W="yval"in t?g.flat(l,t.yval):g.p2c(w,le),!i(q[0])||!i(W[0]))return o.warn("Fx.hover failed",t,e),p.unhoverRaw(e,t)}var fe=1/0;function de(e,r){for(Y=0;Yre&&(ne.splice(0,re),fe=ne[0].distance),y&&0!==H&&0===ne.length){te.distance=H,te.index=!1;var f=X._module.hoverPoints(te,Q,ee,"closest",{hoverLayer:c._hoverlayer});if(f&&(f=f.filter((function(e){return e.spikeDistance<=H}))),f&&f.length){var d,p=f.filter((function(e){return e.xa.showspikes&&"hovered data"!==e.xa.spikesnap}));if(p.length){var v=p[0];i(v.x0)&&i(v.y0)&&(d=pe(v),(!ae.vLinePoint||ae.vLinePoint.spikeDistance>d.spikeDistance)&&(ae.vLinePoint=d))}var m=f.filter((function(e){return e.ya.showspikes&&"hovered data"!==e.ya.spikesnap}));if(m.length){var x=m[0];i(x.x0)&&i(x.y0)&&(d=pe(x),(!ae.hLinePoint||ae.hLinePoint.spikeDistance>d.spikeDistance)&&(ae.hLinePoint=d))}}}}}function he(e,t,r){for(var n,i=null,a=1/0,o=0;o0&&Math.abs(e.distance)Me-1;Ae--)Le(ne[Ae]);ne=Se,ye()}var Pe=e._hoverdata,Oe=[],Ie=U(e),De=V(e);for(G=0;G1||ne.length>1)||"closest"===I&&oe&&ne.length>1,Ye=h.combine(c.plot_bgcolor||h.background,c.paper_bgcolor),Ze=O(ne,{gd:e,hovermode:I,rotateLabels:Ge,bgColor:Ye,container:c._hoverlayer,outerContainer:c._paper.node(),commonLabelOpts:c.hoverlabel,hoverdistance:c.hoverdistance}),Xe=Ze.hoverLabels;if(g.isUnifiedHover(I)||(function(e,t,r,n){var i,a,o,s,l,u,c,f=t?"xa":"ya",d=t?"ya":"xa",h=0,p=1,v=e.size(),m=new Array(v),g=0,y=n.minX,x=n.maxX,b=n.minY,_=n.maxY,w=function(e){return e*r._invScaleX},T=function(e){return e*r._invScaleY};function M(e){var t=e[0],r=e[e.length-1];if(a=t.pmin-t.pos-t.dp+t.size,o=r.pos+r.dp+r.size-t.pmax,a>.01){for(l=e.length-1;l>=0;l--)e[l].dp+=a;i=!1}if(!(o<.01)){if(a<-.01){for(l=e.length-1;l>=0;l--)e[l].dp-=o;i=!1}if(i){var n=0;for(s=0;st.pmax&&n++;for(s=e.length-1;s>=0&&!(n<=0);s--)(u=e[s]).pos>t.pmax-1&&(u.del=!0,n--);for(s=0;s=0;l--)e[l].dp-=o;for(s=e.length-1;s>=0&&!(n<=0);s--)(u=e[s]).pos+u.dp+u.size>t.pmax&&(u.del=!0,n--)}}}for(e.each((function(e){var n=e[f],i=e[d],a="x"===n._id.charAt(0),o=n.range;0===g&&o&&o[0]>o[1]!==a&&(p=-1);var s=0,l=a?r.width:r.height;if("x"===r.hovermode||"y"===r.hovermode){var u,c,h=D(e,t),v=e.anchor,M="end"===v?-1:1;if("middle"===v)c=(u=e.crossPos+(a?T(h.y-e.by/2):w(e.bx/2+e.tx2width/2)))+(a?T(e.by):w(e.bx));else if(a)c=(u=e.crossPos+T(A+h.y)-T(e.by/2-A))+T(e.by);else{var S=w(M*A+h.x),E=S+w(M*e.bx);u=e.crossPos+Math.min(S,E),c=e.crossPos+Math.max(S,E)}a?void 0!==b&&void 0!==_&&Math.min(c,_)-Math.max(u,b)>1&&("left"===i.side?(s=i._mainLinePosition,l=r.width):l=i._mainLinePosition):void 0!==y&&void 0!==x&&Math.min(c,x)-Math.max(u,y)>1&&("top"===i.side?(s=i._mainLinePosition,l=r.height):l=i._mainLinePosition)}m[g++]=[{datum:e,traceIndex:e.trace.index,dp:0,pos:e.pos,posref:e.posref,size:e.by*(a?k:1)/2,pmin:s,pmax:l}]})),m.sort((function(e,t){return e[0].posref-t[0].posref||p*(t[0].traceIndex-e[0].traceIndex)}));!i&&h<=v;){for(h++,i=!0,s=0;s.01&&C.pmin===L.pmin&&C.pmax===L.pmax){for(l=E.length-1;l>=0;l--)E[l].dp+=a;for(S.push.apply(S,E),m.splice(s+1,1),c=0,l=S.length-1;l>=0;l--)c+=S[l].dp;for(o=c/S.length,l=S.length-1;l>=0;l--)S[l].dp-=o;i=!1}else s++}m.forEach(M)}for(s=m.length-1;s>=0;s--){var P=m[s];for(l=P.length-1;l>=0;l--){var O=P[l],I=O.datum;I.offset=O.dp,I.del=O.del}}}(Xe,Ge,c,Ze.commonLabelBoundingBox),R(Xe,Ge,c._invScaleX,c._invScaleY)),s&&s.tagName){var Ke=m.getComponentMethod("annotations","hasClickToShow")(e,Oe);f(n.select(s),Ke?"pointer":"")}s&&!a&&function(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}(e,0,Pe)&&(Pe&&e.emit("plotly_unhover",{event:t,points:Pe}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:_,yaxes:w,xvals:q,yvals:W}))}(e,t,r,a,s)}))},t.loneHover=function(e,t){var r=!0;Array.isArray(e)||(r=!1,e=[e]);var i=t.gd,a=U(i),o=V(i),s=O(e.map((function(e){var r=e._x0||e.x0||e.x||0,n=e._x1||e.x1||e.x||0,s=e._y0||e.y0||e.y||0,l=e._y1||e.y1||e.y||0,u=e.eventData;if(u){var c=Math.min(r,n),f=Math.max(r,n),d=Math.min(s,l),p=Math.max(s,l),v=e.trace;if(m.traceIs(v,"gl3d")){var g=i._fullLayout[v.scene]._scene.container,y=g.offsetLeft,x=g.offsetTop;c+=y,f+=y,d+=x,p+=x}u.bbox={x0:c+o,x1:f+o,y0:d+a,y1:p+a},t.inOut_bbox&&t.inOut_bbox.push(u.bbox)}else u=!1;return{color:e.color||h.defaultLine,x0:e.x0||e.x||0,x1:e.x1||e.x||0,y0:e.y0||e.y||0,y1:e.y1||e.y||0,xLabel:e.xLabel,yLabel:e.yLabel,zLabel:e.zLabel,text:e.text,name:e.name,idealAlign:e.idealAlign,borderColor:e.borderColor,fontFamily:e.fontFamily,fontSize:e.fontSize,fontColor:e.fontColor,nameLength:e.nameLength,textAlign:e.textAlign,trace:e.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:e.hovertemplate||!1,hovertemplateLabels:e.hovertemplateLabels||!1,eventData:u}})),{gd:i,hovermode:"closest",rotateLabels:!1,bgColor:t.bgColor||h.background,container:n.select(t.container),outerContainer:t.outerContainer||t.container}).hoverLabels,l=0,u=0;return s.sort((function(e,t){return e.y0-t.y0})).each((function(e,r){var n=e.y0-e.by/2;e.offset=n-5([\s\S]*)<\/extra>/;function O(e,t){var r=t.gd,i=r._fullLayout,a=t.hovermode,u=t.rotateLabels,f=t.bgColor,p=t.container,v=t.outerContainer,w=t.commonLabelOpts||{};if(0===e.length)return[[]];var k=t.fontFamily||y.HOVERFONT,T=t.fontSize||y.HOVERFONTSIZE,M=e[0],E=M.xa,C=M.ya,P=a.charAt(0),O=P+"Label",D=M[O];if(void 0===D&&"multicategory"===E.type)for(var R=0;Ri.width-b?(m=i.width-b,t.attr("d","M"+(b-A)+",0L"+b+","+x+A+"v"+x+(2*S+y.height)+"H-"+b+"V"+x+A+"H"+(b-2*A)+"Z")):t.attr("d","M0,0L"+A+","+x+A+"H"+b+"v"+x+(2*S+y.height)+"H-"+b+"V"+x+A+"H-"+A+"Z"),Y.minX=m-b,Y.maxX=m+b,"top"===E.side?(Y.minY=g-(2*S+y.height),Y.maxY=g-S):(Y.minY=g+S,Y.maxY=g+(2*S+y.height))}else{var _,L,P;"right"===C.side?(_="start",L=1,P="",m=E._offset+E._length):(_="end",L=-1,P="-",m=E._offset),g=C._offset+(M.y0+M.y1)/2,l.attr("text-anchor",_),t.attr("d","M0,0L"+P+A+","+A+"V"+(S+y.height/2)+"h"+P+(2*S+y.width)+"V-"+(S+y.height/2)+"H"+P+A+"V-"+A+"Z"),Y.minY=g-(S+y.height/2),Y.maxY=g+(S+y.height/2),"right"===C.side?(Y.minX=m+A,Y.maxX=m+A+(2*S+y.width)):(Y.minX=m-A-(2*S+y.width),Y.maxX=m-A);var O,I=y.height/2,R=F-y.top-I,z="clip"+i._uid+"commonlabel"+C._id;if(m=0?le:ue+de=0?ue:be+de=0?oe:se+he=0?se:_e+he=0,"top"!==e.idealAlign&&W||!G?W?(O+=z/2,e.anchor="start"):e.anchor="middle":(O-=z/2,e.anchor="end"),e.crossPos=O;else{if(e.pos=O,W=P+R/2+Y<=N,G=P-R/2-Y>=0,"left"!==e.idealAlign&&W||!G)if(W)P+=R/2,e.anchor="start";else{e.anchor="middle";var Z=Y/2,X=P+Z-N,K=P-Z;X>0&&(P-=X),K<0&&(P+=-K)}else P-=R/2,e.anchor="end";e.crossPos=P}w.attr("text-anchor",e.anchor),E&&M.attr("text-anchor",e.anchor),t.attr("transform",s(P,O)+(u?l(_):""))})),{hoverLabels:we,commonLabelBoundingBox:Y}}function I(e,t,r,n,i,a){var s="",l="";void 0!==e.nameOverride&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=o.templateString(e.name,e.trace._meta)),s=B(e.name,e.nameLength));var u=r.charAt(0),c="x"===u?"y":"x";void 0!==e.zLabel?(void 0!==e.xLabel&&(l+="x: "+e.xLabel+"
"),void 0!==e.yLabel&&(l+="y: "+e.yLabel+"
"),"choropleth"!==e.trace.type&&"choroplethmapbox"!==e.trace.type&&(l+=(l?"z: ":"")+e.zLabel)):t&&e[u+"Label"]===i?l=e[c+"Label"]||"":void 0===e.xLabel?void 0!==e.yLabel&&"scattercarpet"!==e.trace.type&&(l=e.yLabel):l=void 0===e.yLabel?e.xLabel:"("+e.xLabel+", "+e.yLabel+")",!e.text&&0!==e.text||Array.isArray(e.text)||(l+=(l?"
":"")+e.text),void 0!==e.extraText&&(l+=(l?"
":"")+e.extraText),a&&""===l&&!e.hovertemplate&&(""===s&&a.remove(),l=s);var f=e.hovertemplate||!1;if(f){var d=e.hovertemplateLabels||e;e[u+"Label"]!==i&&(d[u+"other"]=d[u+"Val"],d[u+"otherLabel"]=d[u+"Label"]),l=(l=o.hovertemplateString(f,d,n._d3locale,e.eventData[0]||{},e.trace._meta)).replace(P,(function(t,r){return s=B(r,e.nameLength),""}))}return[l,s]}function D(e,t){var r=0,n=e.offset;return t&&(n*=-M,r=e.offset*T),{x:r,y:n}}function R(e,t,r,i){var a=function(e){return e*r},o=function(e){return e*i};e.each((function(e){var r=n.select(this);if(e.del)return r.remove();var i=r.select("text.nums"),s=e.anchor,l="end"===s?-1:1,u=function(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(A+S),n=r+t*(e.txwidth+S);return"middle"===e.anchor&&(r-=e.tx2width/2,n+=e.txwidth/2+S),{alignShift:t,textShiftX:r,text2ShiftX:n}}(e),f=D(e,t),h=f.x,p=f.y,v="middle"===s;r.select("path").attr("d",v?"M-"+a(e.bx/2+e.tx2width/2)+","+o(p-e.by/2)+"h"+a(e.bx)+"v"+o(e.by)+"h-"+a(e.bx)+"Z":"M0,0L"+a(l*A+h)+","+o(A+p)+"v"+o(e.by/2-A)+"h"+a(l*e.bx)+"v-"+o(e.by)+"H"+a(l*A+h)+"V"+o(p-A)+"Z");var m=h+u.textShiftX,g=p+e.ty0-e.by/2+S,y=e.textAlign||"auto";"auto"!==y&&("left"===y&&"start"!==s?(i.attr("text-anchor","start"),m=v?-e.bx/2-e.tx2width/2+S:-e.bx-S):"right"===y&&"end"!==s&&(i.attr("text-anchor","end"),m=v?e.bx/2-e.tx2width/2-S:e.bx+S)),i.call(c.positionText,a(m),o(g)),e.tx2width&&(r.select("text.name").call(c.positionText,a(u.text2ShiftX+u.alignShift*S+h),o(p+e.ty0-e.by/2+S)),r.select("rect").call(d.setRect,a(u.text2ShiftX+(u.alignShift-1)*e.tx2width/2+h),o(p-e.by/2-1),a(e.tx2width),o(e.by+2)))}))}function z(e,t){var r=e.index,n=e.trace||{},a=e.cd[0],s=e.cd[r]||{};function l(e){return e||i(e)&&0===e}var u=Array.isArray(r)?function(e,t){var i=o.castOption(a,r,e);return l(i)?i:o.extractOption({},n,"",t)}:function(e,t){return o.extractOption(s,n,e,t)};function c(t,r,n){var i=u(r,n);l(i)&&(e[t]=i)}if(c("hoverinfo","hi","hoverinfo"),c("bgcolor","hbg","hoverlabel.bgcolor"),c("borderColor","hbc","hoverlabel.bordercolor"),c("fontFamily","htf","hoverlabel.font.family"),c("fontSize","hts","hoverlabel.font.size"),c("fontColor","htc","hoverlabel.font.color"),c("nameLength","hnl","hoverlabel.namelength"),c("textAlign","hta","hoverlabel.align"),e.posref="y"===t||"closest"===t&&"h"===n.orientation?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=o.constrain(e.x0,0,e.xa._length),e.x1=o.constrain(e.x1,0,e.xa._length),e.y0=o.constrain(e.y0,0,e.ya._length),e.y1=o.constrain(e.y1,0,e.ya._length),void 0!==e.xLabelVal&&(e.xLabel="xLabel"in e?e.xLabel:v.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),void 0!==e.yLabelVal&&(e.yLabel="yLabel"in e?e.yLabel:v.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),void 0!==e.zLabelVal&&void 0===e.zLabel&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!("log"===e.xa.type&&e.xerr<=0)){var f=v.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;void 0!==e.xerrneg?e.xLabel+=" +"+f+" / -"+v.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xb1 "+f,"x"===t&&(e.distance+=1)}if(!isNaN(e.yerr)&&!("log"===e.ya.type&&e.yerr<=0)){var d=v.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;void 0!==e.yerrneg?e.yLabel+=" +"+d+" / -"+v.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xb1 "+d,"y"===t&&(e.distance+=1)}var h=e.hoverinfo||e.trace.hoverinfo;return h&&"all"!==h&&(-1===(h=Array.isArray(h)?h:h.split("+")).indexOf("x")&&(e.xLabel=void 0),-1===h.indexOf("y")&&(e.yLabel=void 0),-1===h.indexOf("z")&&(e.zLabel=void 0),-1===h.indexOf("text")&&(e.text=void 0),-1===h.indexOf("name")&&(e.name=void 0)),e}function F(e,t,r){var n,i,o=r.container,s=r.fullLayout,l=s._size,u=r.event,c=!!t.hLinePoint,f=!!t.vLinePoint;if(o.selectAll(".spikeline").remove(),f||c){var p=h.combine(s.plot_bgcolor,s.paper_bgcolor);if(c){var m,g,y=t.hLinePoint;n=y&&y.xa,"cursor"===(i=y&&y.ya).spikesnap?(m=u.pointerX,g=u.pointerY):(m=n._offset+y.x,g=i._offset+y.y);var x,b,_=a.readability(y.color,p)<1.5?h.contrast(p):y.color,w=i.spikemode,k=i.spikethickness,T=i.spikecolor||_,M=v.getPxPosition(e,i);if(-1!==w.indexOf("toaxis")||-1!==w.indexOf("across")){if(-1!==w.indexOf("toaxis")&&(x=M,b=m),-1!==w.indexOf("across")){var A=i._counterDomainMin,S=i._counterDomainMax;"free"===i.anchor&&(A=Math.min(A,i.position),S=Math.max(S,i.position)),x=l.l+A*l.w,b=l.l+S*l.w}o.insert("line",":first-child").attr({x1:x,x2:b,y1:g,y2:g,"stroke-width":k,stroke:T,"stroke-dasharray":d.dashStyle(i.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:x,x2:b,y1:g,y2:g,"stroke-width":k+2,stroke:p}).classed("spikeline",!0).classed("crisp",!0)}-1!==w.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:M+("right"!==i.side?k:-k),cy:g,r:k,fill:T}).classed("spikeline",!0)}if(f){var E,C,L=t.vLinePoint;n=L&&L.xa,i=L&&L.ya,"cursor"===n.spikesnap?(E=u.pointerX,C=u.pointerY):(E=n._offset+L.x,C=i._offset+L.y);var P,O,I=a.readability(L.color,p)<1.5?h.contrast(p):L.color,D=n.spikemode,R=n.spikethickness,z=n.spikecolor||I,F=v.getPxPosition(e,n);if(-1!==D.indexOf("toaxis")||-1!==D.indexOf("across")){if(-1!==D.indexOf("toaxis")&&(P=F,O=C),-1!==D.indexOf("across")){var N=n._counterDomainMin,B=n._counterDomainMax;"free"===n.anchor&&(N=Math.min(N,n.position),B=Math.max(B,n.position)),P=l.t+(1-B)*l.h,O=l.t+(1-N)*l.h}o.insert("line",":first-child").attr({x1:E,x2:E,y1:P,y2:O,"stroke-width":R,stroke:z,"stroke-dasharray":d.dashStyle(n.spikedash,R)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:E,x2:E,y1:P,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:F-("top"!==n.side?R:-R),r:R,fill:z}).classed("spikeline",!0)}}}function N(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function B(e,t){return c.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em"]})}function j(e,t,r){var n=t[e+"a"],i=t[e+"Val"],a=t.cd[0];if("category"===n.type||"multicategory"===n.type)i=n._categoriesMap[i];else if("date"===n.type){var o=t.trace[e+"periodalignment"];if(o){var s=t.cd[t.index],l=s[e+"Start"];void 0===l&&(l=s[e]);var u=s[e+"End"];void 0===u&&(u=s[e]);var c=u-l;"end"===o?i+=c:"middle"===o&&(i+=c/2)}i=n.d2c(i)}return a&&a.t&&a.t.posLetter===n._id&&("group"!==r.boxmode&&"group"!==r.violinmode||(i+=a.t.dPos)),i}function U(e){return e.offsetTop+e.clientTop}function V(e){return e.offsetLeft+e.clientLeft}function H(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,s=i+n.width,l=a+n.height,u=o.apply3DTransform(r._invTransform)(i,a),c=o.apply3DTransform(r._invTransform)(s,l),f=u[0],d=u[1],h=c[0],p=c[1];return{x:f,y:d,width:h-f,height:p-d,top:Math.min(d,p),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(d,p)}}},38048:function(e,t,r){"use strict";var n=r(71828),i=r(7901),a=r(23469).isUnifiedHover;e.exports=function(e,t,r,o){o=o||{};var s=t.legend;function l(e){o.font[e]||(o.font[e]=s?t.legend.font[e]:t.font[e])}t&&a(t.hovermode)&&(o.font||(o.font={}),l("size"),l("family"),l("color"),s?(o.bgcolor||(o.bgcolor=i.combine(t.legend.bgcolor,t.paper_bgcolor)),o.bordercolor||(o.bordercolor=t.legend.bordercolor)):o.bgcolor||(o.bgcolor=t.paper_bgcolor)),r("hoverlabel.bgcolor",o.bgcolor),r("hoverlabel.bordercolor",o.bordercolor),r("hoverlabel.namelength",o.namelength),n.coerceFont(r,"hoverlabel.font",o.font),r("hoverlabel.align",o.align)}},98212:function(e,t,r){"use strict";var n=r(71828),i=r(528);e.exports=function(e,t){function r(r,a){return void 0!==t[r]?t[r]:n.coerce(e,t,i,r,a)}return r("clickmode"),r("hovermode")}},30211:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(28569),o=r(23469),s=r(528),l=r(88335);e.exports={moduleType:"component",name:"fx",constants:r(26675),schema:{layout:s},attributes:r(77914),layoutAttributes:s,supplyLayoutGlobalDefaults:r(22774),supplyDefaults:r(54268),supplyLayoutDefaults:r(34938),calc:r(30732),getDistanceFunction:o.getDistanceFunction,getClosest:o.getClosest,inbox:o.inbox,quadrature:o.quadrature,appendArrayPointValue:o.appendArrayPointValue,castHoverOption:function(e,t,r){return i.castOption(e,t,"hoverlabel."+r)},castHoverinfo:function(e,t,r){return i.castOption(e,r,"hoverinfo",(function(r){return i.coerceHoverinfo({hoverinfo:r},{_module:e._module},t)}))},hover:l.hover,unhover:a.unhover,loneHover:l.loneHover,loneUnhover:function(e){var t=i.isD3Selection(e)?e:n.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()},click:r(75914)}},528:function(e,t,r){"use strict";var n=r(26675),i=r(41940),a=i({editType:"none"});a.family.dflt=n.HOVERFONT,a.size.dflt=n.HOVERFONTSIZE,e.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(e,t,r){"use strict";var n=r(71828),i=r(528),a=r(98212),o=r(38048);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}a(e,t)&&(r("hoverdistance"),r("spikedistance")),"select"===r("dragmode")&&r("selectdirection");var s=t._has("mapbox"),l=t._has("geo"),u=t._basePlotModules.length;"zoom"===t.dragmode&&((s||l)&&1===u||s&&l&&2===u)&&(t.dragmode="pan"),o(e,t,r),n.coerceFont(r,"hoverlabel.grouptitlefont",t.hoverlabel.font)}},22774:function(e,t,r){"use strict";var n=r(71828),i=r(38048),a=r(528);e.exports=function(e,t){i(e,t,(function(r,i){return n.coerce(e,t,a,r,i)}))}},83312:function(e,t,r){"use strict";var n=r(71828),i=r(30587).counter,a=r(27670).Y,o=r(85555).idRegex,s=r(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 u(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});return Array.isArray(n)?n:i.length?i:void 0}function c(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),d=0;d1){d||h||p||"independent"===T("pattern")&&(d=!0),m._hasSubplotGrid=d;var x,b,_="top to bottom"===T("roworder"),w=d?.2:.1,k=d?.3:.1;v&&t._splomGridDflt&&(x=t._splomGridDflt.xside,b=t._splomGridDflt.yside),m._domains={x:c("x",T,w,x,y),y:c("y",T,k,b,g,_)}}else delete t.grid}function T(e,t){return n.coerce(r,m,l,e,t)}},contentDefaults:function(e,t){var r=t.grid;if(r&&r._domains){var n,i,a,o,s,l,c,d=e.grid||{},h=t._subplots,p=r._hasSubplotGrid,v=r.rows,m=r.columns,g="independent"===r.pattern,y=r._axisMap={};if(p){var x=d.subplots||[];l=r.subplots=new Array(v);var b=1;for(n=0;n1);if(!1===k&&(r.legend=void 0),(!1!==k||f.uirevision)&&(h("uirevision",r.uirevision),!1!==k)){h("borderwidth");var T,M,A,S="h"===h("orientation");if(S?(T=0,n.getComponentMethod("rangeslider","isVisible")(t.xaxis)?(M=1.1,A="bottom"):(M=-.1,A="top")):(T=1.02,M=1,A="auto"),h("traceorder",_),u.isGrouped(r.legend)&&h("tracegroupgap"),h("entrywidth"),h("entrywidthmode"),h("itemsizing"),h("itemwidth"),h("itemclick"),h("itemdoubleclick"),h("groupclick"),h("x",T),h("xanchor"),h("y",M),h("yanchor",A),h("valign"),i.noneOrAll(f,d,["x","y"]),h("title.text")){h("title.side",S?"left":"top");var E=i.extendFlat({},p,{size:i.bigFont(p.size)});i.coerceFont(h,"title.font",E)}}}}e.exports=function(e,t,r){var n,a=["legend"];for(n=0;n1)}var k=d.hiddenlabels||[];if(!v&&(!d.showlegend||!w.length))return s.selectAll("."+p).remove(),d._topdefs.select("#"+r).remove(),a.autoMargin(e,p);var S=i.ensureSingle(s,"g",p,(function(e){v||e.attr("pointer-events","all")})),I=i.ensureSingleById(d._topdefs,"clipPath",r,(function(e){e.append("rect")})),D=i.ensureSingle(S,"rect","bg",(function(e){e.attr("shape-rendering","crispEdges")}));D.call(c.stroke,f.bordercolor).call(c.fill,f.bgcolor).style("stroke-width",f.borderwidth+"px");var R=i.ensureSingle(S,"g","scrollbox"),z=f.title;if(f._titleWidth=0,f._titleHeight=0,z.text){var F=i.ensureSingle(R,"text",p+"titletext");F.attr("text-anchor","start").call(u.font,z.font).text(z.text),C(F,R,e,f,_)}else R.selectAll("."+p+"titletext").remove();var N=i.ensureSingle(S,"rect","scrollbar",(function(e){e.attr(h.scrollBarEnterAttrs).call(c.fill,h.scrollBarColor)})),B=R.selectAll("g.groups").data(w);B.enter().append("g").attr("class","groups"),B.exit().remove();var j=B.selectAll("g.traces").data(i.identity);j.enter().append("g").attr("class","traces"),j.exit().remove(),j.style("opacity",(function(e){var t=e[0].trace;return o.traceIs(t,"pie-like")?-1!==k.indexOf(e[0].label)?.5:1:"legendonly"===t.visible?.5:1})).each((function(){n.select(this).call(A,e,f)})).call(x,e,f).each((function(){v||n.select(this).call(E,e,p)})),i.syncOrAsync([a.previousPromises,function(){return function(e,t,r,i){var a=e._fullLayout,o=O(i);i||(i=a[o]);var s=a._size,l=b.isVertical(i),c=b.isGrouped(i),f="fraction"===i.entrywidthmode,d=i.borderwidth,p=2*d,v=h.itemGap,m=i.itemwidth+2*v,g=2*(d+v),y=P(i),x=i.y<0||0===i.y&&"top"===y,_=i.y>1||1===i.y&&"bottom"===y,w=i.tracegroupgap,k={};i._maxHeight=Math.max(x||_?a.height/2:s.h,30);var M=0;i._width=0,i._height=0;var A=function(e){var t=0,r=0,n=e.title.side;return n&&(-1!==n.indexOf("left")&&(t=e._titleWidth),-1!==n.indexOf("top")&&(r=e._titleHeight)),[t,r]}(i);if(l)r.each((function(e){var t=e[0].height;u.setTranslate(this,d+A[0],d+A[1]+i._height+t/2+v),i._height+=t,i._width=Math.max(i._width,e[0].width)})),M=m+i._width,i._width+=v+m+p,i._height+=g,c&&(t.each((function(e,t){u.setTranslate(this,0,t*i.tracegroupgap)})),i._height+=(i._lgroupsLength-1)*i.tracegroupgap);else{var S=L(i),E=i.x<0||0===i.x&&"right"===S,C=i.x>1||1===i.x&&"left"===S,I=_||x,D=a.width/2;i._maxWidth=Math.max(E?I&&"left"===S?s.l+s.w:D:C?I&&"right"===S?s.r+s.w:D:s.w,2*m);var R=0,z=0;r.each((function(e){var t=T(e,i,m);R=Math.max(R,t),z+=t})),M=null;var F=0;if(c){var N=0,B=0,j=0;t.each((function(){var e=0,t=0;n.select(this).selectAll("g.traces").each((function(r){var n=T(r,i,m),a=r[0].height;u.setTranslate(this,A[0],A[1]+d+v+a/2+t),t+=a,e=Math.max(e,n),k[r[0].trace.legendgroup]=e}));var r=e+v;B>0&&r+d+B>i._maxWidth?(F=Math.max(F,B),B=0,j+=N+w,N=t):N=Math.max(N,t),u.setTranslate(this,B,j),B+=r})),i._width=Math.max(F,B)+d,i._height=j+N+g}else{var U=r.size(),V=z+p+(U-1)*v=i._maxWidth&&(F=Math.max(F,G),q=0,W+=H,i._height+=H,H=0),u.setTranslate(this,A[0]+d+q,A[1]+d+W+t/2+v),G=q+r+v,q+=n,H=Math.max(H,t)})),V?(i._width=q+p,i._height=H+g):(i._width=Math.max(F,G)+p,i._height+=H+g)}}i._width=Math.ceil(Math.max(i._width+A[0],i._titleWidth+2*(d+h.titlePad))),i._height=Math.ceil(Math.max(i._height+A[1],i._titleHeight+2*(d+h.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var Y=e._context.edits,Z=Y.legendText||Y.legendPosition;r.each((function(e){var t=n.select(this).select("."+o+"toggle"),r=e[0].height,a=e[0].trace.legendgroup,s=T(e,i,m);c&&""!==a&&(s=k[a]);var d=Z?m:M||s;l||f||(d+=v/2),u.setRect(t,0,-r/2,d,r)}))}(e,B,j,f)},function(){var t,s,c,y,x=d._size,b=f.borderwidth;if(!v){var _=function(e,t){var r=e._fullLayout,n=r[t],i=L(n),o=P(n);return a.autoMargin(e,t,{x:n.x,y:n.y,l:n._width*m[i],r:n._width*g[i],b:n._effHeight*g[o],t:n._effHeight*m[o]})}(e,p);if(_)return;var w=x.l+x.w*f.x-m[L(f)]*f._width,k=x.t+x.h*(1-f.y)-m[P(f)]*f._effHeight;if(d.margin.autoexpand){var T=w,A=k;w=i.constrain(w,0,d.width-f._width),k=i.constrain(k,0,d.height-f._effHeight),w!==T&&i.log("Constrain "+p+".x to make legend fit inside graph"),k!==A&&i.log("Constrain "+p+".y to make legend fit inside graph")}u.setTranslate(S,w,k)}if(N.on(".drag",null),S.on("wheel",null),v||f._height<=f._maxHeight||e._context.staticPlot){var E=f._effHeight;v&&(E=f._height),D.attr({width:f._width-b,height:E-b,x:b/2,y:b/2}),u.setTranslate(R,0,0),I.select("rect").attr({width:f._width-2*b,height:E-2*b,x:b,y:b}),u.setClipUrl(R,r,e),u.setRect(N,0,0,0,0),delete f._scrollY}else{var C,O,z,F=Math.max(h.scrollBarMinHeight,f._effHeight*f._effHeight/f._height),j=f._effHeight-F-2*h.scrollBarMargin,U=f._height-f._effHeight,V=j/U,H=Math.min(f._scrollY||0,U);D.attr({width:f._width-2*b+h.scrollBarWidth+h.scrollBarMargin,height:f._effHeight-b,x:b/2,y:b/2}),I.select("rect").attr({width:f._width-2*b+h.scrollBarWidth+h.scrollBarMargin,height:f._effHeight-2*b,x:b,y:b+H}),u.setClipUrl(R,r,e),G(H,F,V),S.on("wheel",(function(){G(H=i.constrain(f._scrollY+n.event.deltaY/j*U,0,U),F,V),0!==H&&H!==U&&n.event.preventDefault()}));var q=n.behavior.drag().on("dragstart",(function(){var e=n.event.sourceEvent;C="touchstart"===e.type?e.changedTouches[0].clientY:e.clientY,z=H})).on("drag",(function(){var e=n.event.sourceEvent;2===e.buttons||e.ctrlKey||(O="touchmove"===e.type?e.changedTouches[0].clientY:e.clientY,H=function(e,t,r){var n=(r-t)/V+e;return i.constrain(n,0,U)}(z,C,O),G(H,F,V))}));N.call(q);var W=n.behavior.drag().on("dragstart",(function(){var e=n.event.sourceEvent;"touchstart"===e.type&&(C=e.changedTouches[0].clientY,z=H)})).on("drag",(function(){var e=n.event.sourceEvent;"touchmove"===e.type&&(O=e.changedTouches[0].clientY,H=function(e,t,r){var n=(t-r)/V+e;return i.constrain(n,0,U)}(z,C,O),G(H,F,V))}));R.call(W)}function G(t,r,n){f._scrollY=e._fullLayout[p]._scrollY=t,u.setTranslate(R,0,-t),u.setRect(N,f._width,h.scrollBarMargin+t*n,h.scrollBarWidth,r),I.select("rect").attr("y",b+t)}e._context.edits.legendPosition&&(S.classed("cursor-move",!0),l.init({element:S.node(),gd:e,prepFn:function(){var e=u.getTranslate(S);c=e.x,y=e.y},moveFn:function(e,r){var n=c+e,i=y+r;u.setTranslate(S,n,i),t=l.align(n,f._width,x.l,x.l+x.w,f.xanchor),s=l.align(i+f._height,-f._height,x.t+x.h,x.t,f.yanchor)},doneFn:function(){if(void 0!==t&&void 0!==s){var r={};r[p+".x"]=t,r[p+".y"]=s,o.call("_guiRelayout",e,r)}},clickFn:function(t,r){var n=B.selectAll("g.traces").filter((function(){var e=this.getBoundingClientRect();return r.clientX>=e.left&&r.clientX<=e.right&&r.clientY>=e.top&&r.clientY<=e.bottom}));n.size()>0&&M(e,S,n,t,r)}}))}],e)}}function T(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return"fraction"===a?t._maxWidth*o:r+(o||i)}function M(e,t,r,n,i){var a=r.data()[0][0].trace,l={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a._expandedIndex,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(l.group=a._group),o.traceIs(a,"pie-like")&&(l.label=r.datum()[0].label),!1!==s.triggerHandler(e,"plotly_legendclick",l)&&(1===n?t._clickTimeout=setTimeout((function(){e._fullLayout&&d(r,e,n)}),e._context.doubleClickDelay):2===n&&(t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0,!1!==s.triggerHandler(e,"plotly_legenddoubleclick",l)&&d(r,e,n)))}function A(e,t,r){var n,a,s=O(r),l=e.data()[0][0],c=l.trace,d=o.traceIs(c,"pie-like"),p=!r._inHover&&t._context.edits.legendText&&!d,v=r._maxNameLength;l.groupTitle?(n=l.groupTitle.text,a=l.groupTitle.font):(a=r.font,r.entries?n=l.text:(n=d?l.label:c.name,c._meta&&(n=i.templateString(n,c._meta))));var m=i.ensureSingle(e,"text",s+"text");m.attr("text-anchor","start").call(u.font,a).text(p?S(n,v):n);var g=r.itemwidth+2*h.itemGap;f.positionText(m,g,0),p?m.call(f.makeEditable,{gd:t,text:n}).call(C,e,t,r).on("edit",(function(n){this.text(S(n,v)).call(C,e,t,r);var a=l.trace._fullInput||{},s={};if(o.hasTransform(a,"groupby")){var u=o.getTransformIndices(a,"groupby"),f=u[u.length-1],d=i.keyedContainer(a,"transforms["+f+"].styles","target","value.name");d.set(l.trace._group,n),s=d.constructUpdate()}else s.name=n;return o.call("_guiRestyle",t,s,c.index)})):C(m,e,t,r)}function S(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;for(var n=r-(e=e||"").length;n>0;n--)e+=" ";return e}function E(e,t,r){var a,o=t._context.doubleClickDelay,s=1,l=i.ensureSingle(e,"rect",r+"toggle",(function(e){t._context.staticPlot||e.style("cursor","pointer").attr("pointer-events","all"),e.call(c.fill,"rgba(0,0,0,0)")}));t._context.staticPlot||(l.on("mousedown",(function(){(a=(new Date).getTime())-t._legendMouseDownTimeo&&(s=Math.max(s-1,1)),M(t,i,e,s,n.event)}})))}function C(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),f.convertToTspans(e,r,(function(){!function(e,t,r,n){var i=e.data()[0][0];if(r._inHover||!i||i.trace.showlegend){var a=e.select("g[class*=math-group]"),o=a.node(),s=O(r);r||(r=t._fullLayout[s]);var l,c,d=r.borderwidth,p=(n===_?r.title.font:i.groupTitle?i.groupTitle.font:r.font).size*v;if(o){var m=u.bBox(o);l=m.height,c=m.width,n===_?u.setTranslate(a,d,d+.75*l):u.setTranslate(a,0,.25*l)}else{var g="."+s+(n===_?"title":"")+"text",y=e.select(g),x=f.lineCount(y),b=y.node();if(l=p*x,c=b?u.bBox(b).width:0,n===_)"left"===r.title.side&&(c+=2*h.itemGap),f.positionText(y,d+h.titlePad,d+p);else{var w=2*h.itemGap+r.itemwidth;i.groupTitle&&(w=h.itemGap,c-=r.itemwidth),f.positionText(y,w,-p*((x-1)/2-.3))}}n===_?(r._titleWidth=c,r._titleHeight=l):(i.lineHeight=p,i.height=Math.max(l,16)+3,i.width=c)}else e.remove()}(t,r,n,i)}))}function L(e){return i.isRightAnchor(e)?"right":i.isCenterAnchor(e)?"center":"left"}function P(e){return i.isBottomAnchor(e)?"bottom":i.isMiddleAnchor(e)?"middle":"top"}function O(e){return e._id||"legend"}e.exports=function(e,t){if(t)k(e,t);else{var r=e._fullLayout,i=r._legends;r._infolayer.selectAll('[class^="legend"]').each((function(){var e=n.select(this),t=e.attr("class").split(" ")[0];t.match(w)&&-1===i.indexOf(t)&&e.remove()}));for(var a=0;aS&&(A=S)}T[a][0]._groupMinRank=A,T[a][0]._preGroupSort=a}var E=function(e,t){return e.trace.legendrank-t.trace.legendrank||e._preSort-t._preSort};for(T.forEach((function(e,t){e[0]._preGroupSort=t})),T.sort((function(e,t){return e[0]._groupMinRank-t[0]._groupMinRank||e[0]._preGroupSort-t[0]._preGroupSort})),a=0;ar?r:e}e.exports=function(e,t,r){var g=t._fullLayout;r||(r=g.legend);var y="constant"===r.itemsizing,x=r.itemwidth,b=(x+2*h.itemGap)/2,_=o(b,0),w=function(e,t,r,n){var i;if(e+1)i=e;else{if(!(t&&t.width>0))return 0;i=t.width}return y?n:Math.min(i,r)};function k(e,a,o){var c=e[0].trace,f=c.marker||{},d=f.line||{},h=o?c.visible&&c.type===o:i.traceIs(c,"bar"),p=n.select(a).select("g.legendpoints").selectAll("path.legend"+o).data(h?[e]:[]);p.enter().append("path").classed("legend"+o,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",_),p.exit().remove(),p.each((function(e){var i=n.select(this),a=e[0],o=w(a.mlw,f.line,5,2);i.style("stroke-width",o+"px");var h=a.mcc;if(!r._inHover&&"mc"in a){var p=u(f),v=p.mid;void 0===v&&(v=(p.max+p.min)/2),h=s.tryColorscale(f,"")(v)}var g=h||a.mc||f.color,y=f.pattern,x=y&&s.getPatternAttr(y.shape,0,"");if(x){var b=s.getPatternAttr(y.bgcolor,0,null),_=s.getPatternAttr(y.fgcolor,0,null),k=y.fgopacity,T=m(y.size,8,10),M=m(y.solidity,.5,1),A="legend-"+c.uid;i.call(s.pattern,"legend",t,A,x,T,M,h,y.fillmode,b,_,k)}else i.call(l.fill,g);o&&l.stroke(i,a.mlc||d.color)}))}function T(e,t,r){var o=e[0],s=o.trace,l=r?s.visible&&s.type===r:i.traceIs(s,r),u=n.select(t).select("g.legendpoints").selectAll("path.legend"+r).data(l?[e]:[]);if(u.enter().append("path").classed("legend"+r,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",_),u.exit().remove(),u.size()){var c=(s.marker||{}).line,h=w(d(c.width,o.pts),c,5,2),p=a.minExtend(s,{marker:{line:{width:h}}});p.marker.line.color=c.color;var v=a.minExtend(o,{trace:p});f(u,v,p)}}e.each((function(e){var t=n.select(this),i=a.ensureSingle(t,"g","layers");i.style("opacity",e[0].trace.opacity);var s=r.valign,l=e[0].lineHeight,u=e[0].height;if("middle"!==s&&l&&u){var c={top:1,bottom:-1}[s]*(.5*(l-u+3));i.attr("transform",o(0,c))}else i.attr("transform",null);i.selectAll("g.legendfill").data([e]).enter().append("g").classed("legendfill",!0),i.selectAll("g.legendlines").data([e]).enter().append("g").classed("legendlines",!0);var f=i.selectAll("g.legendsymbols").data([e]);f.enter().append("g").classed("legendsymbols",!0),f.selectAll("g.legendpoints").data([e]).enter().append("g").classed("legendpoints",!0)})).each((function(e){var r,i=e[0].trace,o=[];if(i.visible)switch(i.type){case"histogram2d":case"heatmap":o=[["M-15,-2V4H15V-2Z"]],r=!0;break;case"choropleth":case"choroplethmapbox":o=[["M-6,-6V6H6V-6Z"]],r=!0;break;case"densitymapbox":o=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],r="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"]],r=!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"]],r=!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"]],r=!0;break;case"mesh3d":o=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],r=!1;break;case"volume":o=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],r=!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"]],r=!1}var c=n.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(o);c.enter().append("path").classed("legend3dandfriends",!0).attr("transform",_).style("stroke-miterlimit",1),c.exit().remove(),c.each((function(e,o){var c,f=n.select(this),d=u(i),h=d.colorscale,v=d.reversescale;if(h){if(!r){var m=h.length;c=0===o?h[v?m-1:0][1]:1===o?h[v?0:m-1][1]:h[Math.floor((m-1)/2)][1]}}else{var g=i.vertexcolor||i.facecolor||i.color;c=a.isArrayOrTypedArray(g)?g[o]||g[0]:g}f.attr("d",e[0]),c?f.call(l.fill,c):f.call((function(e){if(e.size()){var n="legendfill-"+i.uid;s.gradient(e,t,n,p(v,"radial"===r),h,"fill")}}))}))})).each((function(e){var t=e[0].trace,r="waterfall"===t.type;if(e[0]._distinct&&r){var i=e[0].trace[e[0].dir].marker;return e[0].mc=i.color,e[0].mlw=i.line.width,e[0].mlc=i.line.color,k(e,this,"waterfall")}var a=[];t.visible&&r&&(a=e[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=n.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(a);o.enter().append("path").classed("legendwaterfall",!0).attr("transform",_).style("stroke-miterlimit",1),o.exit().remove(),o.each((function(e){var r=n.select(this),i=t[e[0]].marker,a=w(void 0,i.line,5,2);r.attr("d",e[1]).style("stroke-width",a+"px").call(l.fill,i.color),a&&r.call(l.stroke,i.line.color)}))})).each((function(e){k(e,this,"funnel")})).each((function(e){k(e,this)})).each((function(e){var r=e[0].trace,o=n.select(this).select("g.legendpoints").selectAll("path.legendbox").data(r.visible&&i.traceIs(r,"box-violin")?[e]:[]);o.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",_),o.exit().remove(),o.each((function(){var e=n.select(this);if("all"!==r.boxpoints&&"all"!==r.points||0!==l.opacity(r.fillcolor)||0!==l.opacity((r.line||{}).color)){var i=w(void 0,r.line,5,2);e.style("stroke-width",i+"px").call(l.fill,r.fillcolor),i&&l.stroke(e,r.line.color)}else{var u=a.minExtend(r,{marker:{size:y?12:a.constrain(r.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});o.call(s.pointStyle,u,t)}}))})).each((function(e){T(e,this,"funnelarea")})).each((function(e){T(e,this,"pie")})).each((function(e){var r,i,o=v(e),l=o.showFill,f=o.showLine,d=o.showGradientLine,h=o.showGradientFill,m=o.anyFill,g=o.anyLine,y=e[0],b=y.trace,_=u(b),k=_.colorscale,T=_.reversescale,M=c.hasMarkers(b)||!m?"M5,0":g?"M5,-2":"M5,-3",A=n.select(this),S=A.select(".legendfill").selectAll("path").data(l||h?[e]:[]);if(S.enter().append("path").classed("js-fill",!0),S.exit().remove(),S.attr("d",M+"h"+x+"v6h-"+x+"z").call((function(e){if(e.size())if(l)s.fillGroupStyle(e,t);else{var r="legendfill-"+b.uid;s.gradient(e,t,r,p(T),k,"fill")}})),f||d){var E=w(void 0,b.line,10,5);i=a.minExtend(b,{line:{width:E}}),r=[a.minExtend(y,{trace:i})]}var C=A.select(".legendlines").selectAll("path").data(f||d?[r]:[]);C.enter().append("path").classed("js-line",!0),C.exit().remove(),C.attr("d",M+(d?"l"+x+",0.0001":"h"+x)).call(f?s.lineGroupStyle:function(e){if(e.size()){var r="legendline-"+b.uid;s.lineGroupStyle(e),s.gradient(e,t,r,p(T),k,"stroke")}})})).each((function(e){var r,i,o=v(e),l=o.anyFill,u=o.anyLine,f=o.showLine,d=o.showMarker,h=e[0],p=h.trace,m=!d&&!u&&!l&&c.hasText(p);function g(e,t,r,n){var i=a.nestedProperty(p,e).get(),o=a.isArrayOrTypedArray(i)&&t?t(i):i;if(y&&o&&void 0!==n&&(o=n),r){if(or[1])return r[1]}return o}function x(e){return h._distinct&&h.index&&e[h.index]?e[h.index]:e[0]}if(d||m||f){var b={},w={};if(d){b.mc=g("marker.color",x),b.mx=g("marker.symbol",x),b.mo=g("marker.opacity",a.mean,[.2,1]),b.mlc=g("marker.line.color",x),b.mlw=g("marker.line.width",a.mean,[0,5],2),w.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var k=g("marker.size",a.mean,[2,16],12);b.ms=k,w.marker.size=k}f&&(w.line={width:g("line.width",x,[0,10],5)}),m&&(b.tx="Aa",b.tp=g("textposition",x),b.ts=10,b.tc=g("textfont.color",x),b.tf=g("textfont.family",x)),r=[a.minExtend(h,b)],(i=a.minExtend(p,w)).selectedpoints=null,i.texttemplate=null}var T=n.select(this).select("g.legendpoints"),M=T.selectAll("path.scatterpts").data(d?r:[]);M.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",_),M.exit().remove(),M.call(s.pointStyle,i,t),d&&(r[0].mrc=3);var A=T.selectAll("g.pointtext").data(m?r:[]);A.enter().append("g").classed("pointtext",!0).append("text").attr("transform",_),A.exit().remove(),A.selectAll("text").call(s.textPointStyle,i,t)})).each((function(e){var t=e[0].trace,r=n.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(t.visible&&"candlestick"===t.type?[e,e]:[]);r.enter().append("path").classed("legendcandle",!0).attr("d",(function(e,t){return t?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"})).attr("transform",_).style("stroke-miterlimit",1),r.exit().remove(),r.each((function(e,r){var i=n.select(this),a=t[r?"increasing":"decreasing"],o=w(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(e){var t=e[0].trace,r=n.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(t.visible&&"ohlc"===t.type?[e,e]:[]);r.enter().append("path").classed("legendohlc",!0).attr("d",(function(e,t){return t?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"})).attr("transform",_).style("stroke-miterlimit",1),r.exit().remove(),r.each((function(e,r){var i=n.select(this),a=t[r?"increasing":"decreasing"],o=w(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(e,t,r){"use strict";r(93348),e.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(e,t,r){"use strict";var n=r(73972),i=r(74875),a=r(41675),o=r(24255),s=r(34031).eraseActiveShape,l=r(71828),u=l._,c=e.exports={};function f(e,t){var r,i,o=t.currentTarget,s=o.getAttribute("data-attr"),l=o.getAttribute("data-val")||!0,u=e._fullLayout,c={},f=a.list(e,null,!0),d=u._cartesianSpikesEnabled;if("zoom"===s){var h,p="in"===l?.5:2,v=(1+p)/2,m=(1-p)/2;for(i=0;i1?(O=["toggleHover"],I=["resetViews"]):g?(P=["zoomInGeo","zoomOutGeo"],O=["hoverClosestGeo"],I=["resetGeo"]):m?(O=["hoverClosest3d"],I=["resetCameraDefault3d","resetCameraLastSave3d"]):w?(P=["zoomInMapbox","zoomOutMapbox"],O=["toggleHover"],I=["resetViewMapbox"]):b?O=["hoverClosestGl2d"]:y?O=["hoverClosestPie"]:M?(O=["hoverClosestCartesian","hoverCompareCartesian"],I=["resetViewSankey"]):O=["toggleHover"],v&&(O=["toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"]),(function(e){for(var t=0;t0)){var v=function(e,t,r){for(var n=r.filter((function(r){return t[r].anchor===e._id})),i=0,a=0;a=n.max)t=F[r+1];else if(e=n.pmax)t=F[r+1];else if(er._length||g+b<0)return;c=m+b,h=g+b;break;case l:if(x="col-resize",m+b>r._length)return;c=m+b,h=g;break;case u:if(x="col-resize",g+b<0)return;c=m,h=g+b;break;default:x="ew-resize",c=v,h=v+b}if(h=0;T--){var M=r.append("path").attr(m).style("opacity",T?.1:g).call(o.stroke,x).call(o.fill,y).call(s.dashLine,T?"solid":_,T?4+b:b);if(p(M,e,a),w){var A=l(e.layout,"selections",a);M.style({cursor:"move"});var S={element:M.node(),plotinfo:h,gd:e,editHelpers:A,isActiveSelection:!0},E=n(u,e);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(e,t){if(d(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex)return void v(e);e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=v,f(e)}}}(e,C)}))}(e._fullLayout._selectionLayer)}function p(e,t,r){var n=r.xref+r.yref;s.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function v(e){d(e)&&e._fullLayout._activeSelectionIndex>=0&&(a(e),delete e._fullLayout._activeSelectionIndex,f(e))}e.exports={draw:f,drawOne:h,activateLastSelection:function(e){if(d(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=v,f(e)}}}},53777:function(e,t,r){"use strict";var n=r(79952).P,i=r(1426).extendFlat;e.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({},n,{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(e){"use strict";e.exports=function(e,t,r){r("newselection.mode"),r("newselection.line.width")&&(r("newselection.line.color"),r("newselection.line.dash")),r("activeselection.fillcolor"),r("activeselection.opacity")}},35855:function(e,t,r){"use strict";var n=r(64505).selectMode,i=r(51873).clearOutline,a=r(60165),o=a.readPaths,s=a.writePaths,l=a.fixDatesForPaths;e.exports=function(e,t){if(e.length){var r=e[0][0];if(r){var a=r.getAttribute("d"),u=t.gd,c=u._fullLayout.newselection,f=t.plotinfo,d=f.xaxis,h=f.yaxis,p=t.isActiveSelection,v=t.dragmode,m=(u.layout||{}).selections||[];if(!n(v)&&void 0!==p){var g=u._fullLayout._activeSelectionIndex;if(g-1,b=[];if(function(e){return e&&Array.isArray(e)&&!0!==e[0].hoverOnBox}(g)){G(e,t,a);var _=function(e,t){var r,n,i=e[0],a=-1,o=[];for(n=0;n0?function(e,t){var r,n,i,a=[];for(i=0;i0&&a.push(r);if(1===a.length&&a[0]===t.searchInfo&&(n=t.searchInfo.cd[0].trace).selectedpoints.length===t.pointNumbers.length){for(i=0;i1)return!1;if((n+=t.selectedpoints.length)>1)return!1}return 1===n}(s)&&(d=$(_))){for(o&&o.remove(),m=0;m=0})(i)&&i._fullLayout._deactivateShape(i),function(e){return e._fullLayout._activeSelectionIndex>=0}(i)&&i._fullLayout._deactivateSelection(i);var o=i._fullLayout._zoomlayer,s=h(r),l=v(r);if(s||l){var u,c,f=o.selectAll(".select-outline-"+n.id);f&&i._fullLayout._outlining&&(s&&(u=k(f,e)),u&&a.call("_guiRelayout",i,{shapes:u}),l&&!U(e)&&(c=T(f,e)),c&&(i._fullLayout._noEmitSelectedAtStart=!0,a.call("_guiRelayout",i,{selections:c}).then((function(){t&&M(i)}))),i._fullLayout._outlining=!1)}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function Z(e){return e._id}function X(e,t,r,n){if(!e.calcdata)return[];var i,a,o,s=[],l=t.map(Z),u=r.map(Z);for(o=0;o0?n[0]:r;return!!t.selectedpoints&&t.selectedpoints.indexOf(i)>-1}function J(e,t,r){var n,i;for(n=0;n-1&&t;if(!a&&t){var te=oe(e,!0);if(te.length){var ne=te[0].xref,he=te[0].yref;if(ne&&he){var pe=ue(te);ce([L(e,ne,"x"),L(e,he,"y")])(Q,pe)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ee&&fe(e,Q),d._reselect=!1}if(!a&&d._deselect){var ve=d._deselect;(function(e,t,r){for(var n=0;n=0)T._fullLayout._deactivateShape(T);else if(!x){var r=M.clickmode;C.done(Me).then((function(){if(C.clear(Me),2===e){for(be.remove(),$=0;$-1&&V(t,T,n.xaxes,n.yaxes,n.subplot,n,be),"event"===r&&fe(T,void 0);l.click(T,t)})).catch(A.error)}},n.doneFn=function(){Te.remove(),C.done(Me).then((function(){C.clear(Me),!S&&K&&n.selectionDefs&&(K.subtract=xe,n.selectionDefs.push(K),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,Z)),(S||x)&&Y(n,S),n.doneFnCompleted&&n.doneFnCompleted(Ae),b&&fe(T,ae)})).catch(A.error)}},clearOutline:x,clearSelectionsCache:Y,selectOnClick:V}},89827:function(e,t,r){"use strict";var n=r(50215),i=r(41940),a=r(82196).line,o=r(79952).P,s=r(1426).extendFlat,l=r(44467).templatedArray,u=(r(24695),r(5386).R),c=r(37281);e.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({},n.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({},n.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"},texttemplate:u({},{keys:Object.keys(c)}),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(e,t,r){"use strict";var n=r(71828),i=r(89298),a=r(21459),o=r(30477);function s(e){return u(e.line.width,e.xsizemode,e.x0,e.x1,e.path,!1)}function l(e){return u(e.line.width,e.ysizemode,e.y0,e.y1,e.path,!0)}function u(e,t,r,i,s,l){var u=e/2,c=l;if("pixel"===t){var f=s?o.extractPathCoords(s,l?a.paramIsY:a.paramIsX):[r,i],d=n.aggNums(Math.max,null,f),h=n.aggNums(Math.min,null,f),p=h<0?Math.abs(h)+u:u,v=d>0?d+u:u;return{ppad:u,ppadplus:c?p:v,ppadminus:c?v:p}}return{ppad:u}}function c(e,t,r,n,i){var s="category"===e.type||"multicategory"===e.type?e.r2c:e.d2c;if(void 0!==t)return[s(t),s(r)];if(n){var l,u,c,f,d=1/0,h=-1/0,p=n.match(a.segmentRE);for("date"===e.type&&(s=o.decodeDate(s)),l=0;lh&&(h=f)));return h>=d?[d,h]:void 0}}e.exports=function(e){var t=e._fullLayout,r=n.filterVisible(t.shapes);if(r.length&&e._fullData.length)for(var o=0;o1&&(2!==e.length||"Z"!==e[1][0])&&(0===E&&(e[0][0]="M"),t[S]=e,k(),T())}}()}}function N(e,r){!function(e,r){if(t.length)for(var n=0;nz&&a>F&&!r.shiftKey?h.getCursor(o/i,1-s/a):"move";p(t,l),R=l.split("-")[0]}}function ne(n){w(e)||(N&&(b=Z(r.xanchor)),B&&(_=X(r.yanchor)),"path"===r.type?D=r.path:(c=N?r.x0:Z(r.x0),d=B?r.y0:X(r.y0),v=N?r.x1:Z(r.x1),x=B?r.y1:X(r.y1)),cx?(k=d,L="y0",T=x,P="y1"):(k=x,L="y1",T=d,P="y0"),re(n),le(l,r),ce(t,r,e),Q.moveFn="move"===R?oe:se,Q.altKey=n.altKey)}function ie(){w(e)||(p(t),ue(l),M(t,e,r),i.call("_guiRelayout",e,u.getUpdateObj()))}function ae(){w(e)||ue(l)}function oe(n,i){if("path"===r.type){var a=function(e){return e},o=a,u=a;N?V("xanchor",r.xanchor=K(b+n)):(o=function(e){return K(Z(e)+n)},q&&"date"===q.type&&(o=g.encodeDate(o))),B?V("yanchor",r.yanchor=$(_+i)):(u=function(e){return $(X(e)+i)},G&&"date"===G.type&&(u=g.encodeDate(u))),V("path",r.path=S(D,o,u))}else N?V("xanchor",r.xanchor=K(b+n)):(V("x0",r.x0=K(c+n)),V("x1",r.x1=K(v+n))),B?V("yanchor",r.yanchor=$(_+i)):(V("y0",r.y0=$(d+i)),V("y1",r.y1=$(x+i)));t.attr("d",y(e,r)),le(l,r),A(e,s,r,H)}function se(n,i){if(U){var a=function(e){return e},o=a,u=a;N?V("xanchor",r.xanchor=K(b+n)):(o=function(e){return K(Z(e)+n)},q&&"date"===q.type&&(o=g.encodeDate(o))),B?V("yanchor",r.yanchor=$(_+i)):(u=function(e){return $(X(e)+i)},G&&"date"===G.type&&(u=g.encodeDate(u))),V("path",r.path=S(D,o,u))}else if(j){if("resize-over-start-point"===R){var f=c+n,h=B?d-i:d+i;V("x0",r.x0=N?f:K(f)),V("y0",r.y0=B?h:$(h))}else if("resize-over-end-point"===R){var p=v+n,m=B?x-i:x+i;V("x1",r.x1=N?p:K(p)),V("y1",r.y1=B?m:$(m))}}else{var w=function(e){return-1!==R.indexOf(e)},M=w("n"),W=w("s"),Y=w("w"),J=w("e"),Q=M?k+i:k,ee=W?T+i:T,te=Y?E+n:E,re=J?C+n:C;B&&(M&&(Q=k-i),W&&(ee=T-i)),(!B&&ee-Q>F||B&&Q-ee>F)&&(V(L,r[L]=B?Q:$(Q)),V(P,r[P]=B?ee:$(ee))),re-te>z&&(V(O,r[O]=N?te:K(te)),V(I,r[I]=N?re:K(re)))}t.attr("d",y(e,r)),le(l,r),A(e,s,r,H)}function le(e,t){function r(){var r="path"!==t.type,n=e.selectAll(".visual-cue").data([0]),i=1;n.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":i}).classed("visual-cue",!0);var o=Z(N?t.xanchor:a.midRange(r?[t.x0,t.x1]:g.extractPathCoords(t.path,m.paramIsX))),s=X(B?t.yanchor:a.midRange(r?[t.y0,t.y1]:g.extractPathCoords(t.path,m.paramIsY)));if(o=g.roundPositionForSharpStrokeRendering(o,i),s=g.roundPositionForSharpStrokeRendering(s,i),N&&B){var l="M"+(o-1-i)+","+(s-1-i)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";n.attr("d",l)}else if(N){var u="M"+(o-1-i)+","+(s-9-i)+"v18 h2 v-18 Z";n.attr("d",u)}else{var c="M"+(o-9-i)+","+(s-1-i)+"h18 v2 h-18 Z";n.attr("d",c)}}(N||B)&&r()}function ue(e){e.selectAll(".visual-cue").remove()}function ce(e,t,r){var n=t.xref,i=t.yref,a=o.getFromId(r,n),s=o.getFromId(r,i),l="";"paper"===n||a.autorange||(l+=n),"paper"===i||s.autorange||(l+=i),f.setClipUrl(e,l?"clip"+r._fullLayout._uid+l:null,r)}h.init(Q),J.node().onmousemove=re}(e,F,u,t,r,R):!0===u.editable&&F.style("pointer-events",I||c.opacity(C)*T<=.5?"stroke":"all");F.node().addEventListener("click",(function(){return function(e,t){if(k(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex)return void E(e);e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=E,_(e)}}}(e,F)}))}u._input&&!1!==u.visible&&("below"!==u.layer?x(e._fullLayout._shapeUpperLayer):"paper"===u.xref||"paper"===u.yref?x(e._fullLayout._shapeLowerLayer):v._hadPlotinfo?x((v.mainplotinfo||v).shapelayer):x(e._fullLayout._shapeLowerLayer))}function M(e,t,r){var n=(r.xref+r.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");f.setClipUrl(e,n?"clip"+t._fullLayout._uid+n:null,t)}function A(e,t,r,n){if(n.selectAll(".shape-label").remove(),r.label.text||r.label.texttemplate){var i;if(r.label.texttemplate){var l={};if("path"!==r.type){var u=o.getFromId(e,r.xref),c=o.getFromId(e,r.yref);for(var d in x){var h=x[d](r,u,c);void 0!==h&&(l[d]=h)}}i=a.texttemplateStringForShapes(r.label.texttemplate,{},e._fullLayout._d3locale,l)}else i=r.label.text;var p,m,_,w,k={"data-index":t},T=r.label.font,M=n.append("g").attr(k).classed("shape-label",!0).append("text").attr({"data-notex":1}).classed("shape-label-text",!0).text(i);if(r.path){var A=y(e,r),S=s(A,e);p=1/0,_=1/0,m=-1/0,w=-1/0;for(var E=0;E=e?t-n:n-t,-180/Math.PI*Math.atan2(i,a)}(p,_,m,w):0),M.call((function(t){return t.call(f.font,T).attr({}),v.convertToTspans(t,e),t}));var U=function(e,t,r,n,i,a,o){var s,l,u,c,f=i.label.textposition,d=i.label.textangle,h=i.label.padding,p=i.type,v=Math.PI/180*a,m=Math.sin(v),g=Math.cos(v),y=i.label.xanchor,x=i.label.yanchor;if("line"===p){"start"===f?(s=e,l=t):"end"===f?(s=r,l=n):(s=(e+r)/2,l=(t+n)/2),"auto"===y&&(y="start"===f?"auto"===d?r>e?"left":re?"right":re?"right":re?"left":r=s||(a[n]?e=t(e):o[n]&&(e=r(e)),n++),e}))}))}function E(e){k(e)&&e._fullLayout._activeShapeIndex>=0&&(u(e),delete e._fullLayout._activeShapeIndex,_(e))}e.exports={draw:_,drawOne:T,eraseActiveShape:function(e){if(k(e)){u(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t0&&lh&&(e="X"),e}));return a>h&&(p=p.replace(/[\s,]*X.*/,""),i.log("Ignoring extra params in segment "+e)),c+p}))}(r,s,u);if("pixel"===r.xsizemode){var b=s(r.xanchor);c=b+r.x0,f=b+r.x1}else c=s(r.x0),f=s(r.x1);if("pixel"===r.ysizemode){var _=u(r.yanchor);d=_-r.y0,h=_-r.y1}else d=u(r.y0),h=u(r.y1);if("line"===p)return"M"+c+","+d+"L"+f+","+h;if("rect"===p)return"M"+c+","+d+"H"+f+"V"+h+"H"+c+"Z";var w=(c+f)/2,k=(d+h)/2,T=Math.abs(w-c),M=Math.abs(k-d),A="A"+T+","+M,S=w+T+","+k;return"M"+S+A+" 0 1,1 "+w+","+(k-M)+A+" 0 0,1 "+S+"Z"}},89853:function(e,t,r){"use strict";var n=r(34031);e.exports={moduleType:"component",name:"shapes",layoutAttributes:r(89827),supplyLayoutDefaults:r(84726),supplyDrawNewShapeDefaults:r(45547),includeBasePlot:r(76325)("shapes"),calcAutorange:r(5627),draw:n.draw,drawOne:n.drawOne}},37281:function(e){"use strict";function t(e,t){return t?t.d2l(e):e}function r(e,t){return t?t.l2d(e):e}function n(e,r){return t(e.x1,r)-t(e.x0,r)}function i(e,r,n){return t(e.y1,n)-t(e.y0,n)}e.exports={x0:function(e){return e.x0},x1:function(e){return e.x1},y0:function(e){return e.y0},y1:function(e){return e.y1},slope:function(e,t,r){return"line"!==e.type?void 0:i(e,0,r)/n(e,t)},dx:n,dy:i,width:function(e,t){return Math.abs(n(e,t))},height:function(e,t,r){return Math.abs(i(e,0,r))},length:function(e,t,r){return"line"!==e.type?void 0:Math.sqrt(Math.pow(n(e,t),2)+Math.pow(i(e,0,r),2))},xcenter:function(e,n){return r((t(e.x1,n)+t(e.x0,n))/2,n)},ycenter:function(e,n,i){return r((t(e.y1,i)+t(e.y0,i))/2,i)}}},75067:function(e,t,r){"use strict";var n=r(41940),i=r(35025),a=r(1426).extendDeepAll,o=r(30962).overrideAll,s=r(85594),l=r(44467).templatedArray,u=r(98292),c=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}});e.exports=o(l("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:c,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:n({})},font:n({}),activebgcolor:{valType:"color",dflt:u.gripBgActiveColor},bgcolor:{valType:"color",dflt:u.railBgColor},bordercolor:{valType:"color",dflt:u.railBorderColor},borderwidth:{valType:"number",min:0,dflt:u.railBorderWidth},ticklen:{valType:"number",min:0,dflt:u.tickLength},tickcolor:{valType:"color",dflt:u.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:u.minorTickLength}}),"arraydraw","from-root")},98292:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(85501),a=r(75067),o=r(98292).name,s=a.steps;function l(e,t,r){function o(r,i){return n.coerce(e,t,a,r,i)}for(var s=i(e,t,{name:"steps",handleItemDefaults:u}),l=0,c=0;c0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",l(o-.5*f.gripWidth,t._dims.currentValueTotalHeight))}}function E(e,t){var r=e._dims;return r.inputAreaStart+f.stepInset+(r.inputAreaLength-2*f.stepInset)*Math.min(1,Math.max(0,t))}function C(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-f.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*f.stepInset-2*r.inputAreaStart)))}function L(e,t,r){var n=r._dims,i=s.ensureSingle(e,"rect",f.railTouchRectClass,(function(n){n.call(M,t,e,r).style("pointer-events","all")}));i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,f.tickOffset+r.ticklen+n.labelHeight)}).call(a.fill,r.bgcolor).attr("opacity",0),o.setTranslate(i,0,n.currentValueTotalHeight)}function P(e,t){var r=t._dims,n=r.inputAreaLength-2*f.railInset,i=s.ensureSingle(e,"rect",f.railRectClass);i.attr({width:n,height:f.railWidth,rx:f.railRadius,ry:f.railRadius,"shape-rendering":"crispEdges"}).call(a.stroke,t.bordercolor).call(a.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),o.setTranslate(i,f.railInset,.5*(r.inputAreaWidth-f.railWidth)+r.currentValueTotalHeight)}e.exports=function(e){var t=e._context.staticPlot,r=e._fullLayout,a=function(e,t){for(var r=e[f.name],n=[],i=0;i0?[0]:[]);function l(t){t._commandObserver&&(t._commandObserver.remove(),delete t._commandObserver),i.autoMargin(e,m(t))}if(s.enter().append("g").classed(f.containerClassName,!0).style("cursor",t?null:"ew-resize"),s.exit().each((function(){n.select(this).selectAll("g."+f.groupClassName).each(l)})).remove(),0!==a.length){var u=s.selectAll("g."+f.groupClassName).data(a,g);u.enter().append("g").classed(f.groupClassName,!0),u.exit().each(l).remove();for(var c=0;c0||_<0){var A={left:[-w,0],right:[w,0],top:[0,-w],bottom:[0,w]}[b.side];r.attr("transform",l(A[0],A[1]))}}}return z.call(F),I&&(E?z.on(".opacity",null):(M=0,A=!0,z.text(y).on("mouseover.opacity",(function(){n.select(this).transition().duration(d.SHOW_PLACEHOLDER).style("opacity",1)})).on("mouseout.opacity",(function(){n.select(this).transition().duration(d.HIDE_PLACEHOLDER).style("opacity",0)}))),z.call(f.makeEditable,{gd:e}).on("edit",(function(t){void 0!==x?o.call("_guiRestyle",e,g,t,x):o.call("_guiRelayout",e,g,t)})).on("cancel",(function(){this.text(this.attr("data-unformatted")).call(F)})).on("input",(function(e){this.text(e||" ").call(f.positionText,_.x,_.y)}))),z.classed("js-placeholder",A),k}}},7163:function(e,t,r){"use strict";var n=r(41940),i=r(22399),a=r(1426).extendFlat,o=r(30962).overrideAll,s=r(35025),l=r(44467).templatedArray,u=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}});e.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:u,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:n({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:i.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")},75909:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(85501),a=r(7163),o=r(75909).name,s=a.buttons;function l(e,t,r){function o(r,i){return n.coerce(e,t,a,r,i)}o("visible",i(e,t,{name:"buttons",handleItemDefaults:u}).length>0)&&(o("active"),o("direction"),o("type"),o("showactive"),o("x"),o("y"),n.noneOrAll(e,t,["x","y"]),o("xanchor"),o("yanchor"),o("pad.t"),o("pad.r"),o("pad.b"),o("pad.l"),n.coerceFont(o,"font",r.font),o("bgcolor",r.paper_bgcolor),o("bordercolor"),o("borderwidth"))}function u(e,t){function r(r,i){return n.coerce(e,t,s,r,i)}r("visible","skip"===e.method||Array.isArray(e.args))&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}e.exports=function(e,t){i(e,t,{name:o,handleItemDefaults:l})}},13689:function(e,t,r){"use strict";var n=r(39898),i=r(74875),a=r(7901),o=r(91424),s=r(71828),l=r(63893),u=r(44467).arrayEditor,c=r(18783).LINE_SPACING,f=r(75909),d=r(25849);function h(e){return e._index}function p(e,t){return+e.attr(f.menuIndexAttrName)===t._index}function v(e,t,r,n,i,a,o,s){t.active=o,u(e.layout,f.name,t).applyUpdate("active",o),"buttons"===t.type?g(e,n,null,null,t):"dropdown"===t.type&&(i.attr(f.menuIndexAttrName,"-1"),m(e,n,i,a,t),s||g(e,n,i,a,t))}function m(e,t,r,n,i){var a=s.ensureSingle(t,"g",f.headerClassName,(function(e){e.style("pointer-events","all")})),l=i._dims,u=i.active,c=i.buttons[u]||f.blankHeaderOpts,d={y:i.pad.t,yPad:0,x:i.pad.l,xPad:0,index:0},h={width:l.headerWidth,height:l.headerHeight};a.call(y,i,c,e).call(A,i,d,h),s.ensureSingle(t,"text",f.headerArrowClassName,(function(e){e.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(){r.call(S,String(p(r,i)?-1:i._index)),g(e,t,r,n,i)})),a.on("mouseover",(function(){a.call(w)})),a.on("mouseout",(function(){a.call(k,i)})),o.setTranslate(t,l.lx,l.ly)}function g(e,t,r,a,o){r||(r=t).attr("pointer-events","all");var l=function(e){return-1===+e.attr(f.menuIndexAttrName)}(r)&&"buttons"!==o.type?[]:o.buttons,u="dropdown"===o.type?f.dropdownButtonClassName:f.buttonClassName,c=r.selectAll("g."+u).data(s.filterVisible(l)),d=c.enter().append("g").classed(u,!0),h=c.exit();"dropdown"===o.type?(d.attr("opacity","0").transition().attr("opacity","1"),h.transition().attr("opacity","0").remove()):h.remove();var p=0,m=0,g=o._dims,x=-1!==["up","down"].indexOf(o.direction);"dropdown"===o.type&&(x?m=g.headerHeight+f.gapButtonHeader:p=g.headerWidth+f.gapButtonHeader),"dropdown"===o.type&&"up"===o.direction&&(m=-f.gapButtonHeader+f.gapButton-g.openHeight),"dropdown"===o.type&&"left"===o.direction&&(p=-f.gapButtonHeader+f.gapButton-g.openWidth);var b={x:g.lx+p+o.pad.l,y:g.ly+m+o.pad.t,yPad:f.gapButton,xPad:f.gapButton,index:0},T={l:b.x+o.borderwidth,t:b.y+o.borderwidth};c.each((function(s,l){var u=n.select(this);u.call(y,o,s,e).call(A,o,b),u.on("click",(function(){n.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(v(e,o,0,t,r,a,-1),i.executeAPICommand(e,s.method,s.args2)):(v(e,o,0,t,r,a,l),i.executeAPICommand(e,s.method,s.args))),e.emit("plotly_buttonclicked",{menu:o,button:s,active:o.active}))})),u.on("mouseover",(function(){u.call(w)})),u.on("mouseout",(function(){u.call(k,o),c.call(_,o)}))})),c.call(_,o),x?(T.w=Math.max(g.openWidth,g.headerWidth),T.h=b.y-T.t):(T.w=b.x-T.l,T.h=Math.max(g.openHeight,g.headerHeight)),T.direction=o.direction,a&&(c.size()?function(e,t,r,n,i,a){var o,s,l,u=i.direction,c="up"===u||"down"===u,d=i._dims,h=i.active;if(c)for(s=0,l=0;l0?[0]:[]);if(o.enter().append("g").classed(f.containerClassName,!0).style("cursor","pointer"),o.exit().each((function(){n.select(this).selectAll("g."+f.headerGroupClassName).each(a)})).remove(),0!==r.length){var l=o.selectAll("g."+f.headerGroupClassName).data(r,h);l.enter().append("g").classed(f.headerGroupClassName,!0);for(var u=s.ensureSingle(o,"g",f.dropdownButtonGroupClassName,(function(e){e.style("pointer-events","all")})),c=0;cw,M=s.barLength+2*s.barPad,A=s.barWidth+2*s.barPad,S=p,E=m+g;E+A>u&&(E=u-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=w-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var L=g>k,P=s.barWidth+2*s.barPad,O=s.barLength+2*s.barPad,I=p+v,D=m;I+P>l&&(I=l-P);var R=this.container.selectAll("rect.scrollbar-vertical").data(L?[0]:[]);R.exit().on(".drag",null).remove(),R.enter().append("rect").classed("scrollbar-vertical",!0).call(i.fill,s.barColor),L?(this.vbar=R.attr({rx:s.barRadius,ry:s.barRadius,x:I,y:D,width:P,height:O}),this._vbarYMin=D+O/2,this._vbarTranslateMax=k-O):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var z=this.id,F=c-.5,N=L?f+P+.5:f+.5,B=d-.5,j=T?h+A+.5:h+.5,U=o._topdefs.selectAll("#"+z).data(T||L?[0]:[]);if(U.exit().remove(),U.enter().append("clipPath").attr("id",z).append("rect"),T||L?(this._clipRect=U.select("rect").attr({x:Math.floor(F),y:Math.floor(B),width:Math.ceil(N)-Math.floor(F),height:Math.ceil(j)-Math.floor(B)}),this.container.call(a.setClipUrl,z,this.gd),this.bg.attr({x:p,y:m,width:v,height:g})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(a.setClipUrl,null),delete this._clipRect),T||L){var V=n.behavior.drag().on("dragstart",(function(){n.event.sourceEvent.preventDefault()})).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(V);var H=n.behavior.drag().on("dragstart",(function(){n.event.sourceEvent.preventDefault(),n.event.sourceEvent.stopPropagation()})).on("drag",this._onBarDrag.bind(this));T&&this.hbar.on(".drag",null).call(H),L&&this.vbar.on(".drag",null).call(H)}this.setTranslate(t,r)},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 e=this.translateX,t=this.translateY;this.hbar&&(e-=n.event.dx),this.vbar&&(t-=n.event.dy),this.setTranslate(e,t)},s.prototype._onBoxWheel=function(){var e=this.translateX,t=this.translateY;this.hbar&&(e+=n.event.deltaY),this.vbar&&(t+=n.event.deltaY),this.setTranslate(e,t)},s.prototype._onBarDrag=function(){var e=this.translateX,t=this.translateY;if(this.hbar){var r=e+this._hbarXMin,i=r+this._hbarTranslateMax;e=(o.constrain(n.event.x,r,i)-r)/(i-r)*(this.position.w-this._box.w)}if(this.vbar){var a=t+this._vbarYMin,s=a+this._vbarTranslateMax;t=(o.constrain(n.event.y,a,s)-a)/(s-a)*(this.position.h-this._box.h)}this.setTranslate(e,t)},s.prototype.setTranslate=function(e,t){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(e=o.constrain(e||0,0,r),t=o.constrain(t||0,0,n),this.translateX=e,this.translateY=t,this.container.call(a.setTranslate,this._box.l-this.position.l-e,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+e-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=e/r;this.hbar.call(a.setTranslate,e+i*this._hbarTranslateMax,t)}if(this.vbar){var s=t/n;this.vbar.call(a.setTranslate,e,t+s*this._vbarTranslateMax)}}},18783:function(e){"use strict";e.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(e){"use strict";e.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}},22372:function(e){"use strict";e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25b2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25bc"}}},31562:function(e){"use strict";e.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(e){"use strict";e.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}},29659:function(e){"use strict";e.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}},87381:function(e){"use strict";e.exports={circle:"\u25cf","circle-open":"\u25cb",square:"\u25a0","square-open":"\u25a1",diamond:"\u25c6","diamond-open":"\u25c7",cross:"+",x:"\u274c"}},37822:function(e){"use strict";e.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},50606:function(e){"use strict";e.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(e,t){"use strict";t.xmlns="http://www.w3.org/2000/xmlns/",t.svg="http://www.w3.org/2000/svg",t.xlink="http://www.w3.org/1999/xlink",t.svgAttrs={xmlns:t.svg,"xmlns:xlink":t.xlink}},8729:function(e,t,r){"use strict";t.version=r(11506).version,r(7417),r(98847);for(var n=r(73972),i=t.register=n.register,a=r(10641),o=Object.keys(a),s=0;s",""," ",""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}},99863:function(e,t){"use strict";t.isLeftAnchor=function(e){return"left"===e.xanchor||"auto"===e.xanchor&&e.x<=1/3},t.isCenterAnchor=function(e){return"center"===e.xanchor||"auto"===e.xanchor&&e.x>1/3&&e.x<2/3},t.isRightAnchor=function(e){return"right"===e.xanchor||"auto"===e.xanchor&&e.x>=2/3},t.isTopAnchor=function(e){return"top"===e.yanchor||"auto"===e.yanchor&&e.y>=2/3},t.isMiddleAnchor=function(e){return"middle"===e.yanchor||"auto"===e.yanchor&&e.y>1/3&&e.y<2/3},t.isBottomAnchor=function(e){return"bottom"===e.yanchor||"auto"===e.yanchor&&e.y<=1/3}},26348:function(e,t,r){"use strict";var n=r(64872),i=n.mod,a=n.modHalf,o=Math.PI,s=2*o;function l(e){return Math.abs(e[1]-e[0])>s-1e-14}function u(e,t){return a(t-e,s)}function c(e,t){if(l(t))return!0;var r,n;t[0](n=i(n,s))&&(n+=s);var a=i(e,s),o=a+s;return a>=r&&a<=n||o>=r&&o<=n}function f(e,t,r,n,i,a,u){i=i||0,a=a||0;var c,f,d,h,p,v=l([r,n]);function m(e,t){return[e*Math.cos(t)+i,a-e*Math.sin(t)]}v?(c=0,f=o,d=s):r=i&&e<=a);var i,a},pathArc:function(e,t,r,n,i){return f(null,e,t,r,n,i,0)},pathSector:function(e,t,r,n,i){return f(null,e,t,r,n,i,1)},pathAnnulus:function(e,t,r,n,i,a){return f(e,t,r,n,i,a,1)}}},73627:function(e,t){"use strict";var r=Array.isArray,n=ArrayBuffer,i=DataView;function a(e){return n.isView(e)&&!(e instanceof i)}function o(e){return r(e)||a(e)}function s(e,t,r){if(o(e)){if(o(e[0])){for(var n=r,i=0;ii.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,i){e%1||!n(e)||void 0!==i.min&&ei.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if("string"!==typeof e){var i="number"===typeof e;!0!==n.strict&&i?t.set(String(e)):t.set(r)}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){i(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){Array.isArray(e)&&e.length&&e.every((function(e){return i(e).isValid()}))?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(o.get(e,r))}},angle:{coerceFunction:function(e,t,r){"auto"===e?t.set("auto"):n(e)?t.set(f(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||c(r);"string"===typeof e&&i.test(e)?t.set(e):t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r||"string"===typeof e&&!!c(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if(-1===(n.extras||[]).indexOf(e))if("string"===typeof e){for(var i=e.split("+"),a=0;a=n&&e<=i?e:c}if("string"!==typeof e&&"number"!==typeof e)return c;e=String(e);var u=_(r),g=e.charAt(0);!u||"G"!==g&&"g"!==g||(e=e.substr(1),r="");var w=u&&"chinese"===r.substr(0,7),k=e.match(w?x:y);if(!k)return c;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(u){if(2===T.length)return c;var L;T=Number(T);try{var P=m.getComponentMethod("calendars","getCal")(r);if(w){var O="i"===M.charAt(M.length-1);M=parseInt(M,10),L=P.newDate(T,P.toMonthIndex(T,M,O),A)}else L=P.newDate(T,Number(M),A)}catch(D){return c}return L?(L.toJD()-v)*f+S*d+E*h+C*p:c}T=2===T.length?(Number(T)+2e3-b)%100+b: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?c:I.getTime()+C*p},n=t.MIN_MS=t.dateTime2ms("-9999"),i=t.MAX_MS=t.dateTime2ms("9999-12-31 23:59:59.9999"),t.isDateTime=function(e,r){return t.dateTime2ms(e,r)!==c};var k=90*f,T=3*d,M=5*h;function A(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+w(t,2)+":"+w(r,2),(n||i)&&(e+=":"+w(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+w(i,a)}return e}t.ms2DateTime=function(e,t,r){if("number"!==typeof e||!(e>=n&&e<=i))return c;t||(t=0);var a,o,s,u,y,x,b=Math.floor(10*l(e+.05,1)),w=Math.round(e-b/10);if(_(r)){var S=Math.floor(w/f)+v,E=Math.floor(l(e,f));try{a=m.getComponentMethod("calendars","getCal")(r).fromJD(S).formatDate("yyyy-mm-dd")}catch(C){a=g("G%Y-%m-%d")(new Date(w))}if("-"===a.charAt(0))for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=n+f&&e<=i-f))return c;var t=Math.floor(10*l(e+.05,1)),r=new Date(Math.round(e-t/10));return A(a("%Y-%m-%d")(r),r.getHours(),r.getMinutes(),r.getSeconds(),10*r.getUTCMilliseconds()+t)},t.cleanDate=function(e,r,n){if(e===c)return r;if(t.isJSDate(e)||"number"===typeof e&&isFinite(e)){if(_(n))return s.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(!(e=t.ms2DateTimeLocal(+e))&&void 0!==r)return r}else if(!t.isDateTime(e,n))return s.error("unrecognized date",e),r;return e};var S=/%\d?f/g,E=/%h/g,C={1:"1",2:"1",3:"2",4:"2"};function L(e,t,r,n){e=e.replace(S,(function(e){var r=Math.min(+e.charAt(1)||6,6);return(t/1e3%1+2).toFixed(r).substr(2).replace(/0+$/,"")||"0"}));var i=new Date(Math.floor(t+.05));if(e=e.replace(E,(function(){return C[r("%q")(i)]})),_(n))try{e=m.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var P=[59,59.9,59.99,59.999,59.9999];t.formatDate=function(e,t,r,n,i,a){if(i=_(i)&&i,!t)if("y"===r)t=a.year;else if("m"===r)t=a.month;else{if("d"!==r)return function(e,t){var r=l(e+.05,f),n=w(Math.floor(r/d),2)+":"+w(l(Math.floor(r/h),60),2);if("M"!==t){o(t)||(t=0);var i=(100+Math.min(l(e/p,60),P[t])).toFixed(t).substr(1);t>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+i}return n}(e,r)+"\n"+L(a.dayMonthYear,e,n,i);t=a.dayMonth+"\n"+a.year}return L(t,e,n,i)};var O=3*f;t.incrementMonth=function(e,t,r){r=_(r)&&r;var n=l(e,f);if(e=Math.round(e-n),r)try{var i=Math.round(e/f)+v,a=m.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-v)*f+n}catch(c){s.error("invalid ms "+e+" in calendar "+r)}var u=new Date(e+O);return u.setUTCMonth(u.getUTCMonth()+t)+n-O},t.findExactDates=function(e,t){for(var r,n,i=0,a=0,s=0,l=0,u=_(t)&&m.getComponentMethod("calendars","getCal")(t),c=0;c0&&e[t+1][0]<0)return t;return null}switch(t="RUS"===s||"FJI"===s?function(e){var t;if(null===u(e))t=e;else for(t=new Array(e.length),i=0;it?r[n++]=[e[i][0]+360,e[i][1]]:i===t?(r[n++]=e[i],r[n++]=[e[i][0],-90]):r[n++]=e[i];var a=d.tester(r);a.pts.pop(),l.push(a)}:function(e){l.push(d.tester(e))},a.type){case"MultiPolygon":for(r=0;ri&&(i=u,t=l)}else t=r;return o.default(t).geometry.coordinates}(c),n.fIn=e,n.fOut=c,s.push(c)}else u.log(["Location",n.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete i[r]}switch(r.type){case"FeatureCollection":var d=r.features;for(n=0;n100?(clearInterval(a),n("Unexpected error while fetching from "+e)):void i++}),50)}))}for(var o=0;o0&&(r.push(i),i=[])}return i.length>0&&r.push(i),r},t.makeLine=function(e){return 1===e.length?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}},t.makePolygon=function(e){if(1===e.length)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r1||v<0||v>1?null:{x:e+l*v,y:t+f*v}}function l(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}var l=n*t-i*e;return l*l/r}t.segmentsIntersect=s,t.segmentDistance=function(e,t,r,n,i,a,o,u){if(s(e,t,r,n,i,a,o,u))return 0;var c=r-e,f=n-t,d=o-i,h=u-a,p=c*c+f*f,v=d*d+h*h,m=Math.min(l(c,f,p,i-e,a-t),l(c,f,p,o-e,u-t),l(d,h,v,e-i,t-a),l(d,h,v,r-i,n-a));return Math.sqrt(m)},t.getTextLocation=function(e,t,r,s){if(e===i&&s===a||(n={},i=e,a=s),n[r])return n[r];var l=e.getPointAtLength(o(r-s/2,t)),u=e.getPointAtLength(o(r+s/2,t)),c=Math.atan((u.y-l.y)/(u.x-l.x)),f=e.getPointAtLength(o(r,t)),d={x:(4*f.x+l.x+u.x)/6,y:(4*f.y+l.y+u.y)/6,theta:c};return n[r]=d,d},t.clearLocationCache=function(){i=null},t.getVisibleSegment=function(e,t,r){var n,i,a=t.left,o=t.right,s=t.top,l=t.bottom,u=0,c=e.getTotalLength(),f=c;function d(t){var r=e.getPointAtLength(t);0===t?n=r:t===c&&(i=r);var u=r.xo?r.x-o:0,f=r.yl?r.y-l:0;return Math.sqrt(u*u+f*f)}for(var h=d(u);h;){if((u+=h+r)>f)return;h=d(u)}for(h=d(f);h;){if(u>(f-=h+r))return;h=d(f)}return{min:u,max:f,len:f-u,total:c,isClosed:0===u&&f===c&&Math.abs(n.x-i.x)<.1&&Math.abs(n.y-i.y)<.1}},t.findPointOnPath=function(e,t,r,n){for(var i,a,o,s=(n=n||{}).pathLength||e.getTotalLength(),l=n.tolerance||.001,u=n.iterationLimit||30,c=e.getPointAtLength(0)[r]>e.getPointAtLength(s)[r]?-1:1,f=0,d=0,h=s;f0?h=i:d=i,f++}return a}},81697:function(e,t,r){"use strict";var n=r(92770),i=r(84267),a=r(25075),o=r(21081),s=r(22399).defaultLine,l=r(73627).isArrayOrTypedArray,u=a(s),c=1;function f(e,t){var r=e;return r[3]*=t,r}function d(e){if(n(e))return u;var t=a(e);return t.length?t:u}function h(e){return n(e)?e:c}e.exports={formatColor:function(e,t,r){var n,i,s,p,v,m=e.color,g=l(m),y=l(t),x=o.extractOpts(e),b=[];if(n=void 0!==x.colorscale?o.makeColorScaleFuncFromTrace(e):d,i=g?function(e,t){return void 0===e[t]?u:a(n(e[t]))}:d,s=y?function(e,t){return void 0===e[t]?c:h(e[t])}:h,g||y)for(var _=0;_1?(r*e+r*t)/r:e+t,i=String(n).length;if(i>16){var a=String(t).length;if(i>=String(e).length+a){var o=parseFloat(n).toPrecision(12);-1===o.indexOf("e+")&&(n=+o)}}return n}},71828:function(e,t,r){"use strict";var n=r(39898),i=r(84096).g0,a=r(60721).WU,o=r(92770),s=r(50606),l=s.FP_SAFE,u=-l,c=s.BADNUM,f=e.exports={};f.adjustFormat=function(e){return!e||/^\d[.]\df/.test(e)||/[.]\d%/.test(e)?e:"0.f"===e?"~f":/^\d%/.test(e)?"~%":/^\ds/.test(e)?"~s":!/^[~,.0$]/.test(e)&&/[&fps]/.test(e)?"~"+e:e};var d={};f.warnBadFormat=function(e){var t=String(e);d[t]||(d[t]=1,f.warn('encountered bad format: "'+t+'"'))},f.noFormat=function(e){return String(e)},f.numberFormat=function(e){var t;try{t=a(f.adjustFormat(e))}catch(r){return f.warnBadFormat(e),f.noFormat}return t},f.nestedProperty=r(65487),f.keyedContainer=r(66636),f.relativeAttr=r(6962),f.isPlainObject=r(41965),f.toLogRange=r(58163),f.relinkPrivateKeys=r(51332);var h=r(73627);f.isTypedArray=h.isTypedArray,f.isArrayOrTypedArray=h.isArrayOrTypedArray,f.isArray1D=h.isArray1D,f.ensureArray=h.ensureArray,f.concat=h.concat,f.maxRowLength=h.maxRowLength,f.minRowLength=h.minRowLength;var p=r(64872);f.mod=p.mod,f.modHalf=p.modHalf;var v=r(96554);f.valObjectMeta=v.valObjectMeta,f.coerce=v.coerce,f.coerce2=v.coerce2,f.coerceFont=v.coerceFont,f.coercePattern=v.coercePattern,f.coerceHoverinfo=v.coerceHoverinfo,f.coerceSelectionMarkerOpacity=v.coerceSelectionMarkerOpacity,f.validate=v.validate;var m=r(41631);f.dateTime2ms=m.dateTime2ms,f.isDateTime=m.isDateTime,f.ms2DateTime=m.ms2DateTime,f.ms2DateTimeLocal=m.ms2DateTimeLocal,f.cleanDate=m.cleanDate,f.isJSDate=m.isJSDate,f.formatDate=m.formatDate,f.incrementMonth=m.incrementMonth,f.dateTick0=m.dateTick0,f.dfltRange=m.dfltRange,f.findExactDates=m.findExactDates,f.MIN_MS=m.MIN_MS,f.MAX_MS=m.MAX_MS;var g=r(65888);f.findBin=g.findBin,f.sorterAsc=g.sorterAsc,f.sorterDes=g.sorterDes,f.distinctVals=g.distinctVals,f.roundUp=g.roundUp,f.sort=g.sort,f.findIndexOfMin=g.findIndexOfMin,f.sortObjectKeys=r(78607);var y=r(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 x=r(35657);f.init2dArray=x.init2dArray,f.transposeRagged=x.transposeRagged,f.dot=x.dot,f.translationMatrix=x.translationMatrix,f.rotationMatrix=x.rotationMatrix,f.rotationXYMatrix=x.rotationXYMatrix,f.apply3DTransform=x.apply3DTransform,f.apply2DTransform=x.apply2DTransform,f.apply2DTransform2=x.apply2DTransform2,f.convertCssMatrix=x.convertCssMatrix,f.inverseTransformMatrix=x.inverseTransformMatrix;var b=r(26348);f.deg2rad=b.deg2rad,f.rad2deg=b.rad2deg,f.angleDelta=b.angleDelta,f.angleDist=b.angleDist,f.isFullCircle=b.isFullCircle,f.isAngleInsideSector=b.isAngleInsideSector,f.isPtInsideSector=b.isPtInsideSector,f.pathArc=b.pathArc,f.pathSector=b.pathSector,f.pathAnnulus=b.pathAnnulus;var _=r(99863);f.isLeftAnchor=_.isLeftAnchor,f.isCenterAnchor=_.isCenterAnchor,f.isRightAnchor=_.isRightAnchor,f.isTopAnchor=_.isTopAnchor,f.isMiddleAnchor=_.isMiddleAnchor,f.isBottomAnchor=_.isBottomAnchor;var w=r(87642);f.segmentsIntersect=w.segmentsIntersect,f.segmentDistance=w.segmentDistance,f.getTextLocation=w.getTextLocation,f.clearLocationCache=w.clearLocationCache,f.getVisibleSegment=w.getVisibleSegment,f.findPointOnPath=w.findPointOnPath;var k=r(1426);f.extendFlat=k.extendFlat,f.extendDeep=k.extendDeep,f.extendDeepAll=k.extendDeepAll,f.extendDeepNoArrays=k.extendDeepNoArrays;var T=r(47769);f.log=T.log,f.warn=T.warn,f.error=T.error;var M=r(30587);f.counterRegex=M.counter;var A=r(79990);f.throttle=A.throttle,f.throttleDone=A.done,f.clearThrottle=A.clear;var S=r(24401);function E(e){var t={};for(var r in e)for(var n=e[r],i=0;il||e=t)&&o(e)&&e>=0&&e%1===0},f.noop=r(64213),f.identity=r(23389),f.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))},f.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r},f.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(f.warn("randstr failed uniqueness"),l):e(t,r,n,(i||0)+1):l},f.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={optionList:[],_newoption:function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)}};return r["_"+t]=e,r},f.smooth=function(e,t){if((t=Math.round(t)||0)<2)return e;var r,n,i,a,o=e.length,s=2*o,l=2*t-1,u=new Array(l),c=new Array(o);for(r=0;r=s&&(i-=s*Math.floor(i/s)),i<0?i=-1-i:i>=o&&(i=s-1-i),a+=e[i]*u[n];c[r]=a}return c},f.syncOrAsync=function(e,t,r){var n;function i(){return f.syncOrAsync(e,t,r)}for(;e.length;)if((n=(0,e.splice(0,1)[0])(t))&&n.then)return n.then(i);return r&&r(t)},f.stripTrailingSlash=function(e){return"/"===e.substr(-1)?e.substr(0,e.length-1):e},f.noneOrAll=function(e,t,r){if(e){var n,i,a=!1,o=!0;for(n=0;n0?t:0}))},f.fillArray=function(e,t,r,n){if(n=n||f.identity,f.isArrayOrTypedArray(e))for(var i=0;i1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l},f.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var D=/^\w*$/;f.templateString=function(e,t){var r={};return e.replace(f.TEMPLATE_STRING_REGEX,(function(e,n){var i;return D.test(n)?i=t[n]:(r[n]=r[n]||f.nestedProperty(t,n).get,i=r[n]()),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 F=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/,N={max:10,count:0,name:"texttemplate",parseMultDiv:!0};f.texttemplateStringForShapes=function(){return j.apply(N,arguments)};var B=/^[:|\|]/;function j(e,t,r){var n=this,a=arguments;t||(t={});var o={};return e.replace(f.TEMPLATE_STRING_REGEX,(function(e,s,l){var u="_xother"===s||"_yother"===s,c="_xother_"===s||"_yother_"===s,d="xother_"===s||"yother_"===s,h="xother"===s||"yother"===s||u||d||c,p=s;(u||c)&&(p=p.substring(1)),(d||c)&&(p=p.substring(0,p.length-1));var v,m,g,y=null,x=null;if(n.parseMultDiv){var b=function(e){var t=e.match(F);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}(p);p=b.key,y=b.op,x=b.number}if(h){if(void 0===(v=t[p]))return""}else for(g=3;g=48&&o<=57,u=s>=48&&s<=57;if(l&&(n=10*n+o-48),u&&(i=10*i+s-48),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var U=2e9;f.seedPseudoRandom=function(){U=2e9},f.pseudoRandom=function(){var e=U;return U=(69069*U+1)%4294967296,Math.abs(U-e)<429496729?f.pseudoRandom():U/4294967296},f.fillText=function(e,t,r){var n=Array.isArray(r)?function(e){r.push(e)}:function(e){r.text=e},i=f.extractOption(e,t,"htx","hovertext");if(f.isValidTextValue(i))return n(i);var a=f.extractOption(e,t,"tx","text");return f.isValidTextValue(a)?n(a):void 0},f.isValidTextValue=function(e){return e||0===e},f.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(u=1):u=0,f.strTranslate(i-u*(r+o),a-u*(n+s))+f.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")},f.setTransormAndDisplay=function(e,t){e.attr("transform",f.getTextTransform(t)),e.style("display",t.scale?null:"none")},f.ensureUniformFontSize=function(e,t){var r=f.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r},f.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)},f.bigFont=function(e){return Math.round(1.2*e)};var V=f.getFirefoxVersion(),H=null!==V&&V<86;f.getPositionFromD3Event=function(){return H?[n.event.layerX,n.event.layerY]:[n.event.offsetX,n.event.offsetY]}},41965:function(e){"use strict";e.exports=function(e){return window&&window.process&&window.process.versions?"[object Object]"===Object.prototype.toString.call(e):"[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e).hasOwnProperty("hasOwnProperty")}},66636:function(e,t,r){"use strict";var n=r(65487),i=/^\w*$/;e.exports=function(e,t,r,a){var o,s,l;r=r||"name",a=a||"value";var u={};t&&t.length?(l=n(e,t),s=l.get()):s=e,t=t||"";var c={};if(s)for(o=0;o2)return u[t]=2|u[t],d.set(e,null);if(f){for(o=t;o1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}},a.warn=function(){var e;if(n.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}},a.error=function(){var e;if(n.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}},77310:function(e,t,r){"use strict";var n=r(39898);e.exports=function(e,t,r){var i=e.selectAll("g."+r.replace(/\s/g,".")).data(t,(function(e){return e[0].trace.uid}));i.exit().remove(),i.enter().append("g").attr("class",r),i.order();var a=e.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each((function(e){e[0][a]=n.select(this)})),i}},35657:function(e,t,r){"use strict";var n=r(79576);t.init2dArray=function(e,t){for(var r=new Array(e),n=0;nt/2?e-Math.round(e/t)*t:e}}},65487:function(e,t,r){"use strict";var n=r(92770),i=r(73627).isArrayOrTypedArray;function a(e,t){return function(){var r,n,o,s,l,u=e;for(s=0;s/g),l=0;la||u===i||us)&&(!t||!l(e))}:function(e,t){var l=e[0],u=e[1];if(l===i||la||u===i||us)return!1;var c,f,d,h,p,v=r.length,m=r[0][0],g=r[0][1],y=0;for(c=1;cMath.max(f,m)||u>Math.max(d,g)))if(uc||Math.abs(n(o,d))>i)return!0;return!1},a.filter=function(e,t){var r=[e[0]],n=0,i=0;function o(o){e.push(o);var s=r.length,l=n;r.splice(i+1);for(var u=l+1;u1&&o(e.pop()),{addPt:o,raw:e,filtered:r}}},79749:function(e,t,r){"use strict";var n=r(58617),i=r(98580);e.exports=function(e,t,a){var o=e._fullLayout,s=!0;return o._glcanvas.each((function(n){if(n.regl)n.regl.preloadCachedCode(a);else if(!n.pick||o._has("parcoords")){try{n.regl=i({canvas:this,attributes:{antialias:!n.pick,preserveDrawingBuffer:!0},pixelRatio:e._context.plotGlPixelRatio||r.g.devicePixelRatio,extensions:t||[],cachedCode:a||{}})}catch(l){s=!1}n.regl||(s=!1),s&&this.addEventListener("webglcontextlost",(function(t){e&&e.emit&&e.emit("plotly_webglcontextlost",{event:t,layer:n.key})}),!1)}})),s||n({container:o._glcontainer.node()}),s}},45142:function(e,t,r){"use strict";var n=r(92770),i=r(35791);e.exports=function(e){var t;if("string"!==typeof(t=e&&e.hasOwnProperty("userAgent")?e.userAgent:function(){var e;return"undefined"!==typeof navigator&&(e=navigator.userAgent),e&&e.headers&&"string"===typeof e.headers["user-agent"]&&(e=e.headers["user-agent"]),e}()))return!0;var r=i({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var a=t.split(" "),o=1;o-1;s--){var l=a[s];if("Version/"===l.substr(0,8)){var u=l.substr(8).split(".")[0];if(n(u)&&(u=+u),u>=13)return!0}}return r}},75138:function(e){"use strict";e.exports=function(e,t){if(t instanceof RegExp){for(var r=t.toString(),n=0;ni.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--))},startSequence:function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},stopSequence:function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},undo:function(e){var t,r;if(!(void 0===e.undoQueue||isNaN(e.undoQueue.index)||e.undoQueue.index<=0)){for(e.undoQueue.index--,t=e.undoQueue.queue[e.undoQueue.index],e.undoQueue.inSequence=!0,r=0;r=e.undoQueue.queue.length)){for(t=e.undoQueue.queue[e.undoQueue.index],e.undoQueue.inSequence=!0,r=0;rt}function f(e,t){return e>=t}t.findBin=function(e,t,r){if(n(t.start))return r?Math.ceil((e-t.start)/t.size-s)-1:Math.floor((e-t.start)/t.size+s);var a,o,d=0,h=t.length,p=0,v=h>1?(t[h-1]-t[0])/(h-1):1;for(o=v>=0?r?l:u:r?f:c,e+=v*s*(r?-1:1)*(v>=0?1:-1);d90&&i.log("Long binary search..."),d-1},t.sorterAsc=function(e,t){return e-t},t.sorterDes=function(e,t){return t-e},t.distinctVals=function(e){var r,n=e.slice();for(n.sort(t.sorterAsc),r=n.length-1;r>-1&&n[r]===o;r--);for(var i,a=n[r]-n[0]||1,s=a/(r||1)/1e4,l=[],u=0;u<=r;u++){var c=n[u],f=c-i;void 0===i?(l.push(c),i=c):f>s&&(a=Math.min(a,f),l.push(c),i=c)}return{vals:l,minDiff:a}},t.roundUp=function(e,t,r){for(var n,i=0,a=t.length-1,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;i0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()},t.findIndexOfMin=function(e,t){t=t||a;for(var r,n=1/0,i=0;ia.length)&&(o=a.length),n(r)||(r=!1),i(a[0])){for(l=new Array(o),s=0;se.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}},78614:function(e,t,r){"use strict";var n=r(25075);e.exports=function(e){return e?n(e):[0,0,0,1]}},63893:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.strTranslate,o=r(77922),s=r(18783).LINE_SPACING,l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;t.convertToTspans=function(e,r,m){var S=e.text(),E=!e.attr("data-notex")&&r&&r._context.typesetMath&&"undefined"!==typeof MathJax&&S.match(l),P=n.select(e.node().parentNode);if(!P.empty()){var O=e.attr("class")?e.attr("class").split(" ")[0]:"text";return O+="-math",P.selectAll("svg."+O).remove(),P.selectAll("g."+O+"-group").remove(),e.style("display",null).attr({"data-unformatted":S,"data-math":"N"}),E?(r&&r._promises||[]).push(new Promise((function(t){e.style("display","none");var r=parseInt(e.node().style.fontSize,10),o={fontSize:r};!function(e,t,r){var a,o,s,l,d=parseInt((MathJax.version||"").split(".")[0]);if(2===d||3===d){var h=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},v=function(){if("SVG"!==(a=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer("SVG")},m=function(){"svg"!==(a=MathJax.config.startup.output)&&(MathJax.config.startup.output="svg")},g=function(){var r="math-output-"+i.randstr({},64),a=(l=n.select("body").append("div").attr({id:r}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(e.replace(u,"\\lt ").replace(c,"\\gt "))).node();return 2===d?MathJax.Hub.Typeset(a):MathJax.typeset([a])},y=function(){var t=l.select(2===d?".MathJax_SVG":".MathJax"),a=!t.empty()&&l.select("svg").node();if(a){var o,s=a.getBoundingClientRect();o=2===d?n.select("body").select("#MathJax_SVG_glyphs"):t.select("defs"),r(t,o,s)}else i.log("There was an error in the tex syntax.",e),r();l.remove()},x=function(){if("SVG"!==a)return MathJax.Hub.setRenderer(a)},b=function(){"svg"!==a&&(MathJax.config.startup.output=a)},_=function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)},w=function(){MathJax.config=o};2===d?MathJax.Hub.Queue(h,v,g,y,x,_):3===d&&(p(),m(),MathJax.startup.defaultReady(),MathJax.startup.promise.then((function(){g(),y(),b(),w()})))}else i.warn("No MathJax version:",MathJax.version)}(E[2],o,(function(n,i,o){P.selectAll("svg."+O).remove(),P.selectAll("g."+O+"-group").remove();var s=n&&n.select("svg");if(!s||!s.node())return I(),void t();var l=P.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 u=o.width,c=o.height;s.attr({class:O,height:c,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var f=e.node().style.fill||"black",d=s.select("g");d.attr({fill:f,stroke:f});var h=d.node().getBoundingClientRect(),p=h.width,v=h.height;(p>u||v>c)&&(s.style("overflow","hidden"),p=(h=s.node().getBoundingClientRect()).width,v=h.height);var g=+e.attr("x"),y=+e.attr("y"),x=-(r||e.node().getBoundingClientRect().height)/4;if("y"===O[0])l.attr({transform:"rotate("+[-90,g,y]+")"+a(-p/2,x-v/2)});else if("l"===O[0])y=x-v/2;else if("a"===O[0]&&0!==O.indexOf("atitle"))g=0,y=x;else{var b=e.attr("text-anchor");g-=p*("middle"===b?.5:"end"===b?1:0),y=y+x-v/2}s.attr({x:g,y:y}),m&&m.call(e,l),t(l)}))}))):I(),e}function I(){P.empty()||(O=e.attr("class")+"-math",P.select("svg."+O).remove()),e.text("").style("white-space","pre");var r=function(e,t){t=t.replace(g," ");var r,a=!1,l=[],u=-1;function c(){u++;var t=document.createElementNS(o.svg,"tspan");n.select(t).attr({class:"line",dy:u*s+"em"}),e.appendChild(t),r=t;var i=l;if(l=[{node:t}],i.length>1)for(var a=1;a doesnt match end tag <"+e+">. Pretending it did match.",t),r=l[l.length-1].node}else i.log("Ignoring unexpected end tag .",t)}var E=b.test(t);E?c():(r=e,l=[{node:e}]);for(var P=t.split(y),O=0;O|>|>)/g,f=[["$","$"],["\\(","\\)"]],d={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"},h={sub:"0.3em",sup:"-0.6em"},p={sub:"-0.21em",sup:"0.42em"},v="\u200b",m=["http:","https:","mailto:","",void 0,":"],g=t.NEWLINES=/(\r\n?|\n)/g,y=/(<[^<>]*>)/,x=/<(\/?)([^ >]*)(\s+(.*))?>/i,b=//i;t.BR_TAG_ALL=//gi;var _=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,w=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,k=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,T=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function M(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&C(n)}var A=/(^|;)\s*color:/;t.plainText=function(e,t){for(var r=void 0!==(t=t||{}).len&&-1!==t.len?t.len:1/0,n=void 0!==t.allowedTags?t.allowedTags:["br"],i=e.split(y),a=[],o="",s=0,l=0;l3?a.push(u.substr(0,h-3)+"..."):a.push(u.substr(0,h));break}o=""}}return a.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(e){return e.replace(E,(function(e,t){return("#"===t.charAt(0)?function(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r(55232+(e>>10),e%1024+56320)}}("x"===t.charAt(1)?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):S[t])||e}))}function L(e){var t=encodeURI(decodeURI(e)),r=document.createElement("a"),n=document.createElement("a");r.href=e,n.href=t;var i=r.protocol,a=n.protocol;return-1!==m.indexOf(i)&&-1!==m.indexOf(a)?t:""}function P(e,t,r){var n,a,o,s=r.horizontalAlign,l=r.verticalAlign||"top",u=e.node().getBoundingClientRect(),c=t.node().getBoundingClientRect();return a="bottom"===l?function(){return u.bottom-n.height}:"middle"===l?function(){return u.top+(u.height-n.height)/2}:function(){return u.top},o="right"===s?function(){return u.right-n.width}:"center"===s?function(){return u.left+(u.width-n.width)/2}:function(){return u.left},function(){n=this.node().getBoundingClientRect();var e=o()-c.left,t=a()-c.top,s=r.gd||{};if(r.gd){s._fullLayout._calcInverseTransform(s);var l=i.apply3DTransform(s._fullLayout._invTransform)(e,t);e=l[0],t=l[1]}return this.style({top:t+"px",left:e+"px","z-index":1e3}),this}}t.convertEntities=C,t.sanitizeHTML=function(e){e=e.replace(g," ");for(var t=document.createElement("p"),r=t,i=[],a=e.split(y),o=0;oa.ts+t?l():a.timer=setTimeout((function(){l(),a.timer=null}),t)},t.done=function(e){var t=r[e];return t&&t.timer?new Promise((function(e){var r=t.onDone;t.onDone=function(){r&&r(),e(),t.onDone=null}})):Promise.resolve()},t.clear=function(e){if(e)n(r[e]),delete r[e];else for(var i in r)t.clear(i)}},58163:function(e,t,r){"use strict";var n=r(92770);e.exports=function(e,t){if(e>0)return Math.log(e)/Math.LN10;var r=Math.log(Math.min(t[0],t[1]))/Math.LN10;return n(r)||(r=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),r}},90973:function(e,t,r){"use strict";var n=e.exports={},i=r(78776).locationmodeToLayer,a=r(96892).zL;n.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")},n.getTopojsonPath=function(e,t){return e+t+".json"},n.getTopojsonFeatures=function(e,t){var r=i[e.locationmode],n=t.objects[r];return a(t,n).features}},37815:function(e){"use strict";e.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}},92177:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(73972);e.exports=function(e){for(var t,r,i=n.layoutArrayContainers,a=n.layoutArrayRegexes,o=e.split("[")[0],s=0;s0&&o.log("Clearing previous rejected promises from queue."),e._promises=[]},t.cleanLayout=function(e){var r,n;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,f=(s.subplotsRegistry.ternary||{}).attrRegex,d=(s.subplotsRegistry.gl3d||{}).attrRegex,v=Object.keys(e);for(r=0;r3?(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(e),"rotate"===e.dragmode&&(e.dragmode="orbit"),u.clean(e),e.template&&e.template.layout&&t.cleanLayout(e.template.layout),e},t.cleanData=function(e){for(var r=0;r0)return e.substr(0,t)}t.hasParent=function(e,t){for(var r=b(t);r;){if(r in e)return!0;r=b(r)}return!1};var _=["x","y","z"];t.clearAxisTypes=function(e,t,r){for(var n=0;n1&&a.warn("Full array edits are incompatible with other edits",f);var y=r[""][""];if(u(y))t.set(null);else{if(!Array.isArray(y))return a.warn("Unrecognized full array edit value",f,y),!0;t.set(y)}return!v&&(d(m,g),h(e),!0)}var x,b,_,w,k,T,M,A,S=Object.keys(r).map(Number).sort(o),E=t.get(),C=E||[],L=c(g,f).get(),P=[],O=-1,I=C.length;for(x=0;xC.length-(M?0:1))a.warn("index out of range",f,_);else if(void 0!==T)k.length>1&&a.warn("Insertion & removal are incompatible with edits to the same index.",f,_),u(T)?P.push(_):M?("add"===T&&(T={}),C.splice(_,0,T),L&&L.splice(_,0,{})):a.warn("Unrecognized full object edit value",f,_,T),-1===O&&(O=_);else for(b=0;b=0;x--)C.splice(P[x],1),L&&L.splice(P[x],1);if(C.length?E||t.set(C):t.set(null),v)return!1;if(d(m,g),p!==i){var D;if(-1===O)D=S;else{for(I=Math.max(C.length,I),D=[],x=0;x=O);x++)D.push(_);for(x=O;x=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function O(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if("undefined"===typeof t)throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),P(e,t,"currentIndices"),"undefined"===typeof r||Array.isArray(r)||(r=[r]),"undefined"!==typeof r&&P(e,r,"newIndices"),"undefined"!==typeof r&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function I(e,t,r,n,a){!function(e,t,r,n){var i=o.isPlainObject(n);if(!Array.isArray(e.data))throw new Error("gd.data must be an array");if(!o.isPlainObject(t))throw new Error("update must be a key:value object");if("undefined"===typeof r)throw new Error("indices must be an integer or array of integers");for(var a in P(e,r,"indices"),t){if(!Array.isArray(t[a])||t[a].length!==r.length)throw new Error("attribute "+a+" must be an array of length equal to indices array length");if(i&&(!(a in n)||!Array.isArray(n[a])||n[a].length!==t[a].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}(e,t,r,n);for(var l=function(e,t,r,n){var a,l,u,c,f,d=o.isPlainObject(n),h=[];for(var p in Array.isArray(r)||(r=[r]),r=L(r,e.data.length-1),t)for(var v=0;v-1&&-1===r.indexOf("grouptitlefont")?l(r,r.replace("titlefont","title.font")):r.indexOf("titleposition")>-1?l(r,r.replace("titleposition","title.position")):r.indexOf("titleside")>-1?l(r,r.replace("titleside","title.side")):r.indexOf("titleoffset")>-1&&l(r,r.replace("titleoffset","title.offset")):l(r,r.replace("title","title.text"));function l(t,r){e[r]=e[t],delete e[t]}}function U(e,t,r){e=o.getGraphDiv(e),_.clearPromiseQueue(e);var n={};if("string"===typeof t)n[t]=r;else{if(!o.isPlainObject(t))return o.warn("Relayout fail.",t,r),Promise.reject();n=o.extendFlat({},t)}Object.keys(n).length&&(e.changed=!0);var i=Y(e,n),a=i.flags;a.calc&&(e.calcdata=void 0);var s=[d.previousPromises];a.layoutReplot?s.push(w.layoutReplot):Object.keys(n).length&&(V(e,a,i)||d.supplyDefaults(e),a.legend&&s.push(w.doLegend),a.layoutstyle&&s.push(w.layoutStyles),a.axrange&&H(s,i.rangesAltered),a.ticks&&s.push(w.doTicksRelayout),a.modebar&&s.push(w.doModeBar),a.camera&&s.push(w.doCamera),a.colorbars&&s.push(w.doColorBars),s.push(A)),s.push(d.rehover,d.redrag,d.reselect),u.add(e,U,[e,i.undoit],U,[e,i.redoit]);var l=o.syncOrAsync(s,e);return l&&l.then||(l=Promise.resolve(e)),l.then((function(){return e.emit("plotly_relayout",i.eventData),e}))}function V(e,t,r){var n=e._fullLayout;if(!t.axrange)return!1;for(var i in t)if("axrange"!==i&&t[i])return!1;for(var a in r.rangesAltered){var o=h.id2name(a),s=e.layout[o],l=n[o];if(l.autorange=s.autorange,s.range&&(l.range=s.range.slice()),l.cleanRange(),l._matchGroup)for(var u in l._matchGroup)if(u!==a){var c=n[h.id2name(u)];c.autorange=l.autorange,c.range=l.range.slice(),c._input.range=l.range.slice()}}return!0}function H(e,t){var r=t?function(e){var r=[];for(var n in t){var i=h.getFromId(e,n);if(r.push(n),-1!==(i.ticklabelposition||"").indexOf("inside")&&i._anchorAxis&&r.push(i._anchorAxis._id),i._matchGroup)for(var a in i._matchGroup)t[a]||r.push(a)}return h.draw(e,r,{skipTitle:!0})}:function(e){return h.draw(e,"redraw")};e.push(y,w.doAutoRangeAndConstraints,r,w.drawData,w.finalDraw)}var q=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,W=/^[xyz]axis[0-9]*\.autorange$/,G=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function Y(e,t){var r,n,i,a=e.layout,l=e._fullLayout,u=l._guiEditing,d=F(l._preGUI,u),p=Object.keys(t),v=h.list(e),m=o.extendDeepAll({},t),g={};for(j(t),p=Object.keys(t),n=0;n0&&"string"!==typeof I.parts[R];)R--;var N=I.parts[R],B=I.parts[R-1]+"."+N,U=I.parts.slice(0,R).join("."),V=s(e.layout,U).get(),H=s(l,U).get(),Y=I.get();if(void 0!==D){A[O]=D,S[O]="reverse"===N?D:z(Y);var X=f.getLayoutValObject(l,I.parts);if(X&&X.impliedEdits&&null!==D)for(var K in X.impliedEdits)E(o.relativeAttr(O,K),X.impliedEdits[K]);if(-1!==["width","height"].indexOf(O))if(D){E("autosize",null);var $="height"===O?"width":"height";E($,l[$])}else l[O]=e._initialAutoSize[O];else if("autosize"===O)E("width",D?null:l.width),E("height",D?null:l.height);else if(B.match(q))P(B),s(l,U+"._inputRange").set(null);else if(B.match(W)){P(B),s(l,U+"._inputRange").set(null);var J=s(l,U).get();J._inputDomain&&(J._input.domain=J._inputDomain.slice())}else B.match(G)&&s(l,U+"._inputDomain").set(null);if("type"===N){C=V;var Q="linear"===H.type&&"log"===D,ee="log"===H.type&&"linear"===D;if(Q||ee){if(C&&C.range)if(H.autorange)Q&&(C.range=C.range[1]>C.range[0]?[1,2]:[2,1]);else{var te=C.range[0],re=C.range[1];Q?(te<=0&&re<=0&&E(U+".autorange",!0),te<=0?te=re/1e6:re<=0&&(re=te/1e6),E(U+".range[0]",Math.log(te)/Math.LN10),E(U+".range[1]",Math.log(re)/Math.LN10)):(E(U+".range[0]",Math.pow(10,te)),E(U+".range[1]",Math.pow(10,re)))}else E(U+".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"],c.getComponentMethod("annotations","convertCoords")(e,H,D,E),c.getComponentMethod("images","convertCoords")(e,H,D,E)}else E(U+".autorange",!0),E(U+".range",null);s(l,U+"._inputRange").set(null)}else if(N.match(T)){var ne=s(l,O).get(),ie=(D||{}).type;ie&&"-"!==ie||(ie="linear"),c.getComponentMethod("annotations","convertCoords")(e,ne,ie,E),c.getComponentMethod("images","convertCoords")(e,ne,ie,E)}var ae=b.containerArrayMatch(O);if(ae){r=ae.array,n=ae.index;var oe=ae.property,se=X||{editType:"calc"};""!==n&&""===oe&&(b.isAddVal(D)?S[O]=null:b.isRemoveVal(D)?S[O]=(s(a,r).get()||[])[n]:o.warn("unrecognized full object value",t)),k.update(M,se),g[r]||(g[r]={});var le=g[r][n];le||(le=g[r][n]={}),le[oe]=D,delete t[O]}else"reverse"===N?(V.range?V.range.reverse():(E(U+".autorange",!0),V.range=[1,0]),H.autorange?M.calc=!0:M.plot=!0):("dragmode"===O&&(!1===D&&!1!==Y||!1!==D&&!1===Y)||l._has("scatter-like")&&l._has("regl")&&"dragmode"===O&&("lasso"===D||"select"===D)&&"lasso"!==Y&&"select"!==Y||l._has("gl2d")?M.plot=!0:X?k.update(M,X):M.calc=!0,I.set(D))}}for(r in g)b.applyContainerArrayChanges(e,d(a,r),g[r],M,d)||(M.plot=!0);for(var ue in L){var ce=(C=h.getFromId(e,ue))&&C._constraintGroup;if(ce)for(var fe in M.calc=!0,ce)L[fe]||(h.getFromId(e,fe)._constraintShrinkable=!0)}return(Z(e)||t.height||t.width)&&(M.plot=!0),(M.plot||M.calc)&&(M.layoutReplot=!0),{flags:M,rangesAltered:L,undoit:S,redoit:A,eventData:m}}function Z(e){var t=e._fullLayout,r=t.width,n=t.height;return e.layout.autosize&&d.plotAutoSize(e,e.layout,t),t.width!==r||t.height!==n}function X(e,r,n,i){e=o.getGraphDiv(e),_.clearPromiseQueue(e),o.isPlainObject(r)||(r={}),o.isPlainObject(n)||(n={}),Object.keys(r).length&&(e.changed=!0),Object.keys(n).length&&(e.changed=!0);var a=_.coerceTraceIndices(e,i),s=B(e,o.extendFlat({},r),a),l=s.flags,c=Y(e,o.extendFlat({},n)),f=c.flags;(l.calc||f.calc)&&(e.calcdata=void 0),l.clearAxisTypes&&_.clearAxisTypes(e,a,n);var h=[];f.layoutReplot?h.push(w.layoutReplot):l.fullReplot?h.push(t._doPlot):(h.push(d.previousPromises),V(e,f,c)||d.supplyDefaults(e),l.style&&h.push(w.doTraceStyle),(l.colorbars||f.colorbars)&&h.push(w.doColorBars),f.legend&&h.push(w.doLegend),f.layoutstyle&&h.push(w.layoutStyles),f.axrange&&H(h,c.rangesAltered),f.ticks&&h.push(w.doTicksRelayout),f.modebar&&h.push(w.doModeBar),f.camera&&h.push(w.doCamera),h.push(A)),h.push(d.rehover,d.redrag,d.reselect),u.add(e,X,[e,s.undoit,c.undoit,s.traces],X,[e,s.redoit,c.redoit,s.traces]);var p=o.syncOrAsync(h,e);return p&&p.then||(p=Promise.resolve(e)),p.then((function(){return e.emit("plotly_update",{data:s.eventData,layout:c.eventData}),e}))}function K(e){return function(t){t._fullLayout._guiEditing=!0;var r=e.apply(null,arguments);return t._fullLayout._guiEditing=!1,r}}var $=[{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"}],J=[{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 Q(e,t){for(var r=0;r1;)if(n.pop(),void 0!==(r=s(t,n.join(".")+".uirevision").get()))return r;return t.uirevision}function te(e,t){for(var r=0;r=i.length?i[0]:i[e]:i}function l(e){return Array.isArray(a)?e>=a.length?a[0]:a[e]:a}function u(e,t){var r=0;return function(){if(e&&++r===t)return e()}}return void 0===n._frameWaitingCnt&&(n._frameWaitingCnt=0),new Promise((function(a,c){function f(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var t=n._currentFrame=n._frameQueue.shift();if(t){var r=t.name?t.name.toString():null;e._fullLayout._currentFrame=r,n._lastFrameAt=Date.now(),n._timeToNext=t.frameOpts.duration,d.transition(e,t.frame.data,t.frame.layout,_.coerceTraceIndices(e,t.frame.traces),t.frameOpts,t.transitionOpts).then((function(){t.onComplete&&t.onComplete()})),e.emit("plotly_animatingframe",{name:r,frame:t.frame,animation:{frame:t.frameOpts,transition:t.transitionOpts}})}else e.emit("plotly_animated"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}function h(){e.emit("plotly_animating"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null,function e(){n._animationRaf=window.requestAnimationFrame(e),Date.now()-n._lastFrameAt>n._timeToNext&&f()}()}var p,v,m=0;function g(e){return Array.isArray(i)?m>=i.length?e.transitionOpts=i[m]:e.transitionOpts=i[0]:e.transitionOpts=i,m++,e}var y=[],x=void 0===t||null===t,b=Array.isArray(t);if(x||b||!o.isPlainObject(t)){if(x||-1!==["string","number"].indexOf(typeof t))for(p=0;p0&&TT)&&M.push(v);y=M}}y.length>0?function(t){if(0!==t.length){for(var i=0;i=0;n--)if(o.isPlainObject(t[n])){var v=t[n].name,m=(c[v]||p[v]||{}).name,g=t[n].name,y=c[m]||p[m];m&&g&&"number"===typeof g&&y&&M<5&&(M++,o.warn('addFrames: overwriting frame "'+(c[m]||p[m]).name+'" with a frame whose name of type "number" also equates to "'+m+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===M&&o.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),p[v]={name:v},h.push({frame:d.supplyFrameDefaults(t[n]),index:r&&void 0!==r[n]&&null!==r[n]?r[n]:f+n})}h.sort((function(e,t){return e.index>t.index?-1:e.index=0;n--){if("number"===typeof(i=h[n].frame).name&&o.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;c[i.name="frame "+e._transitionData._counter++];);if(c[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),s.unshift({type:"insert",index:n,value:i[n]});var l=d.modifyFrames,c=d.modifyFrames,f=[e,s],h=[e,a];return u&&u.add(e,l,f,c,h),d.modifyFrames(e,a)},t.addTraces=function e(r,n,i){r=o.getGraphDiv(r);var a,s,l=[],c=t.deleteTraces,f=e,d=[r,l],h=[r,n];for(function(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if("undefined"===typeof t)throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n=0&&r=0&&r=a.length)return!1;if(2===e.dimensions){if(r++,t.length===r)return e;var o=t[r];if(!_(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function _(e){return e===Math.round(e)&&e>=0}function w(){var e,t,r={};for(e in f(r,o),n.subplotsRegistry)if((t=n.subplotsRegistry[e]).layoutAttributes)if(Array.isArray(t.attr))for(var i=0;i=l.length)return!1;i=(r=(n.transformsRegistry[l[u].type]||{}).attributes)&&r[t[2]],s=3}else{var c=e._module;if(c||(c=(n.modules[e.type||a.type.dflt]||{})._module),!c)return!1;if(!(i=(r=c.attributes)&&r[o])){var f=c.basePlotModule;f&&f.attributes&&(i=f.attributes[o])}i||(i=a[o])}return b(i,t,s)},t.getLayoutValObject=function(e,t){var r=function(e,t){var r,i,a,s,l=e._basePlotModules;if(l){var u;for(r=0;r=i&&(r._input||{})._templateitemname;s&&(o=i);var l,u=t+"["+o+"]";function c(){l={},s&&(l[u]={},l[u][a]=s)}function f(e,t){s?n.nestedProperty(l[u],e).set(t):l[u+"."+e]=t}function d(){var e=l;return c(),e}return c(),{modifyBase:function(e,t){l[e]=t},modifyItem:f,getUpdateObj:d,applyUpdate:function(t,r){t&&f(t,r);var i=d();for(var a in i)n.nestedProperty(e,a).set(i[a])}}}},61549:function(e,t,r){"use strict";var n=r(39898),i=r(73972),a=r(74875),o=r(71828),s=r(63893),l=r(33306),u=r(7901),c=r(91424),f=r(92998),d=r(64168),h=r(89298),p=r(18783),v=r(99082),m=v.enforce,g=v.clean,y=r(71739).doAutoRange,x="start",b="middle",_="end";function w(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function k(e){var r,i,s,l,f,v,m=e._fullLayout,g=m._size,y=g.p,x=h.list(e,"",!0);if(m._paperdiv.style({width:e._context.responsive&&m.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":m.width+"px",height:e._context.responsive&&m.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":m.height+"px"}).selectAll(".main-svg").call(c.setSize,m.width,m.height),e._context.setBackground(e,m.paper_bgcolor),t.drawMainTitle(e),d.manage(e),!m._has("cartesian"))return a.previousPromises(e);function b(e,t,r){var n=e._lw/2;return"x"===e._id.charAt(0)?t?"top"===r?t._offset-y-n:t._offset+t._length+y+n:g.t+g.h*(1-(e.position||0))+n%1:t?"right"===r?t._offset+t._length+y+n:t._offset-y-n:g.l+g.w*(e.position||0)+n%1}for(r=0;r.5?"t":"b",o=e._fullLayout.margin[a],s=0;return"paper"===t.yref?s=r+t.pad.t+t.pad.b:"container"===t.yref&&(s=function(e,t,r,n,i){var a=0;return"middle"===r&&(a+=i/2),"t"===e?("top"===r&&(a+=i),a+=n-t*n):("bottom"===r&&(a+=i),a+=t*n),a}(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}(e,r,m);g>0&&(function(e,t,r,n){var i="title.automargin",s=e._fullLayout.title,l=s.y>.5?"t":"b",u={x:s.x,y:s.y,t:0,b:0},c={};"paper"===s.yref&&function(e,t,r,n,i){var a="paper"===t.yref?e._fullLayout._size.h:e._fullLayout.height,s=o.isTopAnchor(t)?n:n-i,l="b"===r?a-s:s;return!(o.isTopAnchor(t)&&"t"===r||o.isBottomAnchor(t)&&"b"===r)&&lk?c.push({code:"unused",traceType:y,templateCount:w,dataCount:k}):k>w&&c.push({code:"reused",traceType:y,templateCount:w,dataCount:k})}}else c.push({code:"data"});if(function e(t,r){for(var n in t)if("_"!==n.charAt(0)){var a=t[n],o=v(t,n,r);i(a)?(Array.isArray(t)&&!1===a._template&&a.templateitemname&&c.push({code:"missing",path:o,templateitemname:a.templateitemname}),e(a,o)):Array.isArray(a)&&m(a)&&e(a,o)}}({data:h,layout:d},""),c.length)return c.map(g)}},403:function(e,t,r){"use strict";var n=r(92770),i=r(72391),a=r(74875),o=r(71828),s=r(25095),l=r(5900),u=r(70942),c=r(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}};e.exports=function(e,t){var r,d,h,p;function v(e){return!(e in t)||o.validate(t[e],f[e])}if(t=t||{},o.isPlainObject(e)?(r=e.data||[],d=e.layout||{},h=e.config||{},p={}):(e=o.getGraphDiv(e),r=o.extendDeep([],e.data),d=o.extendDeep({},e.layout),h=e._context,p=e._fullLayout||{}),!v("width")&&null!==t.width||!v("height")&&null!==t.height)throw new Error("Height and width should be pixel values.");if(!v("format"))throw new Error("Export format is not "+o.join2(f.format.values,", "," or ")+".");var m={};function g(e,r){return o.coerce(t,m,f,e,r)}var y=g("format"),x=g("width"),b=g("height"),_=g("scale"),w=g("setBackground"),k=g("imageDataOnly"),T=document.createElement("div");T.style.position="absolute",T.style.left="-5000px",document.body.appendChild(T);var M=o.extendFlat({},d);x?M.width=x:null===t.width&&n(p.width)&&(M.width=p.width),b?M.height=b:null===t.height&&n(p.height)&&(M.height=p.height);var A=o.extendFlat({},h,{_exportedPlot:!0,staticPlot:!0,setBackground:w}),S=s.getRedrawFunc(T);function E(){return new Promise((function(e){setTimeout(e,s.getDelay(T._fullLayout))}))}function C(){return new Promise((function(e,t){var r=l(T,y,_),n=T._fullLayout.width,f=T._fullLayout.height;function d(){i.purge(T),document.body.removeChild(T)}if("full-json"===y){var h=a.graphJson(T,!1,"keepdata","object",!0,!0);return h.version=c,h=JSON.stringify(h),d(),e(k?h:s.encodeJSON(h))}if(d(),"svg"===y)return e(k?r:s.encodeSVG(r));var p=document.createElement("canvas");p.id=o.randstr(),u({format:y,width:n,height:f,scale:_,canvas:p,svg:r,promise:!0}).then(e).catch(t)}))}return new Promise((function(e,t){i.newPlot(T,r,M,A).then(S).then(E).then(C).then((function(t){e(function(e){return k?e.replace(s.IMAGE_URL_PREFIX,""):e}(t))})).catch((function(e){t(e)}))}))}},84936:function(e,t,r){"use strict";var n=r(71828),i=r(74875),a=r(86281),o=r(72075).dfltConfig,s=n.isPlainObject,l=Array.isArray,u=n.isArrayOrTypedArray;function c(e,t,r,i,a,o){o=o||[];for(var f=Object.keys(e),d=0;dx.length&&i.push(h("unused",a,g.concat(x.length)));var M,A,S,E,C,L=x.length,P=Array.isArray(T);if(P&&(L=Math.min(L,T.length)),2===b.dimensions)for(A=0;Ax[A].length&&i.push(h("unused",a,g.concat(A,x[A].length)));var O=x[A].length;for(M=0;M<(P?Math.min(O,T[A].length):O);M++)S=P?T[A][M]:T,E=y[A][M],C=x[A][M],n.validate(E,S)?C!==E&&C!==+E&&i.push(h("dynamic",a,g.concat(A,M),E,C)):i.push(h("value",a,g.concat(A,M),E))}else i.push(h("array",a,g.concat(A),y[A]));else for(A=0;A1&&d.push(h("object","layout"))),i.supplyDefaults(p);for(var v=p._fullData,m=r.length,g=0;g0&&Math.round(f)===f))return{vals:i};u=f}for(var d=t.calendar,h="start"===l,p="end"===l,v=e[r+"period0"],m=a(v,d)||0,g=[],y=[],x=[],b=i.length,_=0;_M;)T=o(T,-u,d);for(;T<=M;)T=o(T,u,d);k=o(T,-u,d)}else{for(T=m+(w=Math.round((M-m)/c))*c;T>M;)T-=c;for(;T<=M;)T+=c;k=T-c}g[_]=h?k:p?T:(k+T)/2,y[_]=k,x[_]=T}return{vals:g,starts:y,ends:x}}},89502:function(e){"use strict";e.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}},71739:function(e,t,r){"use strict";var n=r(39898),i=r(92770),a=r(71828),o=r(50606).FP_SAFE,s=r(73972),l=r(91424),u=r(41675),c=u.getFromId,f=u.isLinked;function d(e,t){var r,n,i=[],o=e._fullLayout,s=p(o,t,0),l=p(o,t,1),u=m(e,t),c=u.min,f=u.max;if(0===c.length||0===f.length)return a.simpleMap(t.range,t.r2l);var d=c[0].val,v=f[0].val;for(r=1;r0&&((k=E-s(x)-l(b))>C?T/k>L&&(_=x,w=b,L=T/k):T/E>L&&(_={val:x.val,nopad:1},w={val:b.val,nopad:1},L=T/E));if(d===v){var P=d-1,O=d+1;if(A)if(0===d)i=[0,1];else{var I=(d>0?f:c).reduce((function(e,t){return Math.max(e,l(t))}),0),D=d/(1-Math.min(.5,I/E));i=d>0?[0,D]:[D,0]}else i=S?[Math.max(0,P),Math.max(1,O)]:[P,O]}else A?(_.val>=0&&(_={val:0,nopad:1}),w.val<=0&&(w={val:0,nopad:1})):S&&(_.val-L*s(_)<0&&(_={val:0,nopad:1}),w.val<=0&&(w={val:1,nopad:1})),L=(w.val-_.val-h(t,x.val,b.val))/(E-s(_)-l(w)),i=[_.val-L*s(_),w.val+L*l(w)];return g&&i.reverse(),a.simpleMap(i,t.l2r||Number)}function h(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),S=M((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=M(r.vpadplus||r.vpad),C=M(r.vpadminus||r.vpad);if(!k){if(d=1/0,h=-1/0,w)for(n=0;n0&&(d=a),a>h&&a-o&&(d=a),a>h&&a=O;n--)P(n);return{min:p,max:v,opts:r}},concatExtremes:m};var v=3;function m(e,t,r){var n,i,a,o=t._id,s=e._fullData,l=e._fullLayout,u=[],f=[];function d(e,t){for(n=0;n=r&&(u.extrapad||!o)){s=!1;break}i(t,u.val)&&u.pad<=r&&(o||!u.extrapad)&&(e.splice(l,1),l--)}if(s){var c=a&&0===t;e.push({val:t,pad:c?0:r,extrapad:!c&&o})}}function b(e){return i(e)&&Math.abs(e)=t}},89298:function(e,t,r){"use strict";var n=r(39898),i=r(92770),a=r(74875),o=r(73972),s=r(71828),l=s.strTranslate,u=r(63893),c=r(92998),f=r(7901),d=r(91424),h=r(13838),p=r(66287),v=r(50606),m=v.ONEMAXYEAR,g=v.ONEAVGYEAR,y=v.ONEMINYEAR,x=v.ONEMAXQUARTER,b=v.ONEAVGQUARTER,_=v.ONEMINQUARTER,w=v.ONEMAXMONTH,k=v.ONEAVGMONTH,T=v.ONEMINMONTH,M=v.ONEWEEK,A=v.ONEDAY,S=A/2,E=v.ONEHOUR,C=v.ONEMIN,L=v.ONESEC,P=v.MINUS_SIGN,O=v.BADNUM,I={K:"zeroline"},D={K:"gridline",L:"path"},R={K:"minor-gridline",L:"path"},z={K:"tick",L:"path"},F={K:"tick",L:"text"},N={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},B=r(18783),j=B.MID_SHIFT,U=B.CAP_SHIFT,V=B.LINE_SPACING,H=B.OPPOSITE_SIDE,q=3,W=e.exports={};W.setConvert=r(21994);var G=r(4322),Y=r(41675),Z=Y.idSort,X=Y.isLinked;W.id2name=Y.id2name,W.name2id=Y.name2id,W.cleanId=Y.cleanId,W.list=Y.list,W.listIds=Y.listIds,W.getFromId=Y.getFromId,W.getFromTrace=Y.getFromTrace;var K=r(71739);W.getAutoRange=K.getAutoRange,W.findExtremes=K.findExtremes;var $=1e-4;function J(e){var t=(e[1]-e[0])*$;return[e[0]-t,e[1]+t]}W.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),l=r._fullLayout._subplots[o+"axis"],u=n+"ref",c={};return i||(i=l[0]||("string"===typeof a?a:a[0])),a||(a=i),l=l.concat(l.map((function(e){return e+" domain"}))),c[u]={valType:"enumerated",values:l.concat(a?"string"===typeof a?[a]:a:[]),dflt:i},s.coerce(e,t,c,u)},W.getRefType=function(e){return void 0===e?e:"paper"===e?"paper":"pixel"===e?"pixel":/( domain)$/.test(e)?"domain":"range"},W.coercePosition=function(e,t,r,n,i,a){var o,l;if("range"!==W.getRefType(n))o=s.ensureNumber,l=r(i,a);else{var u=W.getFromId(t,n);l=r(i,a=u.fraction2r(a)),o=u.cleanPos}e[i]=o(l)},W.cleanPosition=function(e,t,r){return("paper"===r||"pixel"===r?s.ensureNumber:W.getFromId(t,r).cleanPos)(e)},W.redrawComponents=function(e,t){t=t||W.listIds(e);var r=e._fullLayout;function n(n,i,a,s){for(var l=o.getComponentMethod(n,i),u={},c=0;cr&&f2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0)):e._minDtick=0},W.saveRangeInitial=function(e,t){for(var r=W.list(e,"",!0),n=!1,i=0;i.3*d||c(n)||c(a))){var h=r.dtick/2;e+=e+ho){var l=Number(r.substr(1));a.exactYears>o&&l%12===0?e=W.tickIncrement(e,"M6","reverse")+1.5*A:a.exactMonths>o?e=W.tickIncrement(e,"M1","reverse")+15.5*A:e-=S;var u=W.tickIncrement(e,r);if(u<=n)return u}return e}(y,e,g,u,a)),m=y;m<=c;)m=W.tickIncrement(m,g,!1,a);return{start:t.c2r(y,0,a),end:t.c2r(m,0,a),size:g,_dataSpan:c-u}},W.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n,a=t.dtick&&i(t._tmin);if(a){var o=W.tickIncrement(t._tmin,t.dtick,!0);n=[t._tmin,.99*o+.01*t._tmin]}else{var l=s.simpleMap(t.range,t.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(e.range=s.simpleMap(n,t.l2r),e._isMinor=!0,W.prepTicks(e,r),a){var u=i(t.dtick),c=i(e.dtick),f=u?t.dtick:+t.dtick.substring(1),d=c?e.dtick:+e.dtick.substring(1);u&&c?re(f,d)?f===2*M&&d===2*A&&(e.dtick=M):f===2*M&&d===3*A?e.dtick=M:f!==M||(t._input.minor||{}).nticks?ne(f/d,2.5)?e.dtick=f/2:e.dtick=f:e.dtick=A:"M"===String(t.dtick).charAt(0)?c?e.dtick="M1":re(f,d)?f>=12&&2===d&&(e.dtick="M3"):e.dtick=t.dtick:"L"===String(e.dtick).charAt(0)?"L"===String(t.dtick).charAt(0)?re(f,d)||(e.dtick=ne(f/d,2.5)?t.dtick/2:t.dtick):e.dtick="D1":"D2"===e.dtick&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}void 0===t.minor._tick0Init&&(e.tick0=t.tick0)},W.prepTicks=function(e,t){var r=s.simpleMap(e.range,e.r2l,void 0,void 0,t);if("auto"===e.tickmode||!e.dtick){var n,a=e.nticks;a||("category"===e.type||"multicategory"===e.type?(n=e.tickfont?s.bigFont(e.tickfont.size||12):15,a=e._length/n):(n="y"===e._id.charAt(0)?40:80,a=s.constrain(e._length/n,4,9)+1),"radialaxis"===e._name&&(a*=2)),e.minor&&"array"!==e.minor.tickmode||"array"===e.tickmode&&(a*=100),e._roughDTick=Math.abs(r[1]-r[0])/a,W.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick<2*e._minDtick&&(e.dtick=e._minDtick,e.tick0=e.l2r(e._forceTick0))}"period"===e.ticklabelmode&&function(e){var t;function r(){return!(i(e.dtick)||"M"!==e.dtick.charAt(0))}var n=r(),a=W.getTickFormat(e);if(a){var o=e._dtickInit!==e.dtick;/%[fLQsSMX]/.test(a)||(/%[HI]/.test(a)?(t=E,o&&!n&&e.dtick=(I?0:1);D--){var R=!D;D?(e._dtickInit=e.dtick,e._tick0Init=e.tick0):(e.minor._dtickInit=e.minor.dtick,e.minor._tick0Init=e.minor.tick0);var z=D?e:s.extendFlat({},e,e.minor);if(R?W.prepMinorTicks(z,e,t):W.prepTicks(z,t),"array"!==z.tickmode)if("sync"!==z.tickmode){var F=J(c),N=F[0],B=F[1],j=i(z.dtick),U="log"===a&&!(j||"L"===z.dtick.charAt(0)),V=W.tickFirst(z,t);if(D){if(e._tmin=V,V=B:Y<=B;Y=W.tickIncrement(Y,Z,f,o)){if(D&&H++,z.rangebreaks&&!f){if(Y=h)break}if(L.length>p||Y===G)break;G=Y;var X={value:Y};D?(U&&Y!==(0|Y)&&(X.simpleLabel=!0),l>1&&H%l&&(X.skipLabel=!0),L.push(X)):(X.minor=!0,P.push(X))}}else L=[],v=oe(e);else D?(L=[],v=se(e)):(P=[],C=se(e))}if(I&&!("inside"===e.minor.ticks&&"outside"===e.ticks||"outside"===e.minor.ticks&&"inside"===e.ticks)){for(var K=L.map((function(e){return e.value})),$=[],Q=0;Q0?(a=n-1,o=n):(a=n,o=n);var s,l=e[a].value,u=e[o].value,c=Math.abs(u-l),f=r||c,d=0;f>=y?d=c>=y&&c<=m?c:g:r===b&&f>=_?d=c>=_&&c<=x?c:b:f>=T?d=c>=T&&c<=w?c:k:r===M&&f>=M?d=M:f>=A?d=A:r===S&&f>=S?d=S:r===E&&f>=E&&(d=E),d>=c&&(d=c,s=!0);var h=i+d;if(t.rangebreaks&&d>0){for(var p=0,v=0;v<84;v++){var C=(v+.5)/84;t.maskBreaks(i*(1-C)+C*h)!==O&&p++}(d*=p/84)||(e[n].drop=!0),s&&c>M&&(d=c)}(d>0||0===n)&&(e[n].periodX=i+d/2)}}(L,e,e._definedDelta),e.rangebreaks){var ie="y"===e._id.charAt(0),ae=1;"auto"===e.tickmode&&(ae=e.tickfont?e.tickfont.size:12);var le=NaN;for(r=L.length-1;r>-1;r--)if(L[r].drop)L.splice(r,1);else{L[r].value=ze(L[r].value,e);var ue=e.c2p(L[r].value);(ie?le>ue-ae:leh||feh&&(ce.periodX=h),fe10||"01-01"!==n.substr(5)?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=A&&a<=10||t>=15*A)e._tickround="d";else if(t>=C&&a<=16||t>=E)e._tickround="M";else if(t>=L&&a<=19||t>=C)e._tickround="S";else{var o=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(a,o)-20,e._tickround<0&&(e._tickround=4)}}else if(i(t)||"L"===t.charAt(0)){var s=e.range.map(e.r2d||Number);i(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),u=Math.floor(Math.log(l)/Math.LN10+.01),c=void 0===e.minexponent?3:e.minexponent;Math.abs(u)>c&&(xe(e.exponentformat)&&!be(u)?e._tickexponent=3*Math.round((u-1)/3):e._tickexponent=u)}else e._tickround=null}function ge(e,t,r){var n=e.tickfont||{};return{x:t,dx:0,dy:0,text:r||"",fontSize:n.size,font:n.family,fontColor:n.color}}W.autoTicks=function(e,t,r){var n;function a(e){return Math.pow(e,Math.floor(Math.log(t)/Math.LN10))}if("date"===e.type){e.tick0=s.dateTick0(e.calendar,0);var o=2*t;if(o>g)t/=g,n=a(10),e.dtick="M"+12*ve(t,n,le);else if(o>k)t/=k,e.dtick="M"+ve(t,1,ue);else if(o>A){if(e.dtick=ve(t,A,e._hasDayOfWeekBreaks?[1,2,7,14]:fe),!r){var l=W.getTickFormat(e),u="period"===e.ticklabelmode;u&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=s.dateTick0(e.calendar,2):e.tick0=s.dateTick0(e.calendar,1),u&&(e._dowTick0=e.tick0)}}else o>E?e.dtick=ve(t,E,ue):o>C?e.dtick=ve(t,C,ce):o>L?e.dtick=ve(t,L,ce):(n=a(10),e.dtick=ve(t,n,le))}else if("log"===e.type){e.tick0=0;var c=s.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(c[1]-c[0])<1){var f=1.5*Math.abs((c[1]-c[0])/t);t=Math.abs(Math.pow(10,c[1])-Math.pow(10,c[0]))/f,n=a(10),e.dtick="L"+ve(t,n,le)}else e.dtick=t>.3?"D2":"D1"}else"category"===e.type||"multicategory"===e.type?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):Re(e)?(e.tick0=0,n=1,e.dtick=ve(t,n,pe)):(e.tick0=0,n=a(10),e.dtick=ve(t,n,le));if(0===e.dtick&&(e.dtick=1),!i(e.dtick)&&"string"!==typeof e.dtick){var d=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(d)}},W.tickIncrement=function(e,t,r,a){var o=r?-1:1;if(i(t))return s.increment(e,o*t);var l=t.charAt(0),u=o*Number(t.substr(1));if("M"===l)return s.incrementMonth(e,u,a);if("L"===l)return Math.log(Math.pow(10,e)+u)/Math.LN10;if("D"===l){var c="D2"===t?he:de,f=e+.01*o,d=s.roundUp(s.mod(f,1),c,r);return Math.floor(f)+Math.log(n.round(Math.pow(10,d),1))/Math.LN10}throw"unrecognized dtick "+String(t)},W.tickFirst=function(e,t){var r=e.r2l||Number,a=s.simpleMap(e.range,r,void 0,void 0,t),o=a[1] ")}else e._prevDateHead=l,u+="
"+l;t.text=u}(e,o,r,u):"log"===c?function(e,t,r,n,a){var o=e.dtick,l=t.x,u=e.tickformat,c="string"===typeof o&&o.charAt(0);if("never"===a&&(a=""),n&&"L"!==c&&(o="L3",c="L"),u||"L"===c)t.text=_e(Math.pow(10,l),e,a,n);else if(i(o)||"D"===c&&s.mod(l+.01,1)<.1){var f=Math.round(l),d=Math.abs(f),h=e.exponentformat;"power"===h||xe(h)&&be(f)?(t.text=0===f?1:1===f?"10":"10"+(f>1?"":P)+d+"",t.fontSize*=1.25):("e"===h||"E"===h)&&d>2?t.text="1"+h+(f>0?"+":P)+d:(t.text=_e(Math.pow(10,l),e,"","fakehover"),"D1"===o&&"y"===e._id.charAt(0)&&(t.dy-=t.fontSize/6))}else{if("D"!==c)throw"unrecognized dtick "+String(o);t.text=String(Math.round(Math.pow(10,s.mod(l,1)))),t.fontSize*=.75}if("D1"===e.dtick){var p=String(t.text).charAt(0);"0"!==p&&"1"!==p||("y"===e._id.charAt(0)?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(l<0?.5:.25)))}}(e,o,0,u,v):"category"===c?function(e,t){var r=e._categories[Math.round(t.x)];void 0===r&&(r=""),t.text=String(r)}(e,o):"multicategory"===c?function(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=void 0===i[1]?"":String(i[1]),o=void 0===i[0]?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}(e,o,r):Re(e)?function(e,t,r,n,i){if("radians"!==e.thetaunit||r)t.text=_e(t.x,e,i,n);else{var a=t.x/180;if(0===a)t.text="0";else{var o=function(e){function t(e,t){return Math.abs(e-t)<=1e-6}function r(e,n){return t(n,0)?e:r(n,e%n)}function n(e){for(var r=1;!t(Math.round(e*r)/r,e);)r*=10;return r}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}(a);if(o[1]>=100)t.text=_e(s.deg2rad(t.x),e,i,n);else{var l=t.x<0;1===o[1]?1===o[0]?t.text="\u03c0":t.text=o[0]+"\u03c0":t.text=["",o[0],"","\u2044","",o[1],"","\u03c0"].join(""),l&&(t.text=P+t.text)}}}}(e,o,r,u,v):function(e,t,r,n,i){"never"===i?i="":"all"===e.showexponent&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=_e(t.x,e,i,n)}(e,o,0,u,v),n||(e.tickprefix&&!p(e.showtickprefix)&&(o.text=e.tickprefix+o.text),e.ticksuffix&&!p(e.showticksuffix)&&(o.text+=e.ticksuffix)),e.labelalias&&e.labelalias.hasOwnProperty(o.text)){var m=e.labelalias[o.text];"string"===typeof m&&(o.text=m)}if("boundaries"===e.tickson||e.showdividers){var g=function(t){var r=e.l2p(t);return r>=0&&r<=e._length?t:null};o.xbnd=[g(o.x-.5),g(o.x+e.dtick-.5)]}return o},W.hoverLabelText=function(e,t,r){r&&(e=s.extendFlat({},e,{hoverformat:r}));var n=Array.isArray(t)?t[0]:t,i=Array.isArray(t)?t[1]:void 0;if(void 0!==i&&i!==n)return W.hoverLabelText(e,n,r)+" - "+W.hoverLabelText(e,i,r);var a="log"===e.type&&n<=0,o=W.tickText(e,e.c2l(a?-n:n),"hover").text;return a?0===n?"0":P+o:o};var ye=["f","p","n","\u03bc","m","","k","M","G","T"];function xe(e){return"SI"===e||"B"===e}function be(e){return e>14||e<-15}function _e(e,t,r,n){var a=e<0,o=t._tickround,l=r||t.exponentformat||"B",u=t._tickexponent,c=W.getTickFormat(t),f=t.separatethousands;if(n){var d={exponentformat:l,minexponent:t.minexponent,dtick:"none"===t.showexponent?t.dtick:i(e)&&Math.abs(e)||1,range:"none"===t.showexponent?t.range.map(t.r2d):[0,e||1]};me(d),o=(Number(d._tickround)||0)+4,u=d._tickexponent,t.hoverformat&&(c=t.hoverformat)}if(c)return t._numFormat(c)(e).replace(/-/g,P);var h,p=Math.pow(10,-o)/2;if("none"===l&&(u=0),(e=Math.abs(e))"+h+"":"B"===l&&9===u?e+="B":xe(l)&&(e+=ye[u/3+5])),a?P+e:e}function we(e,t){if(e){var r=Object.keys(N).reduce((function(e,r){return-1!==t.indexOf(r)&&N[r].forEach((function(t){e[t]=1})),e}),{});Object.keys(e).forEach((function(t){r[t]||(1===t.length?e[t]=0:delete e[t])}))}}function ke(e,t){for(var r=[],n={},i=0;i1&&r=i.min&&e=n(e))}function s(e,t){var r=null===t[0],n=null===t[1],i=a(e,t[0])>=0,o=a(e,t[1])<=0;return(r||i)&&(n||o)}if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":for(t=0;t=0&&i.unshift(i.splice(n,1).shift())}}));var o={false:{left:0,right:0}};return s.syncOrAsync(i.map((function(t){return function(){if(t){var n=W.getFromId(e,t);r||(r={}),r.axShifts=o,r.overlayingShiftedAx=a;var i=W.drawOne(e,n,r);return n._shiftPusher&&Be(n,n._fullDepth||0,o,!0),n._r=n.range.slice(),n._rl=s.simpleMap(n._r,n.r2l),i}}})))},W.drawOne=function(e,t,r){var n,i,l,u=(r=r||{}).axShifts||{},h=r.overlayingShiftedAx||[];t.setScale();var p=e._fullLayout,v=t._id,m=v.charAt(0),g=W.counterLetter(v),y=p._plots[t._mainSubplot];if(y){if(t._shiftPusher=t.autoshift||-1!==h.indexOf(t._id)||-1!==h.indexOf(t.overlaying),t._shiftPusher&"free"===t.anchor){var x=t.linewidth/2||0;"inside"===t.ticks&&(x+=t.ticklen),Be(t,x,u,!0),Be(t,t.shift||0,u,!1)}!0===r.skipTitle&&void 0!==t._shift||(t._shift=function(e,t){return e.autoshift?t[e.overlaying][e.side]:e.shift||0}(t,u));var b=y[m+"axislayer"],_=t._mainLinePosition,w=_+=t._shift,k=t._mainMirrorPosition,T=t._vals=W.calcTicks(t),M=[t.mirror,w,k].join("_");for(n=0;n0?r.bottom-c:0,f))));var d=0,h=0;if(t._shiftPusher&&(d=Math.max(f,r.height>0?"l"===l?c-r.left:r.right-c:0),t.title.text!==p._dfltTitle[m]&&(h=(t._titleStandoff||0)+(t._titleScoot||0),"l"===l&&(h+=Ae(t))),t._fullDepth=Math.max(d,h)),t.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var v=[0,1],y="number"===typeof t._shift?t._shift:0;if("x"===m){if("b"===l?n[l]=t._depth:(n[l]=t._depth=Math.max(r.width>0?c-r.top:0,f),v.reverse()),r.width>0){var x=r.right-(t._offset+t._length);x>0&&(n.xr=1,n.r=x);var b=t._offset-r.left;b>0&&(n.xl=0,n.l=b)}}else if("l"===l?(t._depth=Math.max(r.height>0?c-r.left:0,f),n[l]=t._depth-y):(t._depth=Math.max(r.height>0?r.right-c:0,f),n[l]=t._depth+y,v.reverse()),r.height>0){var _=r.bottom-(t._offset+t._length);_>0&&(n.yb=0,n.b=_);var w=t._offset-r.top;w>0&&(n.yt=1,n.t=w)}n[g]="free"===t.anchor?t.position:t._anchorAxis.domain[v[0]],t.title.text!==p._dfltTitle[m]&&(n[l]+=Ae(t)+(t.title.standoff||0)),t.mirror&&"free"!==t.anchor&&((i={x:0,y:0,r:0,l:0,t:0,b:0})[u]=t.linewidth,t.mirror&&!0!==t.mirror&&(i[u]+=f),!0===t.mirror||"ticks"===t.mirror?i[g]=t._anchorAxis.domain[v[1]]:"all"!==t.mirror&&"allticks"!==t.mirror||(i[g]=[t._counterDomainMin,t._counterDomainMax][v[1]]))}le&&(s=o.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),"string"===typeof t.automargin&&(we(n,t.automargin),we(i,t.automargin)),a.autoMargin(e,Ce(t),n),a.autoMargin(e,Le(t),i),a.autoMargin(e,Pe(t),s)})),s.syncOrAsync(oe)}}function ue(e){var r=v+(e||"tick");return A[r]||(A[r]=function(e,t){var r,n,i,a;return e._selections[t].size()?(r=1/0,n=-1/0,i=1/0,a=-1/0,e._selections[t].each((function(){var e=Ee(this),t=d.bBox(e.node().parentNode);r=Math.min(r,t.top),n=Math.max(n,t.bottom),i=Math.min(i,t.left),a=Math.max(a,t.right)}))):(r=0,n=0,i=0,a=0),{top:r,bottom:n,left:i,right:a,height:n-r,width:a-i}}(t,r)),A[r]}},W.getTickSigns=function(e,t){var r=e._id.charAt(0),n={x:"top",y:"right"}[r],i=e.side===n?1:-1,a=[-1,1,i,-i];return"inside"!==(t?(e.minor||{}).ticks:e.ticks)===("x"===r)&&(a=a.map((function(e){return-e}))),e.side&&a.push({l:-1,t:-1,r:1,b:1}[e.side.charAt(0)]),a},W.makeTransTickFn=function(e){return"x"===e._id.charAt(0)?function(t){return l(e._offset+e.l2p(t.x),0)}:function(t){return l(0,e._offset+e.l2p(t.x))}},W.makeTransTickLabelFn=function(e){var t=function(e){var t=e.ticklabelposition||"",r=function(e){return-1!==t.indexOf(e)},n=r("top"),i=r("left"),a=r("right"),o=r("bottom"),s=r("inside"),l=o||i||n||a;if(!l&&!s)return[0,0];var u=e.side,c=l?(e.tickwidth||0)/2:0,f=q,d=e.tickfont?e.tickfont.size:12;return(o||n)&&(c+=d*U,f+=(e.linewidth||0)/2),(i||a)&&(c+=(e.linewidth||0)/2,f+=q),s&&"top"===u&&(f-=d*(1-U)),(i||n)&&(c=-c),"bottom"!==u&&"right"!==u||(f=-f),[l?c:0,s?f:0]}(e),r=t[0],n=t[1];return"x"===e._id.charAt(0)?function(t){return l(r+e._offset+e.l2p(Te(t)),n)}:function(t){return l(n,r+e._offset+e.l2p(Te(t)))}},W.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=void 0!==n.len?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return"x"===o?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r},W.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",a=function(e){return-1!==n.indexOf(e)},o=a("top"),l=a("left"),u=a("right"),c=a("bottom")||l||o||u,f=a("inside"),d="inside"===n&&"inside"===e.ticks||!f&&"outside"===e.ticks&&"boundaries"!==e.tickson,h=0,p=0,v=d?e.ticklen:0;if(f?v*=-1:c&&(v=0),d&&(h+=v,r)){var m=s.deg2rad(r);h=v*Math.cos(m)+1,p=v*Math.sin(m)}e.showticklabels&&(d||e.showline)&&(h+=.2*e.tickfont.size);var g,y,x,b,_,w={labelStandoff:h+=(e.linewidth||1)/2*(f?-1:1),labelShift:p},k=0,T=e.side,M=e._id.charAt(0),A=e.tickangle;if("x"===M)b=(_=!f&&"bottom"===T||f&&"top"===T)?1:-1,f&&(b*=-1),g=p*b,y=t+h*b,x=_?1:-.2,90===Math.abs(A)&&(f?x+=j:x=-90===A&&"bottom"===T?U:90===A&&"top"===T?j:.5,k=j/2*(A/90)),w.xFn=function(e){return e.dx+g+k*e.fontSize},w.yFn=function(e){return e.dy+y+e.fontSize*x},w.anchorFn=function(e,t){if(c){if(l)return"end";if(u)return"start"}return i(t)&&0!==t&&180!==t?t*b<0!==f?"end":"start":"middle"},w.heightFn=function(t,r,n){return r<-60||r>60?-.5*n:"top"===e.side!==f?-n:0};else if("y"===M){if(b=(_=!f&&"left"===T||f&&"right"===T)?1:-1,f&&(b*=-1),g=h,y=p*b,x=0,f||90!==Math.abs(A)||(x=-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*b,x=0}}w.xFn=function(e){return e.dx+t-(g+e.fontSize*x)*b+k*e.fontSize},w.yFn=function(e){return e.dy+y+e.fontSize*j},w.anchorFn=function(e,t){return i(t)&&90===Math.abs(t)?"middle":_?"end":"start"},w.heightFn=function(t,r,n){return"right"===e.side&&(r*=-1),r<-30?-n:r<30?-.5*n:0}}return w},W.drawTicks=function(e,t,r){r=r||{};var i=t._id+"tick",a=[].concat(t.minor&&t.minor.ticks?r.vals.filter((function(e){return e.minor&&!e.noTick})):[]).concat(t.ticks?r.vals.filter((function(e){return!e.minor&&!e.noTick})):[]),o=r.layer.selectAll("path."+i).data(a,Me);o.exit().remove(),o.enter().append("path").classed(i,1).classed("ticks",1).classed("crisp",!1!==r.crisp).each((function(e){return f.stroke(n.select(this),e.minor?t.minor.tickcolor:t.tickcolor)})).style("stroke-width",(function(r){return d.crispRound(e,r.minor?t.minor.tickwidth:t.tickwidth,1)+"px"})).attr("d",r.path).style("display",null),Ne(t,[z]),o.attr("transform",r.transFn)},W.drawGrid=function(e,t,r){if(r=r||{},"sync"!==t.tickmode){var i=t._id+"grid",a=t.minor&&t.minor.showgrid,o=a?r.vals.filter((function(e){return e.minor})):[],s=t.showgrid?r.vals.filter((function(e){return!e.minor})):[],l=r.counterAxis;if(l&&W.shouldShowZeroLine(e,t,l))for(var u="array"===t.tickmode,c=0;c=0;g--){var y=g?v:m;if(y){var x=y.selectAll("path."+i).data(g?s:o,Me);x.exit().remove(),x.enter().append("path").classed(i,1).classed("crisp",!1!==r.crisp),x.attr("transform",r.transFn).attr("d",r.path).each((function(e){return f.stroke(n.select(this),e.minor?t.minor.gridcolor:t.gridcolor||"#ddd")})).style("stroke-dasharray",(function(e){return d.dashStyle(e.minor?t.minor.griddash:t.griddash,e.minor?t.minor.gridwidth:t.gridwidth)})).style("stroke-width",(function(e){return(e.minor?p:t._gw)+"px"})).style("display",null),"function"===typeof r.path&&x.attr("d",r.path)}}Ne(t,[D,R])}},W.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=W.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",!1!==r.crisp).each((function(){r.layer.selectAll("path").sort((function(e,t){return Z(e.id,t.id)}))})),a.attr("transform",r.transFn).attr("d",r.path).call(f.stroke,t.zerolinecolor||f.defaultLine).style("stroke-width",d.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),Ne(t,[I])},W.drawLabels=function(e,t,r){r=r||{};var a=e._fullLayout,o=t._id,c=o.charAt(0),f=r.cls||o+"tick",h=r.vals.filter((function(e){return e.text})),p=r.labelFns,v=r.secondary?0:t.tickangle,m=(t._prevTickAngles||{})[f],g=r.layer.selectAll("g."+f).data(t.showticklabels?h:[],Me),y=[];function x(e,a){e.each((function(e){var o=n.select(this),s=o.select(".text-math-group"),c=p.anchorFn(e,a),f=r.transFn.call(o.node(),e)+(i(a)&&0!==+a?" rotate("+a+","+p.xFn(e)+","+(p.yFn(e)-e.fontSize/2)+")":""),h=u.lineCount(o),v=V*e.fontSize,m=p.heightFn(e,i(a)?+a:0,(h-1)*v);if(m&&(f+=l(0,m)),s.empty()){var g=o.select("text");g.attr({transform:f,"text-anchor":c}),g.style("opacity",1),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var y=d.bBox(s.node()).width*{end:-.5,start:.5}[c];s.attr("transform",f+l(y,0))}}))}g.enter().append("g").classed(f,1).append("text").attr("text-anchor","middle").each((function(t){var r=n.select(this),i=e._promises.length;r.call(u.positionText,p.xFn(t),p.yFn(t)).call(d.font,t.font,t.fontSize,t.fontColor).text(t.text).call(u.convertToTspans,e),e._promises[i]?y.push(e._promises.pop().then((function(){x(r,v)}))):x(r,v)})),Ne(t,[F]),g.exit().remove(),r.repositionOnUpdate&&g.each((function(e){n.select(this).select("text").call(u.positionText,p.xFn(e),p.yFn(e))})),t._adjustTickLabelsOverflow=function(){var r=t.ticklabeloverflow;if(r&&"allow"!==r){var i=-1!==r.indexOf("hide"),o="x"===t._id.charAt(0),l=0,u=o?e._fullLayout.width:e._fullLayout.height;if(-1!==r.indexOf("domain")){var c=s.simpleMap(t.range,t.r2l);l=t.l2p(c[0])+t._offset,u=t.l2p(c[1])+t._offset}var f=Math.min(l,u),h=Math.max(l,u),p=t.side,v=1/0,m=-1/0;for(var y in g.each((function(e){var r=n.select(this);if(r.select(".text-math-group").empty()){var a=d.bBox(r.node()),s=0;o?(a.right>h||a.lefth||a.top+(t.tickangle?0:e.fontSize/4)t["_visibleLabelMin_"+r._id]?l.style("display","none"):"tick"!==e.K||i||l.style("display",null)}))}))}))}))},x(g,m+1?m:v);var b=null;t._selections&&(t._selections[f]=g);var _=[function(){return y.length&&Promise.all(y)}];t.automargin&&a._redrawFromAutoMarginCount&&90===m?(b=90,_.push((function(){x(g,m)}))):_.push((function(){if(x(g,v),h.length&&"x"===c&&!i(v)&&("log"!==t.type||"D"!==String(t.dtick).charAt(0))){b=0;var e,n=0,a=[];if(g.each((function(e){n=Math.max(n,e.fontSize);var r=t.l2p(e.x),i=Ee(this),o=d.bBox(i.node());a.push({top:0,bottom:10,height:10,left:r-o.width/2,right:r+o.width/2+2,width:o.width+2})})),"boundaries"!==t.tickson&&!t.showdividers||r.secondary){var o=h.length,l=Math.abs((h[o-1].x-h[0].x)*t._m)/(o-1),u=t.ticklabelposition||"",f=function(e){return-1!==u.indexOf(e)},p=f("top"),m=f("left"),y=f("right"),_=f("bottom")||m||p||y?(t.tickwidth||0)+2*q:0,w=l<2.5*n||"multicategory"===t.type||"realaxis"===t._name;for(e=0;e1)for(n=1;n2*o}(i,t))return"date";var m="strict"!==r.autotypenumbers;return function(e,t){for(var r=e.length,n=f(r),i=0,o=0,s={},c=0;c2*i}(i,m)?"category":function(e,t){for(var r=e.length,n=0;n=2){var s,u,c="";if(2===o.length)for(s=0;s<2;s++)if(u=b(o[s])){c=m;break}var f=i("pattern",c);if(f===m)for(s=0;s<2;s++)(u=b(o[s]))&&(t.bounds[s]=o[s]=u-1);if(f)for(s=0;s<2;s++)switch(u=o[s],f){case m:if(!n(u))return void(t.enabled=!1);if((u=+u)!==Math.floor(u)||u<0||u>=7)return void(t.enabled=!1);t.bounds[s]=o[s]=u;break;case g:if(!n(u))return void(t.enabled=!1);if((u=+u)<0||u>24)return void(t.enabled=!1);t.bounds[s]=o[s]=u}if(!1===r.autorange){var d=r.range;if(d[0]d[1])return void(t.enabled=!1)}else if(o[0]>d[0]&&o[1]n?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)},t.ref2id=function(e){return!!/^[xyz]/.test(e)&&e.split(" ")[0]},t.isLinked=function(e,t){return a(t,e._axisMatchGroups)||a(t,e._axisConstraintGroups)}},15258:function(e){"use strict";e.exports=function(e,t,r,n){if("category"===t.type){var i,a=e.categoryarray,o=Array.isArray(a)&&a.length>0;o&&(i="array");var s,l=r("categoryorder",i);"array"===l&&(s=r("categoryarray")),o||"array"!==l||(l=t.categoryorder="trace"),"trace"===l?t._initialCategories=[]:"array"===l?t._initialCategories=s.slice():(s=function(e,t){var r,n,i,a=t.dataAttr||e._id.charAt(0),o={};if(t.axData)r=t.axData;else for(r=[],n=0;nn?i.substr(n):a.substr(r))+o:i+a+e*t:o}function m(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;ou*x)||k)for(r=0;rI&&FP&&(P=F);d/=(P-L)/(2*O),L=l.l2r(L),P=l.l2r(P),l.range=l._input.range=S=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function B(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",u(r,n)).attr("d",i+"Z")}function j(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:f.background,stroke:f.defaultLine,"stroke-width":1,opacity:0}).attr("transform",u(t,r)).attr("d","M0,0Z")}function U(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),V(e,t,i,a)}function V(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function H(e){n.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function q(e){O&&e.data&&e._context.showTips&&(i.notifier(i._(e,"Double-click to zoom back out"),"long"),O=!1)}function W(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,P)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function G(e,t,r,n,a){for(var o,s,l,u,c=!1,f={},d={},h=(a||{}).xaHash,p=(a||{}).yaHash,v=0;v=0)i._fullLayout._deactivateShape(i);else{var o=i._fullLayout.clickmode;if(H(i),2!==e||ge||qe(),me)o.indexOf("select")>-1&&S(r,i,K,$,t.id,Pe),o.indexOf("event")>-1&&h.click(i,r,t.id);else if(1===e&&ge){var s=v?I:O,u="s"===v||"w"===g?0:1,f=s._name+".range["+u+"]",d=function(e,t){var r,n=e.range[t],i=Math.abs(n-e.range[1-t]);return"date"===e.type?n:"log"===e.type?(r=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,a("."+r+"g")(Math.pow(10,n))):(r=Math.floor(Math.log(Math.abs(n))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,a("."+String(r)+"g")(n))}(s,u),p="left",m="middle";if(s.fixedrange)return;v?(m="n"===v?"top":"bottom","right"===s.side&&(p="right")):"e"===g&&(p="right"),i._context.showAxisRangeEntryBoxes&&n.select(be).call(c.makeEditable,{gd:i,immediate:!0,background:i._fullLayout.paper_bgcolor,text:String(d),fill:s.tickfont?s.tickfont.color:"#444",horizontalAlign:p,verticalAlign:m}).on("edit",(function(e){var t=s.d2r(e);void 0!==t&&l.call("_guiRelayout",i,f,t)}))}}}function De(t,r){if(e._transitioningWithDuration)return!1;var n=Math.max(0,Math.min(ee,he*t+_e)),i=Math.max(0,Math.min(te,pe*r+we)),a=Math.abs(n-_e),o=Math.abs(i-we);function s(){Se="",ke.r=ke.l,ke.t=ke.b,Ce.attr("d","M0,0Z")}if(ke.l=Math.min(_e,n),ke.r=Math.max(_e,n),ke.t=Math.min(we,i),ke.b=Math.max(we,i),re.isSubplotConstrained)a>P||o>P?(Se="xy",a/ee>o/te?(o=a*te/ee,we>i?ke.t=we-o:ke.b=we+o):(a=o*ee/te,_e>n?ke.l=_e-a:ke.r=_e+a),Ce.attr("d",W(ke))):s();else if(ne.isSubplotConstrained)if(a>P||o>P){Se="xy";var l=Math.min(ke.l/ee,(te-ke.b)/te),u=Math.max(ke.r/ee,(te-ke.t)/te);ke.l=l*ee,ke.r=u*ee,ke.b=(1-l)*te,ke.t=(1-u)*te,Ce.attr("d",W(ke))}else s();else!ae||o0){var c;if(ne.isSubplotConstrained||!ie&&1===ae.length){for(c=0;cb[1]-1/4096&&(t.domain=s),i.noneOrAll(e.domain,t.domain,s),"sync"===t.tickmode&&(t.tickmode="auto")}return r("layer"),t}},89426:function(e,t,r){"use strict";var n=r(59652);e.exports=function(e,t,r,i,a){a||(a={});var o=a.tickSuffixDflt,s=n(e);r("tickprefix")&&r("showtickprefix",s),r("ticksuffix",o)&&r("showticksuffix",s)}},42449:function(e,t,r){"use strict";var n=r(18783).FROM_BL;e.exports=function(e,t,r){void 0===r&&(r=n[e.constraintoward||"center"]);var i=[e.r2l(e.range[0]),e.r2l(e.range[1])],a=i[0]+(i[1]-i[0])*r;e.range=e._input.range=[e.l2r(a+(i[0]-a)*t),e.l2r(a+(i[1]-a)*t)],e.setScale()}},21994:function(e,t,r){"use strict";var n=r(39898),i=r(84096).g0,a=r(71828),o=a.numberFormat,s=r(92770),l=a.cleanNumber,u=a.ms2DateTime,c=a.dateTime2ms,f=a.ensureNumber,d=a.isArrayOrTypedArray,h=r(50606),p=h.FP_SAFE,v=h.BADNUM,m=h.LOG_CLIP,g=h.ONEWEEK,y=h.ONEDAY,x=h.ONEHOUR,b=h.ONEMIN,_=h.ONESEC,w=r(41675),k=r(85555),T=k.HOUR_PATTERN,M=k.WEEKDAY_PATTERN;function A(e){return Math.pow(10,e)}function S(e){return null!==e&&void 0!==e}e.exports=function(e,t){t=t||{};var r=e._id||"x",h=r.charAt(0);function E(t,r){if(t>0)return Math.log(t)/Math.LN10;if(t<=0&&r&&e.range&&2===e.range.length){var n=e.range[0],i=e.range[1];return.5*(n+i-2*m*Math.abs(n-i))}return v}function C(t,r,n,i){if((i||{}).msUTC&&s(t))return+t;var o=c(t,n||e.calendar);if(o===v){if(!s(t))return v;t=+t;var l=Math.floor(10*a.mod(t+.05,1)),u=Math.round(t-l/10);o=c(new Date(u))+l/10}return o}function L(t,r,n){return u(t,r,n||e.calendar)}function P(t){return e._categories[Math.round(t)]}function O(t){if(S(t)){if(void 0===e._categoriesMap&&(e._categoriesMap={}),void 0!==e._categoriesMap[t])return e._categoriesMap[t];e._categories.push("number"===typeof t?String(t):t);var r=e._categories.length-1;return e._categoriesMap[t]=r,r}return v}function I(t){if(e._categoriesMap)return e._categoriesMap[t]}function D(e){var t=I(e);return void 0!==t?t:s(e)?+e:void 0}function R(e){return s(e)?+e:I(e)}function z(e,t,r){return n.round(r+t*e,2)}function F(e,t,r){return(e-r)/t}var N=function(t){return s(t)?z(t,e._m,e._b):v},B=function(t){return F(t,e._m,e._b)};if(e.rangebreaks){var j="y"===h;N=function(t){if(!s(t))return v;var r=e._rangebreaks.length;if(!r)return z(t,e._m,e._b);var n=j;e.range[0]>e.range[1]&&(n=!n);for(var i=n?-1:1,a=i*t,o=0,l=0;lc)){o=a<(u+c)/2?l:l+1;break}o=l+1}var f=e._B[o]||0;return isFinite(f)?z(t,e._m2,f):0},B=function(t){var r=e._rangebreaks.length;if(!r)return F(t,e._m,e._b);for(var n=0,i=0;ie._rangebreaks[i].pmax&&(n=i+1);return F(t,e._m2,e._B[n])}}e.c2l="log"===e.type?E:f,e.l2c="log"===e.type?A:f,e.l2p=N,e.p2l=B,e.c2p="log"===e.type?function(e,t){return N(E(e,t))}:N,e.p2c="log"===e.type?function(e){return A(B(e))}:B,-1!==["linear","-"].indexOf(e.type)?(e.d2r=e.r2d=e.d2c=e.r2c=e.d2l=e.r2l=l,e.c2d=e.c2r=e.l2d=e.l2r=f,e.d2p=e.r2p=function(t){return e.l2p(l(t))},e.p2d=e.p2r=B,e.cleanPos=f):"log"===e.type?(e.d2r=e.d2l=function(e,t){return E(l(e),t)},e.r2d=e.r2c=function(e){return A(l(e))},e.d2c=e.r2l=l,e.c2d=e.l2r=f,e.c2r=E,e.l2d=A,e.d2p=function(t,r){return e.l2p(e.d2r(t,r))},e.p2d=function(e){return A(B(e))},e.r2p=function(t){return e.l2p(l(t))},e.p2r=B,e.cleanPos=f):"date"===e.type?(e.d2r=e.r2d=a.identity,e.d2c=e.r2c=e.d2l=e.r2l=C,e.c2d=e.c2r=e.l2d=e.l2r=L,e.d2p=e.r2p=function(t,r,n){return e.l2p(C(t,0,n))},e.p2d=e.p2r=function(e,t,r){return L(B(e),t,r)},e.cleanPos=function(t){return a.cleanDate(t,v,e.calendar)}):"category"===e.type?(e.d2c=e.d2l=O,e.r2d=e.c2d=e.l2d=P,e.d2r=e.d2l_noadd=D,e.r2c=function(t){var r=R(t);return void 0!==r?r:e.fraction2r(.5)},e.l2r=e.c2r=f,e.r2l=R,e.d2p=function(t){return e.l2p(e.r2c(t))},e.p2d=function(e){return P(B(e))},e.r2p=e.d2p,e.p2r=B,e.cleanPos=function(e){return"string"===typeof e&&""!==e?e:f(e)}):"multicategory"===e.type&&(e.r2d=e.c2d=e.l2d=P,e.d2r=e.d2l_noadd=D,e.r2c=function(t){var r=D(t);return void 0!==r?r:e.fraction2r(.5)},e.r2c_just_indices=I,e.l2r=e.c2r=f,e.r2l=D,e.d2p=function(t){return e.l2p(e.r2c(t))},e.p2d=function(e){return P(B(e))},e.r2p=e.d2p,e.p2r=B,e.cleanPos=function(e){return Array.isArray(e)||"string"===typeof e&&""!==e?e:f(e)},e.setupMultiCategory=function(n){var i,o,s=e._traceIndices,l=e._matchGroup;if(l&&0===e._categories.length)for(var u in l)if(u!==r){var c=t[w.id2name(u)];s=s.concat(c._traceIndices)}var f=[[0,{}],[0,{}]],p=[];for(i=0;ip&&(o[n]=p),o[0]===o[1]){var u=Math.max(1,Math.abs(1e-6*o[0]));o[0]-=u,o[1]+=u}}else a.nestedProperty(e,t).set(i)},e.setScale=function(r){var n=t._size;if(e.overlaying){var i=w.getFromId({_fullLayout:t},e.overlaying);e.domain=i.domain}var a=r&&e._r?"_r":"range",o=e.calendar;e.cleanRange(a);var s,l,u=e.r2l(e[a][0],o),c=e.r2l(e[a][1],o),f="y"===h;if(f?(e._offset=n.t+(1-e.domain[1])*n.h,e._length=n.h*(e.domain[1]-e.domain[0]),e._m=e._length/(u-c),e._b=-e._m*c):(e._offset=n.l+e.domain[0]*n.w,e._length=n.w*(e.domain[1]-e.domain[0]),e._m=e._length/(c-u),e._b=-e._m*u),e._rangebreaks=[],e._lBreaks=0,e._m2=0,e._B=[],e.rangebreaks&&(e._rangebreaks=e.locateBreaks(Math.min(u,c),Math.max(u,c)),e._rangebreaks.length)){for(s=0;sc&&(d=!d),d&&e._rangebreaks.reverse();var p=d?-1:1;for(e._m2=p*e._length/(Math.abs(c-u)-e._lBreaks),e._B.push(-e._m2*(f?c:u)),s=0;si&&(i+=7,oi&&(i+=24,o=n&&o=n&&t=s.min&&(es.max&&(s.max=n),i=!1)}i&&u.push({min:e,max:n})}};for(n=0;nr.duration?(function(){for(var r={},n=0;n rect").call(o.setTranslate,0,0).call(o.setScale,1,1),e.plot.call(o.setTranslate,t._offset,r._offset).call(o.setScale,1,1);var n=e.plot.selectAll(".scatterlayer .trace");n.selectAll(".point").call(o.setPointGroupScale,1,1),n.selectAll(".textpoint").call(o.setTextPointsScale,1,1),n.call(o.hideOutsideRangePoints,e)}function m(t,r){var n=t.plotinfo,i=n.xaxis,l=n.yaxis,u=i._length,c=l._length,f=!!t.xr1,d=!!t.yr1,h=[];if(f){var p=a.simpleMap(t.xr0,i.r2l),v=a.simpleMap(t.xr1,i.r2l),m=p[1]-p[0],g=v[1]-v[0];h[0]=(p[0]*(1-r)+r*v[0]-p[0])/(p[1]-p[0])*u,h[2]=u*(1-r+r*g/m),i.range[0]=i.l2r(p[0]*(1-r)+r*v[0]),i.range[1]=i.l2r(p[1]*(1-r)+r*v[1])}else h[0]=0,h[2]=u;if(d){var y=a.simpleMap(t.yr0,l.r2l),x=a.simpleMap(t.yr1,l.r2l),b=y[1]-y[0],_=x[1]-x[0];h[1]=(y[1]*(1-r)+r*x[1]-y[1])/(y[0]-y[1])*c,h[3]=c*(1-r+r*_/b),l.range[0]=i.l2r(y[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(y[1]*(1-r)+r*x[1])}else h[1]=0,h[3]=c;s.drawOne(e,i,{skipTitle:!0}),s.drawOne(e,l,{skipTitle:!0}),s.redrawComponents(e,[i._id,l._id]);var w=f?u/h[2]:1,k=d?c/h[3]:1,T=f?h[0]:0,M=d?h[1]:0,A=f?h[0]/h[2]*u:0,S=d?h[1]/h[3]*c:0,E=i._offset-A,C=l._offset-S;n.clipRect.call(o.setTranslate,T,M).call(o.setScale,1/w,1/k),n.plot.call(o.setTranslate,E,C).call(o.setScale,w,k),o.setPointGroupScale(n.zoomScalePts,1/w,1/k),o.setTextPointsScale(n.zoomScaleTxt,1/w,1/k)}s.redrawComponents(e)}},951:function(e,t,r){"use strict";var n=r(73972).traceIs,i=r(4322);function a(e){return{v:"x",h:"y"}[e.orientation||"v"]}function o(e,t){var r=a(e),i=n(e,"box-violin"),o=n(e._fullInput||{},"candlestick");return i&&!o&&t===r&&void 0===e[r]&&void 0===e[r+"0"]}e.exports=function(e,t,r,s){r("autotypenumbers",s.autotypenumbersDflt),"-"===r("type",(s.splomStash||{}).type)&&(function(e,t){if("-"===e.type){var r,s=e._id,l=s.charAt(0);-1!==s.indexOf("scene")&&(s=l);var u=function(e,t,r){for(var n=0;n0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(o(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}(t,s,l);if(u)if("histogram"!==u.type||l!=={v:"y",h:"x"}[u.orientation||"v"]){var c=l+"calendar",f=u[c],d={noMultiCategory:!n(u,"cartesian")||n(u,"noMultiCategory")};if("box"===u.type&&u._hasPreCompStats&&l==={h:"x",v:"y"}[u.orientation||"v"]&&(d.noMultiCategory=!0),d.autotypenumbers=e.autotypenumbers,o(u,l)){var h=a(u),p=[];for(r=0;r0?".":"")+a;i.isPlainObject(o)?l(o,t,s,n+1):t(s,a,o)}}))}t.manageCommandObserver=function(e,r,n,o){var s={},l=!0;r&&r._commandObserver&&(s=r._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var u=t.hasSimpleAPICommandBindings(e,n,s.lookupTable);if(r&&r._commandObserver){if(u)return s;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,s}if(u){a(e,u,s.cache),s.check=function(){if(l){var t=a(e,u,s.cache);return t.changed&&o&&void 0!==s.lookupTable[t.value]&&(s.disable(),Promise.resolve(o({value:t.value,type:u.type,prop:u.prop,traces:u.traces,index:s.lookupTable[t.value]})).then(s.enable,s.enable)),t.changed}};for(var c=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],f=0;f0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}e.exports=function(e){return new A(e)},S.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in w.layerNameToAdjective)if("frame"!==l&&a["show"+l]){s=!0;break}for(var u=!1,c=0;c0&&o._module.calcGeoJSON(a,t)}if(!r){if(this.updateProjection(e,t))return;this.viewInitial&&this.scope===n.scope||this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),p.generalUpdatePerTraceModule(this.graphDiv,this,e,n);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(e,t){var r=this.graphDiv,n=t[this.id],l=t._size,c=n.domain,f=n.projection,d=n.lonaxis,h=n.lataxis,p=d._ax,v=h._ax,g=this.projection=function(e){var t=e.projection,r=t.type,n=w.projNames[r];n="geo"+u.titleCase(n);for(var l=(i[n]||s[n])(),c=e._isSatellite?180*Math.acos(1/t.distance)/Math.PI:e._isClipped?w.lonaxisSpan[r]/2:null,f=["center","rotate","parallels","clipExtent"],d=function(e){return e?l:[]},h=0;hc*Math.PI/180}return!1},l.getPath=function(){return a().projection(l)},l.getBounds=function(e){return l.getPath().bounds(e)},l.precision(w.precision),e._isSatellite&&l.tilt(t.tilt).distance(t.distance),c&&l.clipAngle(c-w.clipPad),l}(n),y=[[l.l+l.w*c.x[0],l.t+l.h*(1-c.y[1])],[l.l+l.w*c.x[1],l.t+l.h*(1-c.y[0])]],x=n.center||{},b=f.rotation||{},_=d.range||[],k=h.range||[];if(n.fitbounds){p._length=y[1][0]-y[0][0],v._length=y[1][1]-y[0][1],p.range=m(r,p),v.range=m(r,v);var T=(p.range[0]+p.range[1])/2,M=(v.range[0]+v.range[1])/2;if(n._isScoped)x={lon:T,lat:M};else if(n._isClipped){x={lon:T,lat:M},b={lon:T,lat:M,roll:b.roll};var A=f.type,S=w.lonaxisSpan[A]/2||180,C=w.lataxisSpan[A]/2||90;_=[T-S,T+S],k=[M-C,M+C]}else x={lon:T,lat:M},b={lon:T,lat:b.lat,roll:b.roll}}g.center([x.lon-b.lon,x.lat-b.lat]).rotate([-b.lon,-b.lat,b.roll]).parallels(f.parallels);var L=E(_,k);g.fitExtent(y,L);var P=this.bounds=g.getBounds(L),O=this.fitScale=g.scale(),I=g.translate();if(n.fitbounds){var D=g.getBounds(E(p.range,v.range)),R=Math.min((P[1][0]-P[0][0])/(D[1][0]-D[0][0]),(P[1][1]-P[0][1])/(D[1][1]-D[0][1]));isFinite(R)?g.scale(R*O):u.warn("Something went wrong during"+this.id+"fitbounds computations.")}else g.scale(f.scale*O);var z=this.midPt=[(P[0][0]+P[1][0])/2,(P[0][1]+P[1][1])/2];if(g.translate([I[0]+(z[0]-I[0]),I[1]+(z[1]-I[1])]).clipExtent(P),n._isAlbersUsa){var F=g([x.lon,x.lat]),N=g.translate();g.translate([N[0]-(F[0]-N[0]),N[1]-(F[1]-N[1])])}},S.updateBaseLayers=function(e,t){var r=this,i=r.topojson,a=r.layers,o=r.basePaths;function s(e){return"lonaxis"===e||"lataxis"===e}function l(e){return Boolean(w.lineLayers[e])}function u(e){return Boolean(w.fillLayers[e])}var c=(this.hasChoropleth?w.layersForChoropleth:w.layers).filter((function(e){return l(e)||u(e)?t["show"+e]:!s(e)||t[e].showgrid})),h=r.framework.selectAll(".layer").data(c,String);h.exit().each((function(e){delete a[e],delete o[e],n.select(this).remove()})),h.enter().append("g").attr("class",(function(e){return"layer "+e})).each((function(e){var t=a[e]=n.select(this);"bg"===e?r.bgRect=t.append("rect").style("pointer-events","all"):s(e)?o[e]=t.append("path").style("fill","none"):"backplot"===e?t.append("g").classed("choroplethlayer",!0):"frontplot"===e?t.append("g").classed("scatterlayer",!0):l(e)?o[e]=t.append("path").style("fill","none").style("stroke-miterlimit",2):u(e)&&(o[e]=t.append("path").style("stroke","none"))})),h.order(),h.each((function(r){var n=o[r],a=w.layerNameToAdjective[r];"frame"===r?n.datum(w.sphereSVG):l(r)||u(r)?n.datum(M(i,i.objects[r])):s(r)&&n.datum(function(e,t,r){var n,i,a,o=1e-6,s=2.5,l=t[e],u=w.scopeDefaults[t.scope];"lonaxis"===e?(n=u.lonaxisRange,i=u.lataxisRange,a=function(e,t){return[e,t]}):"lataxis"===e&&(n=u.lataxisRange,i=u.lonaxisRange,a=function(e,t){return[t,e]});var c={type:"linear",range:[n[0],n[1]-o],tick0:l.tick0,dtick:l.dtick};v.setConvert(c,r);var f=v.calcTicks(c);t.isScoped||"lonaxis"!==e||f.pop();for(var d=f.length,h=new Array(d),p=0;p-1&&b(n.event,i,[r.xaxis],[r.yaxis],r.id,c),s.indexOf("event")>-1&&h.click(i,n.event))}))}function f(e){return r.projection.invert([e[0]+r.xaxis._offset,e[1]+r.yaxis._offset])}},S.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,i="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",i),e.clipRect=e.clipDef.append("rect"),e.framework=n.select(e.container).append("g").attr("class","geo "+e.id).call(d.setClipUrl,i,t),e.project=function(t){var r=e.projection(t);return r?[r[0]-e.xaxis._offset,r[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(t){return e.project(t)[0]}},e.yaxis={_id:"y",c2p:function(t){return e.project(t)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},v.setConvert(e.mockAxis,r)},S.saveViewInitial=function(e){var t,r=e.center||{},n=e.projection,i=n.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":n.scale},t=e._isScoped?{"center.lon":r.lon,"center.lat":r.lat}:e._isClipped?{"projection.rotation.lon":i.lon,"projection.rotation.lat":i.lat}:{"center.lon":r.lon,"center.lat":r.lat,"projection.rotation.lon":i.lon},u.extendFlat(this.viewInitial,t)},S.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},S._render=function(){var e,t=this.projection,r=t.getPath();function n(e){var r=t(e.lonlat);return r?c(r[0],r[1]):null}function i(e){return t.isLonLatOverEdges(e.lonlat)?"none":null}for(e in this.basePaths)this.basePaths[e].attr("d",r);for(e in this.dataPaths)this.dataPaths[e].attr("d",(function(e){return r(e.geojson)}));for(e in this.dataPoints)this.dataPoints[e].attr("display",i).attr("transform",n)}},44622:function(e,t,r){"use strict";var n=r(27659).AU,i=r(71828).counterRegex,a=r(69082),o="geo",s=i(o),l={};l[o]={valType:"subplotid",dflt:o,editType:"calc"},e.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:r(77519),supplyLayoutDefaults:r(82161),plot:function(e){for(var t=e._fullLayout,r=e.calcdata,i=t._subplots[o],s=0;s0&&P<0&&(P+=360);var O,I,D,R=(L+P)/2;if(!h){var z=p?f.projRotate:[R,0,0];O=r("projection.rotation.lon",z[0]),r("projection.rotation.lat",z[1]),r("projection.rotation.roll",z[2]),r("showcoastlines",!p&&x)&&(r("coastlinecolor"),r("coastlinewidth")),r("showocean",!!x&&void 0)&&r("oceancolor")}h?(I=-96.6,D=38.7):(I=p?R:O,D=(C[0]+C[1])/2),r("center.lon",I),r("center.lat",D),v&&(r("projection.tilt"),r("projection.distance")),m&&r("projection.parallels",f.projParallels||[0,60]),r("projection.scale"),r("showland",!!x&&void 0)&&r("landcolor"),r("showlakes",!!x&&void 0)&&r("lakecolor"),r("showrivers",!!x&&void 0)&&(r("rivercolor"),r("riverwidth")),r("showcountries",p&&"usa"!==c&&x)&&(r("countrycolor"),r("countrywidth")),("usa"===c||"north america"===c&&50===u)&&(r("showsubunits",x),r("subunitcolor"),r("subunitwidth")),p||r("showframe",x)&&(r("framecolor"),r("framewidth")),r("bgcolor"),r("fitbounds")&&(delete t.projection.scale,p?(delete t.center.lon,delete t.center.lat):g?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}e.exports=function(e,t,r){i(e,t,r,{type:"geo",attributes:s,handleDefaults:u,fullData:r,partition:"y"})}},74455:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(73972),o=Math.PI/180,s=180/Math.PI,l={cursor:"pointer"},u={cursor:"auto"};function c(e,t){return n.behavior.zoom().translate(t.translate()).scale(t.scale())}function f(e,t,r){var n=e.id,o=e.graphDiv,s=o.layout,l=s[n],u=o._fullLayout,c=u[n],f={},d={};function h(e,t){f[n+"."+e]=i.nestedProperty(l,e).get(),a.call("_storeDirectGUIEdit",s,u._preGUI,f);var r=i.nestedProperty(c,e);r.get()!==t&&(r.set(t),i.nestedProperty(l,e).set(t),d[n+"."+e]=t)}r(h),h("projection.scale",t.scale()/e.fitScale),h("fitbounds",!1),o.emit("plotly_relayout",d)}function d(e,t){var r=c(0,t);function i(r){var n=t.invert(e.midPt);r("center.lon",n[0]),r("center.lat",n[1])}return r.on("zoomstart",(function(){n.select(this).style(l)})).on("zoom",(function(){t.scale(n.event.scale).translate(n.event.translate),e.render(!0);var r=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":r[0],"geo.center.lat":r[1]})})).on("zoomend",(function(){n.select(this).style(u),f(e,t,i)})),r}function h(e,t){var r,i,a,o,s,d,h,p,v,m=c(0,t),g=2;function y(e){return t.invert(e)}function x(r){var n=t.rotate(),i=t.invert(e.midPt);r("projection.rotation.lon",-n[0]),r("center.lon",i[0]),r("center.lat",i[1])}return m.on("zoomstart",(function(){n.select(this).style(l),r=n.mouse(this),i=t.rotate(),a=t.translate(),o=i,s=y(r)})).on("zoom",(function(){if(d=n.mouse(this),function(e){var r=y(e);if(!r)return!0;var n=t(r);return Math.abs(n[0]-e[0])>g||Math.abs(n[1]-e[1])>g}(r))return m.scale(t.scale()),void m.translate(t.translate());t.scale(n.event.scale),t.translate([a[0],n.event.translate[1]]),s?y(d)&&(p=y(d),h=[o[0]+(p[0]-s[0]),i[1],i[2]],t.rotate(h),o=h):s=y(r=d),v=!0,e.render(!0);var l=t.rotate(),u=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":u[0],"geo.center.lat":u[1],"geo.projection.rotation.lon":-l[0]})})).on("zoomend",(function(){n.select(this).style(u),v&&f(e,t,x)})),m}function p(e,t){var r,i={r:t.rotate(),k:t.scale()},a=c(0,t),d=function(e){for(var t=0,r=arguments.length,i=[];++tp?(a=(f>0?90:-90)-h,i=0):(a=Math.asin(f/p)*s-h,i=Math.sqrt(p*p-f*f));var v=180-a-2*h,g=(Math.atan2(d,c)-Math.atan2(u,i))*s,x=(Math.atan2(d,c)-Math.atan2(u,-i))*s,b=m(r[0],r[1],a,g),_=m(r[0],r[1],v,x);return b<=_?[a,g,r[2]]:[v,x,r[2]]}(l,r,f);isFinite(h[0])&&isFinite(h[1])&&isFinite(h[2])||(h=f),t.rotate(h),f=h}}else r=v(t,u=e);d.of(this,arguments)({type:"zoom"})})),e=d.of(this,arguments),h++||e({type:"zoomstart"})})).on("zoomend",(function(){var r;n.select(this).style(u),p.call(a,"zoom",null),r=d.of(this,arguments),--h||r({type:"zoomend"}),f(e,t,g)})).on("zoom.redraw",(function(){e.render(!0);var r=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-r[0],"geo.projection.rotation.lat":-r[1]})})),n.rebind(a,d,"on")}function v(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&function(e){var t=e[0]*o,r=e[1]*o,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}(r)}function m(e,t,r,n){var i=g(r-e),a=g(n-t);return Math.sqrt(i*i+a*a)}function g(e){return(e%360+540)%360-180}function y(e,t,r){var n=r*o,i=e.slice(),a=0===t?1:0,s=2===t?1:2,l=Math.cos(n),u=Math.sin(n);return i[a]=e[a]*l-e[s]*u,i[s]=e[s]*l+e[a]*u,i}function x(e,t){for(var r=0,n=0,i=e.length;nMath.abs(s)?(u.boxEnd[1]=u.boxStart[1]+Math.abs(a)*_*(s>=0?1:-1),u.boxEnd[1]l[3]&&(u.boxEnd[1]=l[3],u.boxEnd[0]=u.boxStart[0]+(l[3]-u.boxStart[1])/Math.abs(_))):(u.boxEnd[0]=u.boxStart[0]+Math.abs(s)/_*(a>=0?1:-1),u.boxEnd[0]l[2]&&(u.boxEnd[0]=l[2],u.boxEnd[1]=u.boxStart[1]+(l[2]-u.boxStart[0])*Math.abs(_)))}}else u.boxEnabled?(a=u.boxStart[0]!==u.boxEnd[0],s=u.boxStart[1]!==u.boxEnd[1],a||s?(a&&(m(0,u.boxStart[0],u.boxEnd[0]),e.xaxis.autorange=!1),s&&(m(1,u.boxStart[1],u.boxEnd[1]),e.yaxis.autorange=!1),e.relayoutCallback()):e.glplot.setDirty(),u.boxEnabled=!1,u.boxInited=!1):u.boxInited&&(u.boxInited=!1);break;case"pan":u.boxEnabled=!1,u.boxInited=!1,t?(u.panning||(u.dragStart[0]=n,u.dragStart[1]=i),Math.abs(u.dragStart[0]-n).999&&(m="turntable"):m="turntable")}else m="turntable";r("dragmode",m),r("hovermode",n.getDfltFromLayout("hovermode"))}e.exports=function(e,t,r){var i=t._basePlotModules.length>1;o(e,t,r,{type:c,attributes:l,handleDefaults:f,fullLayout:t,font:t.font,fullData:r,getDfltFromLayout:function(t){if(!i)return n.validate(e[t],l[t])?e[t]:void 0},autotypenumbersDflt:t.autotypenumbers,paper_bgcolor:t.paper_bgcolor,calendar:t.calendar})}},65500:function(e,t,r){"use strict";var n=r(77894),i=r(27670).Y,a=r(1426).extendFlat,o=r(71828).counterRegex;function s(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}e.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:n,yaxis:n,zaxis:n,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(e,t,r){"use strict";var n=r(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(e){for(var t=0;t<3;++t){var r=e[i[t]];r.visible?(this.enabled[t]=r.showspikes,this.colors[t]=n(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness):(this.enabled[t]=!1,this.drawSides[t]=!1)}},e.exports=function(e){var t=new a;return t.merge(e),t}},96085:function(e,t,r){"use strict";e.exports=function(e){for(var t=e.axesOptions,r=e.glplot.axesPixels,s=e.fullSceneLayout,l=[[],[],[]],u=0;u<3;++u){var c=s[a[u]];if(c._length=(r[u].hi-r[u].lo)*r[u].pixelsPerDataUnit/e.dataScale[u],Math.abs(c._length)===1/0||isNaN(c._length))l[u]=[];else{c._input_range=c.range.slice(),c.range[0]=r[u].lo/e.dataScale[u],c.range[1]=r[u].hi/e.dataScale[u],c._m=1/(e.dataScale[u]*r[u].pixelsPerDataUnit),c.range[0]===c.range[1]&&(c.range[0]-=1,c.range[1]+=1);var f=c.tickmode;if("auto"===c.tickmode){c.tickmode="linear";var d=c.nticks||i.constrain(c._length/40,4,9);n.autoTicks(c,Math.abs(c.range[1]-c.range[0])/d)}for(var h=n.calcTicks(c,{msUTC:!0}),p=0;p/g," "));l[u]=h,c.tickmode=f}}for(t.ticks=l,u=0;u<3;++u)for(o[u]=.5*(e.glplot.bounds[0][u]+e.glplot.bounds[1][u]),p=0;p<2;++p)t.bounds[p][u]=e.glplot.bounds[p][u];e.contourLevels=function(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;ar.deltaY?1.1:1/1.1,a=e.glplot.getAspectratio();e.glplot.setAspectratio({x:n*a.x,y:n*a.y,z:n*a.z})}i(e)}}),!!u&&{passive:!1}),e.glplot.canvas.addEventListener("mousemove",(function(){if(!1!==e.fullSceneLayout.dragmode&&0!==e.camera.mouseListener.buttons){var t=n();e.graphDiv.emit("plotly_relayouting",t)}})),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",(function(r){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:r,layer:e.id})}),!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0},k.render=function(){var e,t=this,r=t.graphDiv,n=t.svgContainer,i=t.container.getBoundingClientRect();r._fullLayout._calcInverseTransform(r);var a=r._fullLayout._invScaleX,o=r._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),b(t),t.glplot.axes.update(t.axesOptions);for(var u=Object.keys(t.traces),c=null,d=t.glplot.selection,v=0;v")):"isosurface"===e.type||"volume"===e.type?(T.valueLabel=h.hoverLabelText(t._mockAxis,t._mockAxis.d2l(d.traceCoordinate[3]),e.valuehoverformat),E.push("value: "+T.valueLabel),d.textLabel&&E.push(d.textLabel),x=E.join("
")):x=d.textLabel;var C={x:d.traceCoordinate[0],y:d.traceCoordinate[1],z:d.traceCoordinate[2],data:w._input,fullData:w,curveNumber:w.index,pointNumber:k};p.appendArrayPointValue(C,w,k),e._module.eventData&&(C=w._module.eventData(C,d,w,{},k));var L={points:[C]};if(t.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:T.xLabel,yLabel:T.yLabel,zLabel:T.zLabel,text:x,name:c.name,color:p.castHoverOption(w,k,"bgcolor")||c.color,borderColor:p.castHoverOption(w,k,"bordercolor"),fontFamily:p.castHoverOption(w,k,"font.family"),fontSize:p.castHoverOption(w,k,"font.size"),fontColor:p.castHoverOption(w,k,"font.color"),nameLength:p.castHoverOption(w,k,"namelength"),textAlign:p.castHoverOption(w,k,"align"),hovertemplate:f.castOption(w,k,"hovertemplate"),hovertemplateLabels:f.extendFlat({},C,T),eventData:[C]},{container:n,gd:r,inOut_bbox:P}),C.bbox=P[0]}d.distance<5&&(d.buttons||_)?r.emit("plotly_click",L):r.emit("plotly_hover",L),this.oldEventData=L}else p.loneUnhover(n),this.oldEventData&&r.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;t.drawAnnotations(t)},k.recoverContext=function(){var e=this;e.glplot.dispose(),requestAnimationFrame((function t(){e.glplot.gl.isContextLost()?requestAnimationFrame(t):e.initializeGLPlot()?e.plot.apply(e,e.plotArgs):f.error("Catastrophic and unrecoverable WebGL error. Context lost.")}))};var M=["xaxis","yaxis","zaxis"];function A(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=M[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(f.isArrayOrTypedArray(l))for(var d,h=0;h<(c||l.length);h++)if(f.isArrayOrTypedArray(l[h]))for(var p=0;pg[1][o])g[0][o]=-1,g[1][o]=1;else{var L=g[1][o]-g[0][o];g[0][o]-=L/32,g[1][o]+=L/32}if("reversed"===l.autorange){var P=g[0][o];g[0][o]=g[1][o],g[1][o]=P}}else{var O=l.range;g[0][o]=l.r2l(O[0]),g[1][o]=l.r2l(O[1])}g[0][o]===g[1][o]&&(g[0][o]-=1,g[1][o]+=1),y[o]=g[1][o]-g[0][o],n.glplot.setBounds(o,{min:g[0][o]*h[o],max:g[1][o]*h[o]})}var I=c.aspectmode;if("cube"===I)m=[1,1,1];else if("manual"===I){var D=c.aspectratio;m=[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=x[u=(l=c[M[o]]).type];R[o]=Math.pow(z.acc,1/z.count)/h[o]}m="data"===I||Math.max.apply(null,R)/Math.min.apply(null,R)<=4?R:[1,1,1]}c.aspectratio.x=f.aspectratio.x=m[0],c.aspectratio.y=f.aspectratio.y=m[1],c.aspectratio.z=f.aspectratio.z=m[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var F=c.domain||null,N=t._size||null;if(F&&N){var B=n.container.style;B.position="absolute",B.left=N.l+F.x[0]*N.w+"px",B.top=N.t+(1-F.y[1])*N.h+"px",B.width=N.w*(F.x[1]-F.x[0])+"px",B.height=N.h*(F.y[1]-F.y[0])+"px"}n.glplot.redraw()}},k.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)},k.getCamera=function(){var e,t=this;return t.camera.view.recalcMatrix(t.camera.view.lastT()),{up:{x:(e=t.camera).up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:!0===e._ortho?"orthographic":"perspective"}}},k.setViewport=function(e){var t,r=this,n=e.camera;r.camera.lookAt.apply(this,[[(t=n).eye.x,t.eye.y,t.eye.z],[t.center.x,t.center.y,t.center.z],[t.up.x,t.up.y,t.up.z]]),r.glplot.setAspectratio(e.aspectratio),"orthographic"===n.projection.type!==r.camera._ortho&&(r.glplot.redraw(),r.glplot.clearRGBA(),r.glplot.dispose(),r.initializeGLPlot())},k.isCameraChanged=function(e){var t=this.getCamera(),r=f.nestedProperty(e,this.id+".camera").get();function n(e,t,r,n){var i=["up","center","eye"],a=["x","y","z"];return t[i[r]]&&e[i[r]][a[n]]===t[i[r]][a[n]]}var i=!1;if(void 0===r)i=!0;else{for(var a=0;a<3;a++)for(var o=0;o<3;o++)if(!n(t,r,a,o)){i=!0;break}(!r.projection||t.projection&&t.projection.type!==r.projection.type)&&(i=!0)}return i},k.isAspectChanged=function(e){var t=this.glplot.getAspectratio(),r=f.nestedProperty(e,this.id+".aspectratio").get();return void 0===r||r.x!==t.x||r.y!==t.y||r.z!==t.z},k.saveLayout=function(e){var t,r,n,i,a,o,s=this,l=s.fullLayout,u=s.isCameraChanged(e),d=s.isAspectChanged(e),h=u||d;if(h){var p={};u&&(t=s.getCamera(),n=(r=f.nestedProperty(e,s.id+".camera")).get(),p[s.id+".camera"]=n),d&&(i=s.glplot.getAspectratio(),o=(a=f.nestedProperty(e,s.id+".aspectratio")).get(),p[s.id+".aspectratio"]=o),c.call("_storeDirectGUIEdit",e,l._preGUI,p),u&&(r.set(t),f.nestedProperty(l,s.id+".camera").set(t)),d&&(a.set(i),f.nestedProperty(l,s.id+".aspectratio").set(i),s.glplot.redraw())}return h},k.updateFx=function(e,t){var r=this,n=r.camera;if(n)if("orbit"===e)n.mode="orbit",n.keyBindingMode="rotate";else if("turntable"===e){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var d=r.id+".camera.up",h={x:0,y:0,z:1},p={};p[d]=h;var v=i.layout;c.call("_storeDirectGUIEdit",v,a._preGUI,p),o.up=h,f.nestedProperty(v,d).set(h)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t},k.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(n),t.glplot.redraw();var r=t.glplot.gl,i=r.drawingBufferWidth,a=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var o=new Uint8Array(i*a*4);r.readPixels(0,0,i,a,r.RGBA,r.UNSIGNED_BYTE,o),function(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,l=0;l<3;++l)e[a+l]=Math.min(s*e[a+l],255)}}(o,i,a);var s=document.createElement("canvas");s.width=i,s.height=a;var l,u=s.getContext("2d",{willReadFrequently:!0}),c=u.createImageData(i,a);switch(c.data.set(o),u.putImageData(c,0,0),e){case"jpeg":l=s.toDataURL("image/jpeg");break;case"webp":l=s.toDataURL("image/webp");break;default:l=s.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(n),l},k.setConvert=function(){for(var e=0;e<3;e++){var t=this.fullSceneLayout[M[e]];h.setConvert(t,this.fullLayout),t.setScale=f.noop}},k.make4thDimension=function(){var e=this,t=e.graphDiv._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},h.setConvert(e._mockAxis,t)},e.exports=w},90060:function(e){"use strict";e.exports=function(e,t,r,n){n=n||e.length;for(var i=new Array(n),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}]}},u=n(l);e.exports={requiredVersion:i,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:l,styleValuesNonMapbox:u,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:",u.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(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){var r=e.split(" "),i=r[0],a=r[1],o=n.isArrayOrTypedArray(t)?n.mean(t):t,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s}return{anchor:u[0]&&u[1]?u.join("-"):u[0]?u[0]:u[1]?u[1]:"center",offset:c}}},50101:function(e,t,r){"use strict";var n=r(44517),i=r(71828),a=i.strTranslate,o=i.strScale,s=r(27659).AU,l=r(77922),u=r(39898),c=r(91424),f=r(63893),d=r(10481),h="mapbox",p=t.constants=r(77734);function v(e){return"string"===typeof e&&(-1!==p.styleValuesMapbox.indexOf(e)||0===e.indexOf("mapbox://"))}t.name=h,t.attr="subplot",t.idRoot=h,t.idRegex=t.attrRegex=i.counterRegex(h),t.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},t.layoutAttributes=r(23585),t.supplyLayoutDefaults=r(77882),t.plot=function(e){var t=e._fullLayout,r=e.calcdata,a=t._subplots[h];if(n.version!==p.requiredVersion)throw new Error(p.wrongVersionErrorMsg);var o=function(e,t){var r=e._fullLayout,n=e._context;if(""===n.mapboxAccessToken)return"";for(var a=[],o=[],s=!1,l=!1,u=0;u1&&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(" ")),"")}(e,a);n.accessToken=o;for(var l=0;lw/2){var k=y.split("|").join("
");b.text(k).attr("data-unformatted",k).call(f.convertToTspans,e),_=c.bBox(b.node())}b.attr("transform",a(-3,8-_.height)),x.insert("rect",".static-attribution").attr({x:-_.width-6,y:-_.height-3,width:_.width+6,height:_.height+3,fill:"rgba(255, 255, 255, 0.75)"});var T=1;_.width+6>w&&(T=w/(_.width+6));var M=[n.l+n.w*d.x[1],n.t+n.h*(1-d.y[0])];x.attr("transform",a(M[0],M[1])+o(T))}},t.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[h],n=0;n0){for(var r=0;r0}function c(e){var t={},r={};switch(e.type){case"circle":n.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":n.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":n.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var i=e.symbol,o=a(i.textposition,i.iconsize);n.extendFlat(t,{"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}),n.extendFlat(r,{"icon-color":e.color,"text-color":i.textfont.color,"text-opacity":e.opacity});break;case"raster":n.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity})}return{layout:t,paint:r}}l.update=function(e){this.visible?this.needsNewImage(e)?this.updateImage(e):this.needsNewSource(e)?(this.removeLayer(),this.updateSource(e),this.updateLayer(e)):this.needsNewLayer(e)?this.updateLayer(e):this.updateStyle(e):(this.updateSource(e),this.updateLayer(e)),this.visible=u(e)},l.needsNewImage=function(e){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===e.sourcetype&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))},l.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type},l.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},l.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},l.updateImage=function(e){this.subplot.map.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var t=this.findFollowingMapboxLayerId(this.lookupBelow());null!==t&&this.subplot.map.moveLayer(this.idLayer,t)},l.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,u(e)){var r=function(e){var t,r=e.sourcetype,n=e.source,a={type:r};return"geojson"===r?t="data":"vector"===r?t="string"===typeof n?"url":"tiles":"raster"===r?(t="tiles",a.tileSize=256):"image"===r&&(t="url",a.coordinates=e.coordinates),a[t]=n,e.sourceattribution&&(a.attribution=i(e.sourceattribution)),a}(e);t.addSource(this.idSource,r)}},l.findFollowingMapboxLayerId=function(e){if("traces"===e)for(var t=this.subplot.getMapLayers(),r=0;r1)for(r=0;r-1&&m(t.originalEvent,n,[r.xaxis],[r.yaxis],r.id,e),i.indexOf("event")>-1&&u.click(n,t.originalEvent)}}},b.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(!t.isStatic){var a,o=e.dragmode;a=function(e,r){r.isRect?(e.range={})[t.id]=[u([r.xmin,r.ymin]),u([r.xmax,r.ymax])]:(e.lassoPoints={})[t.id]=r.map(u)};var s=t.dragOptions;t.dragOptions=i.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:a},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),d(o)||f(o)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(e,r,n){h(e,r,n,t.dragOptions,o)},l.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))}function u(e){var r=t.map.unproject(e);return[r.lng,r.lat]}},b.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])},b.updateLayers=function(e){var t,r=e[this.id].layers,n=this.layerList;if(r.length!==n.length){for(t=0;t=t.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=t._paper.attr("width")-7),r.attr(a);var o=r.select(".js-link-to-tool"),s=r.select(".js-link-spacer"),l=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&function(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" "+String.fromCharCode(187));if(e._context.sendData)r.on("click",(function(){_.sendDataToCloud(e)}));else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}(e,o),s.text(o.text()&&l.text()?" - ":"")}},_.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=n.select(e).append("div").attr("id","hiddenform").style("display","none"),i=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"});return i.append("input").attr({type:"text",name:"data"}).node().value=_.graphJson(e,!1,"keepdata"),i.node().submit(),r.remove(),e.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(e,t){var r=e._context.locale;r||(r="en-US");var n=!1,i={};function a(e){for(var r=!0,a=0;a1&&D.length>1){for(s.getComponentMethod("grid","sizeDefaults")(u,l),o=0;o15&&D.length>15&&0===l.shapes.length&&0===l.images.length,_.linkSubplots(d,l,f,n),_.cleanPlot(d,l,f,n);var B=!(!n._has||!n._has("gl2d")),j=!(!l._has||!l._has("gl2d")),U=!(!n._has||!n._has("cartesian"))||B,V=!(!l._has||!l._has("cartesian"))||j;U&&!V?n._bgLayer.remove():V&&!U&&(l._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&p({_fullLayout:n}),function(e,t){var r,n=[];t.meta&&(r=t._meta={meta:t.meta,layout:{meta:t.meta}});for(var i=0;i0){var f=1-2*s;n=Math.round(f*n),i=Math.round(f*i)}}var d=_.layoutAttributes.width.min,h=_.layoutAttributes.height.min;n1,v=!t.height&&Math.abs(r.height-i)>1;(v||p)&&(p&&(r.width=n),v&&(r.height=i)),e._initialAutoSize||(e._initialAutoSize={width:n,height:i}),_.sanitizeMargins(r)},_.supplyLayoutModuleDefaults=function(e,t,r,n){var i,a,o,l=s.componentsRegistry,u=t._basePlotModules,f=s.subplotsRegistry.cartesian;for(i in l)(o=l[i]).includeBasePlot&&o.includeBasePlot(e,t);for(var d in u.length||u.push(f),t._has("cartesian")&&(s.getComponentMethod("grid","contentDefaults")(e,t),f.finalizeSubplots(e,t)),t._subplots)t._subplots[d].sort(c.subplotSort);for(a=0;a1&&(r.l/=g,r.r/=g)}if(h){var y=(r.t+r.b)/h;y>1&&(r.t/=y,r.b/=y)}var x=void 0!==r.xl?r.xl:r.x,b=void 0!==r.xr?r.xr:r.x,w=void 0!==r.yt?r.yt:r.y,k=void 0!==r.yb?r.yb:r.y;p[t]={l:{val:x,size:r.l+m},r:{val:b,size:r.r+m},b:{val:k,size:r.b+m},t:{val:w,size:r.t+m}},v[t]=1}else delete p[t],delete v[t];if(!n._replotting)return _.doAutoMargin(e)}},_.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),P(t);var i=t._size,a=t.margin,l={t:0,b:0,l:0,r:0},u=c.extendFlat({},i),f=e._fullLayout._reservedMargin;for(var d in f)for(var p in f[d]){var v=f[d][p];l[p]=Math.max(l[p],v)}var m=a.l,g=a.r,y=a.t,x=a.b,b=t._pushmargin,w=t._pushmarginIds,k=t.minreducedwidth,T=t.minreducedheight;if(!1!==t.margin.autoexpand){for(var M in b)w[M]||delete b[M];for(var A in b.base={l:{val:0,size:m},r:{val:1,size:g},t:{val:1,size:y},b:{val:0,size:x}},b){var S=b[A].l||{},E=b[A].b||{},C=S.val,L=S.size,O=E.val,I=E.size,D=r-l.r-l.l,R=n-l.t-l.b;for(var z in b){if(o(L)&&b[z].r){var F=b[z].r.val,N=b[z].r.size;if(F>C){var B=(L*F+(N-D)*C)/(F-C),j=(N*(1-C)+(L-D)*(1-F))/(F-C);B+j>m+g&&(m=B,g=j)}}if(o(I)&&b[z].t){var U=b[z].t.val,V=b[z].t.size;if(U>O){var H=(I*U+(V-R)*O)/(U-O),q=(V*(1-O)+(I-R)*(1-U))/(U-O);H+q>x+y&&(x=H,y=q)}}}}}var W=c.constrain(r-a.l-a.r,2,k),G=c.constrain(n-a.t-a.b,2,T),Y=Math.max(0,r-W),Z=Math.max(0,n-G);if(Y){var X=(m+g)/Y;X>1&&(m/=X,g/=X)}if(Z){var K=(x+y)/Z;K>1&&(x/=K,y/=K)}if(i.l=Math.round(m)+l.l,i.r=Math.round(g)+l.r,i.t=Math.round(y)+l.t,i.b=Math.round(x)+l.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(_.didMarginChange(u,i)||function(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=h.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var $=3*(1+Object.keys(w).length);if(t._redrawFromAutoMarginCount<$)return s.call("_doPlot",e);t._size=u,c.warn("Too many auto-margin redraws.")}!function(e){var t=h.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach((function(e){for(var r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&e._transitionData._interruptCallbacks.push((function(){return s.call("redraw",e)})),e._transitionData._interruptCallbacks.push((function(){e.emit("plotly_transitioninterrupted",[])}));var a=0,o=0;function l(){return a++,function(){var t;o++,n||o!==a||(t=i,e._transitionData&&(function(e){if(e)for(;e.length;)e.shift()}(e._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return s.call("redraw",e)})).then((function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])})).then(t)))}}r.runFn(l),setTimeout(l())}))}],a=c.syncOrAsync(i,e);return a&&a.then||(a=Promise.resolve()),a.then((function(){return e}))}_.didMarginChange=function(e,t){for(var r=0;r1)return!0}return!1},_.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&_.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(e,t){if("function"===typeof e)return t?"_function_":null;if(c.isPlainObject(e)){var n,i={};return Object.keys(e).sort().forEach((function(a){if(-1===["_","["].indexOf(a.charAt(0)))if("function"!==typeof e[a]){if("keepdata"===r){if("src"===a.substr(a.length-3))return}else if("keepstream"===r){if("string"===typeof(n=e[a+"src"])&&n.indexOf(":")>0&&!c.isPlainObject(e.stream))return}else if("keepall"!==r&&"string"===typeof(n=e[a+"src"])&&n.indexOf(":")>0)return;i[a]=u(e[a],t)}else t&&(i[a]="_function")})),i}return Array.isArray(e)?e.map((function(e){return u(e,t)})):c.isTypedArray(e)?c.simpleMap(e,c.identity):c.isJSDate(e)?c.ms2DateTimeLocal(+e):e}var f={data:(o||[]).map((function(e){var r=u(e);return t&&delete r.fit,r}))};if(!t&&(f.layout=u(s),i)){var d=s._size;f.layout.computed={margin:{b:d.b,l:d.l,r:d.r,t:d.t}}}return l&&(f.frames=u(l)),a&&(f.config=u(e._context,!0)),"object"===n?f:JSON.stringify(f)},_.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r=0;a--)if(s[a].enabled){r._indexToPoints=s[a]._indexToPoints;break}n&&n.calc&&(o=n.calc(e,r))}Array.isArray(o)&&o[0]||(o=[{x:d,y:d}]),o[0].t||(o[0].t={}),o[0].trace=r,p[t]=o}}for(R(o,u,f),i=0;i1e-10?e:0}function d(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a0?r:1/0})),i=n.mod(r+1,t.length);return[t[r],t[i]]},findIntersectionXY:u,findXYatLength:function(e,t,r,n){var i=-t*r,a=t*t+1,o=2*(t*i-r),s=i*i+r*r-e*e,l=Math.sqrt(o*o-4*a*s),u=(-o+l)/(2*a),c=(-o-l)/(2*a);return[[u,t*u+i+n],[c,t*c+i+n]]},clampTiny:f,pathPolygon:function(e,t,r,n,i,a){return"M"+d(c(e,t,r,n),i,a).join("L")},pathPolygonAnnulus:function(e,t,r,n,i,a,o){var s,l;e=90||l>90&&u>=450?1:f<=0&&h<=0?0:Math.max(f,h),t=l<=180&&u>=180||l>180&&u>=540?-1:c>=0&&d>=0?0:Math.min(c,d),r=l<=270&&u>=270||l>270&&u>=630?-1:f>=0&&h>=0?0:Math.min(f,h),n=u>=360?1:c<=0&&d<=0?0:Math.max(c,d),[t,r,n,i]}(p),_=b[2]-b[0],w=b[3]-b[1],k=h/d,T=Math.abs(w/_);k>T?(v=d,x=(h-(m=d*T))/i.h/2,g=[s[0],s[1]],y=[f[0]+x,f[1]-x]):(m=h,x=(d-(v=h/T))/i.w/2,g=[s[0]+x,s[1]-x],y=[f[0],f[1]]),r.xLength2=v,r.yLength2=m,r.xDomain2=g,r.yDomain2=y;var M,A=r.xOffset2=i.l+i.w*g[0],S=r.yOffset2=i.t+i.h*(1-y[1]),E=r.radius=v/_,C=r.innerRadius=r.getHole(t)*E,L=r.cx=A-E*b[0],P=r.cy=S+E*b[3],O=r.cxx=L-A,I=r.cyy=P-S,D=a.side;"counterclockwise"===D?(M=D,D="top"):"clockwise"===D&&(M=D,D="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:D,_trueSide:M,domain:[C/i.w,E/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:g}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:y});var F=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",F).attr("transform",l(O,I)),n.frontplot.attr("transform",l(A,S)).call(c.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",F).attr("transform",l(L,P)).call(u.fill,t.bgcolor)},B.mockAxis=function(e,t,r,n){var i=o.extendFlat({},r,n);return p(i,t,e),i},B.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,s=o.extendFlat({type:"linear"},r);h(s,e);var l={x:[0,2],y:[1,3]};return s.setRange=function(){var e=n.sectorBBox,r=l[a],i=n.radialAxis._rl,o=(i[1]-i[0])/(1-n.getHole(t));s.range=[e[r[0]]*o,e[r[1]]*o]},s.isPtWithinRange="x"!==a||i?function(){return!0}:function(e){return n.isPtInside(e)},s.setRange(),s.setScale(),s},B.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);v(n,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")]},B.updateRadialAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,c=r.innerRadius,f=r.cx,h=r.cy,p=r.getRadial(t),v=R(r.getSector(t)[0],360),m=r.radialAxis,g=c90&&v<=270&&(m.tickangle=180);var x=y?function(e){var t=I(r,L([e.x,0]));return l(t[0]-f,t[1]-h)}:function(e){return l(m.l2p(e.x)+c,0)},b=y?function(e){return O(r,e.x,-1/0,1/0)}:function(e){return r.pathArc(m.r2p(e.x)+c)},_=j(p);if(r.radialTickLayout!==_&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=_),g){m.setScale();var w=0,k=y?(m.tickvals||[]).filter((function(e){return e>=0})).map((function(e){return d.tickText(m,e,!0,!1)})):d.calcTicks(m),T=y?k:d.clipEnds(m,k),M=d.getTickSigns(m)[2];y&&(("top"===m.ticks&&"bottom"===m.side||"bottom"===m.ticks&&"top"===m.side)&&(M=-M),"top"===m.ticks&&"top"===m.side&&(w=-m.ticklen),"bottom"===m.ticks&&"bottom"===m.side&&(w=m.ticklen)),d.drawTicks(n,m,{vals:k,layer:i["radial-axis"],path:d.makeTickPath(m,0,M),transFn:x,crisp:!1}),d.drawGrid(n,m,{vals:T,layer:i["radial-grid"],path:b,transFn:o.noop,crisp:!1}),d.drawLabels(n,m,{vals:k,layer:i["radial-axis"],transFn:x,labelFns:d.makeLabelFns(m,w)})}var A=r.radialAxisAngle=r.vangles?F(U(z(p.angle),r.vangles)):p.angle,S=l(f,h),E=S+s(-A);V(i["radial-axis"],g&&(p.showticklabels||p.ticks),{transform:E}),V(i["radial-grid"],g&&p.showgrid,{transform:y?"":S}),V(i["radial-line"].select("line"),g&&p.showline,{x1:y?-a:c,y1:0,x2:a,y2:0,transform:E}).attr("stroke-width",p.linewidth).call(u.stroke,p.linecolor)},B.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",f=0;if(l.title){var d=c.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,p=l.side;f="top"===p?h:"counterclockwise"===p?-(d+.4*h):d+.8*h}var v=void 0!==r?r:n.radialAxisAngle,m=z(v),g=Math.cos(m),y=Math.sin(m),b=o+a/2*g+f*y,_=s-a/2*y+f*g;n.layers["radial-axis-title"]=x.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title",placeholder:D(i,"Click to enter radial axis title"),attributes:{x:b,y:_,"text-anchor":"middle"},transform:{rotate:-v}})}},B.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,c=r.innerRadius,f=r.cx,h=r.cy,p=r.getAngular(t),v=r.angularAxis,m=r.isSmith;m||(r.fillViewInitialKey("angularaxis.rotation",p.rotation),v.setGeometry(),v.setScale());var g=m?function(e){var t=I(r,L([0,e.x]));return Math.atan2(t[0]-f,t[1]-h)-Math.PI/2}:function(e){return v.t2g(e.x)};"linear"===v.type&&"radians"===v.thetaunit&&(v.tick0=F(v.tick0),v.dtick=F(v.dtick));var y=function(e){return l(f+a*Math.cos(e),h-a*Math.sin(e))},x=m?function(e){var t=I(r,L([0,e.x]));return l(t[0],t[1])}:function(e){return y(g(e))},b=m?function(e){var t=I(r,L([0,e.x])),n=Math.atan2(t[0]-f,t[1]-h)-Math.PI/2;return l(t[0],t[1])+s(-F(n))}:function(e){var t=g(e);return y(t)+s(-F(t))},_=m?function(e){return P(r,e.x,0,1/0)}:function(e){var t=g(e),r=Math.cos(t),n=Math.sin(t);return"M"+[f+c*r,h-c*n]+"L"+[f+a*r,h-a*n]},w=d.makeLabelFns(v,0).labelStandoff,k={xFn:function(e){var t=g(e);return Math.cos(t)*w},yFn:function(e){var t=g(e),r=Math.sin(t)>0?.2:1;return-Math.sin(t)*(w+e.fontSize*r)+Math.abs(Math.cos(t))*(e.fontSize*A)},anchorFn:function(e){var t=g(e),r=Math.cos(t);return Math.abs(r)<.1?"middle":r>0?"start":"end"},heightFn:function(e,t,r){var n=g(e);return-.5*(1+Math.sin(n))*r}},T=j(p);r.angularTickLayout!==T&&(i["angular-axis"].selectAll("."+v._id+"tick").remove(),r.angularTickLayout=T);var M,S=m?[1/0].concat(v.tickvals||[]).map((function(e){return d.tickText(v,e,!0,!1)})):d.calcTicks(v);if(m&&(S[0].text="\u221e",S[0].fontSize*=1.75),"linear"===t.gridshape?(M=S.map(g),o.angleDelta(M[0],M[1])<0&&(M=M.slice().reverse())):M=null,r.vangles=M,"category"===v.type&&(S=S.filter((function(e){return o.isAngleInsideSector(g(e),r.sectorInRad)}))),v.visible){var E="inside"===v.ticks?-1:1,C=(v.linewidth||1)/2;d.drawTicks(n,v,{vals:S,layer:i["angular-axis"],path:"M"+E*C+",0h"+E*v.ticklen,transFn:b,crisp:!1}),d.drawGrid(n,v,{vals:S,layer:i["angular-grid"],path:_,transFn:o.noop,crisp:!1}),d.drawLabels(n,v,{vals:S,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:x,labelFns:k})}V(i["angular-line"].select("path"),p.showline,{d:r.pathSubplot(),transform:l(f,h)}).attr("stroke-width",p.linewidth).call(u.stroke,p.linecolor)},B.updateFx=function(e,t){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e))},B.updateHoverAndMainDrag=function(e){var t,r,s=this,u=s.isSmith,c=s.gd,f=s.layers,d=e._zoomlayer,h=S.MINZOOM,p=S.OFFEDGE,v=s.radius,x=s.innerRadius,k=s.cx,T=s.cy,M=s.cxx,A=s.cyy,C=s.sectorInRad,L=s.vangles,P=s.radialAxis,O=E.clampTiny,I=E.findXYatLength,D=E.findEnclosingVertexAngles,R=S.cornerHalfWidth,z=S.cornerLen/2,F=m.makeDragger(f,"path","maindrag",!1===e.dragmode?"none":"crosshair");n.select(F).attr("d",s.pathSubplot()).attr("transform",l(k,T)),F.onmousemove=function(e){y.hover(c,e,s.id),c._fullLayout._lasthover=F,c._fullLayout._hoversubplot=s.id},F.onmouseout=function(e){c._dragging||g.unhover(c,e)};var N,B,j,U,V,H,q,W,G,Y={element:F,gd:c,subplot:s.id,plotinfo:{id:s.id,xaxis:s.xaxis,yaxis:s.yaxis},xaxes:[s.xaxis],yaxes:[s.yaxis]};function Z(e,t){return Math.sqrt(e*e+t*t)}function X(e,t){return Z(e-M,t-A)}function K(e,t){return Math.atan2(A-t,e-M)}function $(e,t){return[e*Math.cos(t),e*Math.sin(-t)]}function J(e,t){if(0===e)return s.pathSector(2*R);var r=z/e,n=t-r,i=t+r,a=Math.max(0,Math.min(e,v)),o=a-R,l=a+R;return"M"+$(o,n)+"A"+[o,o]+" 0,0,0 "+$(o,i)+"L"+$(l,i)+"A"+[l,l]+" 0,0,1 "+$(l,n)+"Z"}function Q(e,t,r){if(0===e)return s.pathSector(2*R);var n,i,a=$(e,t),o=$(e,r),l=O((a[0]+o[0])/2),u=O((a[1]+o[1])/2);if(l&&u){var c=u/l,f=-1/c,d=I(R,c,l,u);n=I(z,f,d[0][0],d[0][1]),i=I(z,f,d[1][0],d[1][1])}else{var h,p;u?(h=z,p=R):(h=R,p=z),n=[[l-h,u-p],[l+h,u-p]],i=[[l-h,u+p],[l+h,u+p]]}return"M"+n.join("L")+"L"+i.reverse().join("L")+"Z"}function ee(e,t){return t=Math.max(Math.min(t,v),x),eh?(e-1&&1===e&&_(t,c,[s.xaxis],[s.yaxis],s.id,Y),r.indexOf("event")>-1&&y.click(c,t,s.id)}Y.prepFn=function(e,n,a){var l=c._fullLayout.dragmode,f=F.getBoundingClientRect();c._fullLayout._calcInverseTransform(c);var h=c._fullLayout._invTransform;t=c._fullLayout._invScaleX,r=c._fullLayout._invScaleY;var p=o.apply3DTransform(h)(n-f.left,a-f.top);if(N=p[0],B=p[1],L){var g=E.findPolygonOffset(v,C[0],C[1],L);N+=M+g[0],B+=A+g[1]}switch(l){case"zoom":Y.clickFn=se,u||(Y.moveFn=L?ie:re,Y.doneFn=ae,function(){j=null,U=null,V=s.pathSubplot(),H=!1;var e=c._fullLayout[s.id];q=i(e.bgcolor).getLuminance(),(W=m.makeZoombox(d,q,k,T,V)).attr("fill-rule","evenodd"),G=m.makeCorners(d,k,T),w(c)}());break;case"select":case"lasso":b(e,n,a,Y,l)}},g.init(Y)},B.updateRadialDrag=function(e,t,r){var i=this,u=i.gd,c=i.layers,f=i.radius,d=i.innerRadius,h=i.cx,p=i.cy,v=i.radialAxis,y=S.radialDragBoxSize,x=y/2;if(v.visible){var b,_,k,A=z(i.radialAxisAngle),E=v._rl,C=E[0],L=E[1],P=E[r],O=.75*(E[1]-E[0])/(1-i.getHole(t))/f;r?(b=h+(f+x)*Math.cos(A),_=p-(f+x)*Math.sin(A),k="radialdrag"):(b=h+(d-x)*Math.cos(A),_=p-(d-x)*Math.sin(A),k="radialdrag-inner");var I,D,R,N=m.makeRectDragger(c,k,"crosshair",-x,-x,y,y),B={element:N,gd:u};!1===e.dragmode&&(B.dragmode=!1),V(n.select(N),v.visible&&d0===(r?R>C:Rn?function(e){return e<=0}:function(e){return e>=0};e.c2g=function(r){var n=e.c2l(r)-t;return(s(n)?n:0)+o},e.g2c=function(r){return e.l2c(r+t-o)},e.g2p=function(e){return e*a},e.c2p=function(t){return e.g2p(e.c2g(t))}}}(e,t);break;case"angularaxis":!function(e,t){var r=e.type;if("linear"===r){var i=e.d2c,s=e.c2d;e.d2c=function(e,t){return function(e,t){return"degrees"===t?a(e):e}(i(e),t)},e.c2d=function(e,t){return s(function(e,t){return"degrees"===t?o(e):e}(e,t))}}e.makeCalcdata=function(t,i){var a,o,s=t[i],l=t._length,u=function(r){return e.d2c(r,t.thetaunit)};if(s){if(n.isTypedArray(s)&&"linear"===r){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 r(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function n(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function i(e,t){return t*e.radius}e.exports={smith:r,reactanceArc:function(e,t,a,o){var s=n(e,r([a,t])),l=s[0],u=s[1],c=n(e,r([o,t])),f=c[0],d=c[1];if(0===t)return["M"+l+","+u,"L"+f+","+d].join(" ");var h=i(e,1/Math.abs(t));return["M"+l+","+u,"A"+h+","+h+" 0 0,"+(t<0?1:0)+" "+f+","+d].join(" ")},resistanceArc:function(e,a,o,s){var l=i(e,1/(a+1)),u=n(e,r([a,o])),c=u[0],f=u[1],d=n(e,r([a,s])),h=d[0],p=d[1];if(t(o)!==t(s)){var v=n(e,r([a,0]));return["M"+c+","+f,"A"+l+","+l+" 0 0,"+(00){for(var n=[],i=0;i=c&&(d.min=0,p.min=0,m.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function v(e,t,r,n){var i=d[t._name];function o(r,n){return a.coerce(e,t,i,r,n)}o("uirevision",n.uirevision),t.type="linear";var h=o("color"),p=h!==i.color.dflt?h:r.font.color,v=t._name.charAt(0).toUpperCase(),m="Component "+v,g=o("title.text",m);t._hovertitle=g===m?g:v,a.coerceFont(o,"title.font",{family:r.font.family,size:a.bigFont(r.font.size),color:p}),o("min"),c(e,t,o,"linear"),l(e,t,o,"linear"),s(e,t,o,"linear"),u(e,t,o,{outerTicks:!0}),o("showticklabels")&&(a.coerceFont(o,"tickfont",{family:r.font.family,size:r.font.size,color:p}),o("tickangle"),o("tickformat")),f(e,t,o,{dfltColor:h,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),o("hoverformat"),o("layer")}e.exports=function(e,t,r){o(e,t,r,{type:"ternary",attributes:d,handleDefaults:p,font:t.font,paper_bgcolor:t.paper_bgcolor})}},64380:function(e,t,r){"use strict";var n=r(39898),i=r(84267),a=r(73972),o=r(71828),s=o.strTranslate,l=o._,u=r(7901),c=r(91424),f=r(21994),d=r(1426).extendFlat,h=r(74875),p=r(89298),v=r(28569),m=r(30211),g=r(64505),y=g.freeMode,x=g.rectMode,b=r(92998),_=r(47322).prepSelect,w=r(47322).selectOnClick,k=r(47322).clearOutline,T=r(47322).clearSelectionsCache,M=r(85555);function A(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}e.exports=A;var S=A.prototype;S.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}},S.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;aE*b?i=(a=b)*E:a=(i=x)/E,o=g*i/x,l=y*a/b,r=t.l+t.w*v-i/2,n=t.t+t.h*(1-m)-a/2,h.x0=r,h.y0=n,h.w=i,h.h=a,h.sum=_,h.xaxis={type:"linear",range:[w+2*T-_,_-w-2*k],domain:[v-o/2,v+o/2],_id:"x"},f(h.xaxis,h.graphDiv._fullLayout),h.xaxis.setScale(),h.xaxis.isPtWithinRange=function(e){return e.a>=h.aaxis.range[0]&&e.a<=h.aaxis.range[1]&&e.b>=h.baxis.range[1]&&e.b<=h.baxis.range[0]&&e.c>=h.caxis.range[1]&&e.c<=h.caxis.range[0]},h.yaxis={type:"linear",range:[w,_-k-T],domain:[m-l/2,m+l/2],_id:"y"},f(h.yaxis,h.graphDiv._fullLayout),h.yaxis.setScale(),h.yaxis.isPtWithinRange=function(){return!0};var M=h.yaxis.domain[0],A=h.aaxis=d({},e.aaxis,{range:[w,_-k-T],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(A,h.graphDiv._fullLayout),A.setScale();var S=h.baxis=d({},e.baxis,{range:[_-w-T,k],side:"bottom",domain:h.xaxis.domain,anchor:"free",position:0,_id:"x",_length:i});f(S,h.graphDiv._fullLayout),S.setScale();var C=h.caxis=d({},e.caxis,{range:[_-w-k,T],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(C,h.graphDiv._fullLayout),C.setScale();var L="M"+r+","+(n+a)+"h"+i+"l-"+i/2+",-"+a+"Z";h.clipDef.select("path").attr("d",L),h.layers.plotbg.select("path").attr("d",L);var P="M0,"+a+"h"+i+"l-"+i/2+",-"+a+"Z";h.clipDefRelative.select("path").attr("d",P);var O=s(r,n);h.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",O),h.clipDefRelative.select("path").attr("transform",null);var I=s(r-S._offset,n+a);h.layers.baxis.attr("transform",I),h.layers.bgrid.attr("transform",I);var D=s(r+i/2,n)+"rotate(30)"+s(0,-A._offset);h.layers.aaxis.attr("transform",D),h.layers.agrid.attr("transform",D);var R=s(r+i/2,n)+"rotate(-30)"+s(0,-C._offset);h.layers.caxis.attr("transform",R),h.layers.cgrid.attr("transform",R),h.drawAxes(!0),h.layers.aline.select("path").attr("d",A.showline?"M"+r+","+(n+a)+"l"+i/2+",-"+a:"M0,0").call(u.stroke,A.linecolor||"#000").style("stroke-width",(A.linewidth||0)+"px"),h.layers.bline.select("path").attr("d",S.showline?"M"+r+","+(n+a)+"h"+i:"M0,0").call(u.stroke,S.linecolor||"#000").style("stroke-width",(S.linewidth||0)+"px"),h.layers.cline.select("path").attr("d",C.showline?"M"+(r+i/2)+","+n+"l"+i/2+","+a:"M0,0").call(u.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),h.graphDiv._context.staticPlot||h.initInteractions(),c.setClipUrl(h.layers.frontplot,h._hasClipOnAxisFalse?null:h.clipId,h.graphDiv)},S.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.substr(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var u=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?.75*s.tickfont.size:0)+("outside"===s.ticks?.87*s.ticklen:0)),c=(o.showticklabels?o.tickfont.size:0)+("outside"===o.ticks?o.ticklen:0)+3;i["a-title"]=b.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title",placeholder:l(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-u,"text-anchor":"middle"}}),i["b-title"]=b.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title",placeholder:l(r,"Click to enter Component B title"),attributes:{x:t.x0-c,y:t.y0+t.h+.83*o.title.font.size+c,"text-anchor":"middle"}}),i["c-title"]=b.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title",placeholder:l(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+c,y:t.y0+t.h+.83*s.title.font.size+c,"text-anchor":"middle"}})}},S.drawAx=function(e){var t,r=this,n=r.graphDiv,i=e._name,a=i.charAt(0),s=e._id,l=r.layers[i],u=a+"tickLayout",c=(t=e).ticks+String(t.ticklen)+String(t.showticklabels);r[u]!==c&&(l.selectAll("."+s+"tick").remove(),r[u]=c),e.setScale();var f=p.calcTicks(e),d=p.clipEnds(e,f),h=p.makeTransTickFn(e),v=p.getTickSigns(e)[2],m=o.deg2rad(30),g=v*(e.linewidth||1)/2,y=v*e.ticklen,x=r.w,b=r.h,_="b"===a?"M0,"+g+"l"+Math.sin(m)*y+","+Math.cos(m)*y:"M"+g+",0l"+Math.cos(m)*y+","+-Math.sin(m)*y,w={a:"M0,0l"+b+",-"+x/2,b:"M0,0l-"+x/2+",-"+b,c:"M0,0l-"+b+","+x/2}[a];p.drawTicks(n,e,{vals:"inside"===e.ticks?d:f,layer:l,path:_,transFn:h,crisp:!1}),p.drawGrid(n,e,{vals:d,layer:r.layers[a+"grid"],path:w,transFn:h,crisp:!1}),p.drawLabels(n,e,{vals:f,layer:l,transFn:h,labelFns:p.makeLabelFns(e,0,30)})};var C=M.MINZOOM/2+.87,L="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",P="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(e){n.select(e).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 e,t,r,n,f,d,h,p,g,b,k,T,A=this,S=A.layers.plotbg.select("path").node(),C=A.graphDiv,R=C._fullLayout._zoomlayer;function z(e){var t={};return t[A.id+".aaxis.min"]=e.a,t[A.id+".baxis.min"]=e.b,t[A.id+".caxis.min"]=e.c,t}function F(e,t){var r=C._fullLayout.clickmode;D(C),2===e&&(C.emit("plotly_doubleclick",null),a.call("_guiRelayout",C,z({a:0,b:0,c:0}))),r.indexOf("select")>-1&&1===e&&w(t,C,[A.xaxis],[A.yaxis],A.id,A.dragOptions),r.indexOf("event")>-1&&m.click(C,t,A.id)}function N(e,t){return 1-t/A.h}function B(e,t){return 1-(e+(A.h-t)/Math.sqrt(3))/A.w}function j(e,t){return(e-(A.h-t)/Math.sqrt(3))/A.w}function U(i,a){var o=r+i*e,s=n+a*t,l=Math.max(0,Math.min(1,N(0,n),N(0,s))),u=Math.max(0,Math.min(1,B(r,n),B(o,s))),c=Math.max(0,Math.min(1,j(r,n),j(o,s))),v=(l/2+c)*A.w,m=(1-l/2-u)*A.w,y=(v+m)/2,x=m-v,_=(1-l)*A.h,w=_-x/E;x.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),T.transition().style("opacity",1).duration(200),b=!0),C.emit("plotly_relayouting",z(h))}function V(){D(C),h!==f&&(a.call("_guiRelayout",C,z(h)),I&&C.data&&C._context.showTips&&(o.notifier(l(C,"Double-click to zoom back out"),"long"),I=!1))}function H(e,t){var r=e/A.xaxis._m,n=t/A.yaxis._m,i=[(h={a:f.a-n,b:f.b+(r+n)/2,c:f.c-(r-n)/2}).a,h.b,h.c].sort(o.sorterAsc),a=i.indexOf(h.a),l=i.indexOf(h.b),u=i.indexOf(h.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),h={a:i[a],b:i[l],c:i[u]},t=(f.a-h.a)*A.yaxis._m,e=(f.c-h.c-f.b+h.b)*A.xaxis._m);var d=s(A.x0+e,A.y0+t);A.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",d);var p=s(-e,-t);A.clipDefRelative.select("path").attr("transform",p),A.aaxis.range=[h.a,A.sum-h.b-h.c],A.baxis.range=[A.sum-h.a-h.c,h.b],A.caxis.range=[A.sum-h.a-h.b,h.c],A.drawAxes(!1),A._hasClipOnAxisFalse&&A.plotContainer.select(".scatterlayer").selectAll(".trace").call(c.hideOutsideRangePoints,A),C.emit("plotly_relayouting",z(h))}function q(){a.call("_guiRelayout",C,z(h))}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,c){A.dragOptions.xaxes=[A.xaxis],A.dragOptions.yaxes=[A.yaxis],e=C._fullLayout._invScaleX,t=C._fullLayout._invScaleY;var v=A.dragOptions.dragmode=C._fullLayout.dragmode;y(v)?A.dragOptions.minDrag=1:A.dragOptions.minDrag=void 0,"zoom"===v?(A.dragOptions.moveFn=U,A.dragOptions.clickFn=F,A.dragOptions.doneFn=V,function(e,t,a){var l=S.getBoundingClientRect();r=t-l.left,n=a-l.top,C._fullLayout._calcInverseTransform(C);var c=C._fullLayout._invTransform,v=o.apply3DTransform(c)(r,n);r=v[0],n=v[1],f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},h=f,d=A.aaxis.range[1]-f.a,p=i(A.graphDiv._fullLayout[A.id].bgcolor).getLuminance(),g="M0,"+A.h+"L"+A.w/2+", 0L"+A.w+","+A.h+"Z",b=!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",g),T=R.append("path").attr("class","zoombox-corners").attr("transform",s(A.x0,A.y0)).style({fill:u.background,stroke:u.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),A.clearOutline(C)}(0,l,c)):"pan"===v?(A.dragOptions.moveFn=H,A.dragOptions.clickFn=F,A.dragOptions.doneFn=q,f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},h=f,A.clearOutline(C)):(x(v)||y(v))&&_(a,l,c,A.dragOptions,v)}},S.onmousemove=function(e){m.hover(C,e,A.id),C._fullLayout._lasthover=S,C._fullLayout._hoversubplot=A.id},S.onmouseout=function(e){C._dragging||v.unhover(C,e)},v.init(this.dragOptions)}},73972:function(e,t,r){"use strict";var n=r(47769),i=r(64213),a=r(75138),o=r(41965),s=r(24401).addStyleRule,l=r(1426),u=r(9012),c=r(10820),f=l.extendFlat,d=l.extendDeepAll;function h(e){var r=e.name,i=e.categories,a=e.meta;if(t.modules[r])n.log("Type "+r+" already registered");else{t.subplotsRegistry[e.basePlotModule.name]||function(e){var r=e.name;if(t.subplotsRegistry[r])n.log("Plot type "+r+" already registered.");else for(var i in g(e),t.subplotsRegistry[r]=e,t.componentsRegistry)b(i,e.name)}(e.basePlotModule);for(var o={},l=0;l-1&&(f[h[r]].title={text:""});for(r=0;r")?"":t.html(e).text()}));return t.remove(),r}(w)).replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")).replace(c,"'"),i.isIE()&&(w=(w=(w=w.replace(/"/gi,"'")).replace(/(\('#)([^']*)('\))/gi,'("#$2")')).replace(/(\\')/gi,'"')),w}},75341:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){for(var r=0;rf+u||!n(c))}for(var h=0;ha))return t}return void 0!==r?r:e.dflt},t.coerceColor=function(e,t,r){return i(t).isValid()?t:void 0!==r?r:e.dflt},t.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),-1!==e.values.indexOf(t)?t:void 0!==r?r:e.dflt},t.getValue=function(e,t){var r;return Array.isArray(e)?t0?t+=r:c<0&&(t-=r)}return t}function D(e){var t=c,r=e.b,i=I(e);return n.inbox(r-t,i-t,_+(i-t)/(i-r)-1)}var R=e[f+"a"],z=e[d+"a"];v=Math.abs(R.r2c(R.range[1])-R.r2c(R.range[0]));var F=n.getDistanceFunction(i,h,p,(function(e){return(h(e)+p(e))/2}));if(n.getClosest(m,F,e),!1!==e.index&&m[e.index].p!==u){T||(C=function(e){return Math.min(M(e),e.p-y.bargroupwidth/2)},L=function(e){return Math.max(A(e),e.p+y.bargroupwidth/2)});var N=m[e.index],B=g.base?N.b+N.s:N.s;e[d+"0"]=e[d+"1"]=z.c2p(N[d],!0),e[d+"LabelVal"]=B;var j=y.extents[y.extents.round(N.p)];e[f+"0"]=R.c2p(x?C(N):j[0],!0),e[f+"1"]=R.c2p(x?L(N):j[1],!0);var U=void 0!==N.orig_p;return e[f+"LabelVal"]=U?N.orig_p:N.p,e.labelLabel=l(R,e[f+"LabelVal"],g[f+"hoverformat"]),e.valueLabel=l(z,e[d+"LabelVal"],g[d+"hoverformat"]),e.baseLabel=l(z,N.b,g[d+"hoverformat"]),e.spikeDistance=(function(e){var t=c,r=e.b,i=I(e);return n.inbox(r-t,i-t,w+(i-t)/(i-r)-1)}(N)+function(e){return P(M(e),A(e),w)}(N))/2,e[f+"Spike"]=R.c2p(N.p,!0),o(N,g,e),e.hovertemplate=g.hovertemplate,e}}function f(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=s(e,t);return a.opacity(r)?r:a.opacity(n)&&i?n:void 0}e.exports={hoverPoints:function(e,t,r,n,a){var o=c(e,t,r,n,a);if(o){var s=o.cd,l=s[0].trace,u=s[o.index];return o.color=f(l,u),i.getComponentMethod("errorbars","hoverInfo")(u,l,o),[o]}},hoverOnBars:c,getTraceColor:f}},60822:function(e,t,r){"use strict";e.exports={attributes:r(1486),layoutAttributes:r(43641),supplyDefaults:r(90769).supplyDefaults,crossTraceDefaults:r(90769).crossTraceDefaults,supplyLayoutDefaults:r(13957),calc:r(92290),crossTraceCalc:r(11661).crossTraceCalc,colorbar:r(4898),arraysToCalcdata:r(75341),plot:r(17295).plot,style:r(16688).style,styleOnSelect:r(16688).styleOnSelect,hoverPoints:r(95423).hoverPoints,eventData:r(58065),selectPoints:r(81974),moduleType:"trace",name:"bar",basePlotModule:r(93612),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}},43641:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(73972),i=r(89298),a=r(71828),o=r(43641);e.exports=function(e,t,r){function s(r,n){return a.coerce(e,t,o,r,n)}for(var l=!1,u=!1,c=!1,f={},d=s("barmode"),h=0;h0}function S(e){return"auto"===e?0:e}function E(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function C(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor||"end",c="end"===u,f="start"===u,d=((a.leftToRight||0)+1)/2,h=1-d,p=i.width,v=i.height,m=Math.abs(t-e),g=Math.abs(n-r),y=m>2*_&&g>2*_?_:0;m-=2*y,g-=2*y;var x=S(l);"auto"!==l||p<=m&&v<=g||!(p>m||v>g)||(p>g||v>m)&&p.01?W:function(e,t,r){return r&&e===t?e:Math.abs(e-t)>=2?W(e):e>t?Math.ceil(e):Math.floor(e)};B=G(B,j,z),j=G(j,B,z),U=G(U,V,!z),V=G(V,U,!z)}var Y=M(a.ensureSingle(I,"path"),P,m,g);if(Y.style("vector-effect",O?"none":"non-scaling-stroke").attr("d",isNaN((j-B)*(V-U))||H&&e._context.staticPlot?"M0,0Z":"M"+B+","+U+"V"+V+"H"+j+"V"+U+"Z").call(l.setClipUrl,t.layerClipId,e),!P.uniformtext.mode&&F){var Z=l.makePointStyleFns(f);l.singlePointStyle(u,Y,f,Z,e)}!function(e,t,r,n,i,s,u,f,h,m,g){var w,k=t.xaxis,A=t.yaxis,L=e._fullLayout;function P(t,r,n){return a.ensureSingle(t,"text").text(r).attr({class:"bartext bartext-"+w,"text-anchor":"middle","data-notex":1}).call(l.font,n).call(o.convertToTspans,e)}var O=n[0].trace,I="h"===O.orientation,D=function(e,t,r,n,i){var o,s=t[0].trace,l=s.texttemplate;return o=l?function(e,t,r,n,i){var o=t[0].trace,s=a.castOption(o,r,"texttemplate");if(!s)return"";var l,u,f,d,h="histogram"===o.type,p="waterfall"===o.type,v="funnel"===o.type,m="h"===o.orientation;function g(e){return c(u,u.c2l(e),!0).text}function y(e){return c(d,d.c2l(e),!0).text}m?(l="y",u=i,f="x",d=n):(l="x",u=n,f="y",d=i);var x=t[r],_={};_.label=x.p,_.labelLabel=_[l+"Label"]=g(x.p);var w=a.castOption(o,x.i,"text");(0===w||w)&&(_.text=w),_.value=x.s,_.valueLabel=_[f+"Label"]=y(x.s);var k={};b(k,o,x.i),(h||void 0===k.x)&&(k.x=m?_.value:_.label),(h||void 0===k.y)&&(k.y=m?_.label:_.value),(h||void 0===k.xLabel)&&(k.xLabel=m?_.valueLabel:_.labelLabel),(h||void 0===k.yLabel)&&(k.yLabel=m?_.labelLabel:_.valueLabel),p&&(_.delta=+x.rawS||x.s,_.deltaLabel=y(_.delta),_.final=x.v,_.finalLabel=y(_.final),_.initial=_.final-_.delta,_.initialLabel=y(_.initial)),v&&(_.value=x.s,_.valueLabel=y(_.value),_.percentInitial=x.begR,_.percentInitialLabel=a.formatPercent(x.begR),_.percentPrevious=x.difR,_.percentPreviousLabel=a.formatPercent(x.difR),_.percentTotal=x.sumR,_.percenTotalLabel=a.formatPercent(x.sumR));var T=a.castOption(o,x.i,"customdata");return T&&(_.customdata=T),a.texttemplateString(s,_,e._d3locale,k,_,o._meta||{})}(e,t,r,n,i):s.textinfo?function(e,t,r,n){var i=e[0].trace,o="h"===i.orientation,s="waterfall"===i.type,l="funnel"===i.type;function u(e){return c(o?n:r,e,!0).text}function f(e){return c(o?r:n,+e,!0).text}var d,h=i.textinfo,p=e[t],v=h.split("+"),m=[],g=function(e){return-1!==v.indexOf(e)};if(g("label")&&m.push(u(e[t].p)),g("text")&&(0===(d=a.castOption(i,p.i,"text"))||d)&&m.push(d),s){var y=+p.rawS||p.s,x=p.v,b=x-y;g("initial")&&m.push(f(b)),g("delta")&&m.push(f(y)),g("final")&&m.push(f(x))}if(l){g("value")&&m.push(f(p.s));var _=0;g("percent initial")&&_++,g("percent previous")&&_++,g("percent total")&&_++;var w=_>1;g("percent initial")&&(d=a.formatPercent(p.begR),w&&(d+=" of initial"),m.push(d)),g("percent previous")&&(d=a.formatPercent(p.difR),w&&(d+=" of previous"),m.push(d)),g("percent total")&&(d=a.formatPercent(p.sumR),w&&(d+=" of total"),m.push(d))}return m.join("
")}(t,r,n,i):v.getValue(s.text,r),v.coerceString(y,o)}(L,n,i,k,A);w=function(e,t){var r=v.getValue(e.textposition,t);return v.coerceEnumerated(x,r)}(O,i);var R="stack"===m.mode||"relative"===m.mode,z=n[i],F=!R||z._outmost;if(D&&"none"!==w&&(!z.isBlank&&s!==u&&f!==h||"auto"!==w&&"inside"!==w)){var N=L.font,B=p.getBarColor(n[i],O),j=p.getInsideTextFont(O,i,N,B),U=p.getOutsideTextFont(O,i,N),V=r.datum();I?"log"===k.type&&V.s0<=0&&(s=k.range[0]0&&G>0&&(W<=Z&&G<=X||W<=X&&G<=Z||(I?Z>=W*(X/G):X>=G*(Z/W)))?w="inside":(w="outside",H.remove(),H=null)):w="inside"),!H){var K=(H=P(r,D,Y=a.ensureUniformFontSize(e,"outside"===w?U:j))).attr("transform");if(H.attr("transform",""),W=(q=l.bBox(H.node())).width,G=q.height,H.attr("transform",K),W<=0||G<=0)return void H.remove()}var $,J=O.textangle;$="outside"===w?function(e,t,r,n,i,a){var o,s=!!a.isHorizontal,l=!!a.constrained,u=a.angle||0,c=i.width,f=i.height,d=Math.abs(t-e),h=Math.abs(n-r);o=s?h>2*_?_:0:d>2*_?_:0;var p=1;l&&(p=s?Math.min(1,h/f):Math.min(1,d/c));var v=S(u),m=E(i,v),g=(s?m.x:m.y)/2,y=(i.left+i.right)/2,x=(i.top+i.bottom)/2,b=(e+t)/2,w=(r+n)/2,k=0,M=0,A=s?T(t,e):T(r,n);return s?(b=t-A*o,k=A*g):(w=n+A*o,M=-A*g),{textX:y,textY:x,targetX:b,targetY:w,anchorX:k,anchorY:M,scale:p,rotate:v}}(s,u,f,h,q,{isHorizontal:I,constrained:"both"===O.constraintext||"outside"===O.constraintext,angle:J}):C(s,u,f,h,q,{isHorizontal:I,constrained:"both"===O.constraintext||"inside"===O.constraintext,angle:J,anchor:O.insidetextanchor}),$.fontSize=Y.size,d("histogram"===O.type?"bar":O.type,$,L),z.transform=$;var Q=M(H,L,m,g);a.setTransormAndDisplay(Q,$)}else r.select("text").remove()}(e,t,I,r,h,B,j,U,V,m,g),t.layerClipId&&l.hideOutsideRangePoint(u,I.select("text"),w,L,f.xcalendar,f.ycalendar)}));var U=!1===f.cliponaxis;l.setClipUrl(u,U?null:t.layerClipId,e)}));u.getComponentMethod("errorbars","plot")(e,I,t,m)},toMoveInsideBar:C}},81974:function(e){"use strict";function t(e,t,r,n,i){var a=t.c2p(n?e.s0:e.p0,!0),o=t.c2p(n?e.s1:e.p1,!0),s=r.c2p(n?e.p0:e.s0,!0),l=r.c2p(n?e.p1:e.s1,!0);return i?[(a+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(a+o)/2,l]}e.exports=function(e,r){var n,i=e.cd,a=e.xaxis,o=e.yaxis,s=i[0].trace,l="funnel"===s.type,u="h"===s.orientation,c=[];if(!1===r)for(n=0;n1||0===i.bargap&&0===i.bargroupgap&&!e[0].trace.marker.line.width)&&n.select(this).attr("shape-rendering","crispEdges")})),t.selectAll("g.points").each((function(t){p(n.select(this),t[0].trace,e)})),s.getComponentMethod("errorbars","style")(t)},styleTextPoints:v,styleOnSelect:function(e,t,r){var i=t[0].trace;i.selectedpoints?function(e,t,r){a.selectedPointStyle(e.selectAll("path"),t),function(e,t,r){e.each((function(e){var i,s=n.select(this);if(e.selected){i=o.ensureUniformFontSize(r,m(s,e,t,r));var l=t.selected.textfont&&t.selected.textfont.color;l&&(i.color=l),a.font(s,i)}else a.selectedTextStyle(s,t)}))}(e.selectAll("text"),t,r)}(r,i,e):(p(r,i,e),s.getComponentMethod("errorbars","style")(r))},getInsideTextFont:y,getOutsideTextFont:x,getBarColor:_,resizeText:l}},98340:function(e,t,r){"use strict";var n=r(7901),i=r(52075).hasColorscale,a=r(1586),o=r(71828).coercePattern;e.exports=function(e,t,r,s,l){var u=r("marker.color",s),c=i(e,"marker");c&&a(e,t,l,r,{prefix:"marker.",cLetter:"c"}),r("marker.line.color",n.defaultLine),i(e,"marker.line")&&a(e,t,l,r,{prefix:"marker.line.",cLetter:"c"}),r("marker.line.width"),r("marker.opacity"),o(r,"marker.pattern",u,c),r("selected.marker.color"),r("unselected.marker.color")}},72597:function(e,t,r){"use strict";var n=r(39898),i=r(71828);function a(e){return"_"+e+"Text_minsize"}e.exports={recordMinTextSize:function(e,t,r){if(r.uniformtext.mode){var n=a(e),i=r.uniformtext.minsize,o=t.scale*t.fontSize;t.hide=od.range[1]&&(x+=Math.PI),n.getClosest(u,(function(e){return v(y,x,[e.rp0,e.rp1],[e.thetag0,e.thetag1],p)?m+Math.min(1,Math.abs(e.thetag1-e.thetag0)/g)-1+(e.rp1-y)/(e.rp1-e.rp0)-1:1/0}),e),!1!==e.index){var b=u[e.index];e.x0=e.x1=b.ct[0],e.y0=e.y1=b.ct[1];var _=i.extendFlat({},b,{r:b.s,theta:b.p});return o(b,c,e),s(_,c,f,e),e.hovertemplate=c.hovertemplate,e.color=a(c,b),e.xLabelVal=e.yLabelVal=void 0,b.s<0&&(e.idealAlign="left"),[e]}}},23381:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"barpolar",basePlotModule:r(23580),categories:["polar","bar","showLegend"],attributes:r(55023),layoutAttributes:r(40151),supplyDefaults:r(6135),supplyLayoutDefaults:r(19860),calc:r(74692).calc,crossTraceCalc:r(74692).crossTraceCalc,plot:r(60173),colorbar:r(4898),formatLabels:r(98608),style:r(16688).style,styleOnSelect:r(16688).styleOnSelect,hoverPoints:r(27379),selectPoints:r(81974),meta:{}}},40151:function(e){"use strict";e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}},19860:function(e,t,r){"use strict";var n=r(71828),i=r(40151);e.exports=function(e,t,r){var a,o={};function s(r,o){return n.coerce(e[a]||{},t[a],i,r,o)}for(var l=0;l0?(u=o,c=l):(u=l,c=o);var f=[s.findEnclosingVertexAngles(u,e.vangles)[0],(u+c)/2,s.findEnclosingVertexAngles(c,e.vangles)[1]];return s.pathPolygonAnnulus(n,i,u,c,f,t,r)}:function(e,n,i,o){return a.pathAnnulus(e,n,i,o,t,r)}}(t),p=t.layers.frontplot.select("g.barlayer");a.makeTraceGroups(p,r,"trace bars").each((function(){var r=n.select(this),s=a.ensureSingle(r,"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(e){var t,r=n.select(this),o=e.rp0=f.c2p(e.s0),s=e.rp1=f.c2p(e.s1),l=e.thetag0=d.c2g(e.p0),p=e.thetag1=d.c2g(e.p1);if(i(o)&&i(s)&&i(l)&&i(p)&&o!==s&&l!==p){var v=f.c2g(e.s1),m=(l+p)/2;e.ct=[u.c2p(v*Math.cos(m)),c.c2p(v*Math.sin(m))],t=h(o,s,l,p)}else t="M0,0Z";a.ensureSingle(r,"path").attr("d",t)})),o.setClipUrl(r,t._hasClipOnAxisFalse?t.clipIds.forTraces:null,e)}))}},53522:function(e,t,r){"use strict";var n=r(82196),i=r(1486),a=r(22399),o=r(12663).axisHoverFormat,s=r(5386).fF,l=r(1426).extendFlat,u=n.marker,c=u.line;e.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:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.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({},u.symbol,{arrayOk:!1,editType:"plot"}),opacity:l({},u.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:l({},u.angle,{arrayOk:!1,editType:"calc"}),size:l({},u.size,{arrayOk:!1,editType:"calc"}),color:l({},u.color,{arrayOk:!1,editType:"style"}),line:{color:l({},c.color,{arrayOk:!1,dflt:a.defaultLine,editType:"style"}),width:l({},c.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:n.fillcolor,whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},offsetgroup:i.offsetgroup,alignmentgroup:i.alignmentgroup,selected:{marker:n.selected.marker,editType:"style"},unselected:{marker:n.unselected.marker,editType:"style"},text:l({},n.text,{}),hovertext:l({},n.hovertext,{}),hovertemplate:s({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"}}},48518:function(e,t,r){"use strict";var n=r(92770),i=r(89298),a=r(42973),o=r(71828),s=r(50606).BADNUM,l=o._;e.exports=function(e,t){var r,u,y,x,b,_,w,k=e._fullLayout,T=i.getFromId(e,t.xaxis||"x"),M=i.getFromId(e,t.yaxis||"y"),A=[],S="violin"===t.type?"_numViolins":"_numBoxes";"h"===t.orientation?(y=T,x="x",b=M,_="y",w=!!t.yperiodalignment):(y=M,x="y",b=T,_="x",w=!!t.xperiodalignment);var E,C,L,P,O,I,D=function(e,t,r,i){var s,l=t in e,u=t+"0"in e,c="d"+t in e;if(l||u&&c){var f=r.makeCalcdata(e,t);return[a(e,r,t,f).vals,f]}s=u?e[t+"0"]:"name"in e&&("category"===r.type||n(e.name)&&-1!==["linear","log"].indexOf(r.type)||o.isDateTime(e.name)&&"date"===r.type)?e.name:i;for(var d="multicategory"===r.type?r.r2c_just_indices(s):r.d2c(s,0,e[t+"calendar"]),h=e._length,p=new Array(h),v=0;vE.uf};if(t._hasPreCompStats){var U=t[x],V=function(e){return y.d2c((t[e]||[])[r])},H=1/0,q=-1/0;for(r=0;r=E.q1&&E.q3>=E.med){var G=V("lowerfence");E.lf=G!==s&&G<=E.q1?G:h(E,L,P);var Y=V("upperfence");E.uf=Y!==s&&Y>=E.q3?Y:p(E,L,P);var Z=V("mean");E.mean=Z!==s?Z:P?o.mean(L,P):(E.q1+E.q3)/2;var X=V("sd");E.sd=Z!==s&&X>=0?X:P?o.stdev(L,P,E.mean):E.q3-E.q1,E.lo=v(E),E.uo=m(E);var K=V("notchspan");K=K!==s&&K>0?K:g(E,P),E.ln=E.med-K,E.un=E.med+K;var $=E.lf,J=E.uf;t.boxpoints&&L.length&&($=Math.min($,L[0]),J=Math.max(J,L[P-1])),t.notched&&($=Math.min($,E.ln),J=Math.max(J,E.un)),E.min=$,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}H=Math.min(H,E.min),q=Math.max(q,E.max),E.pts2=C.filter(j),A.push(E)}}t._extremes[y._id]=i.findExtremes(y,[H,q],{padded:!0})}else{var ee=y.makeCalcdata(t,x),te=function(e,t){for(var r=e.length,n=new Array(r+1),i=0;i=0&&ie0){var ce,fe;(E={}).pos=E[_]=N[r],C=E.pts=ne[r].sort(f),P=(L=E[x]=C.map(d)).length,E.min=L[0],E.max=L[P-1],E.mean=o.mean(L,P),E.sd=o.stdev(L,P,E.mean),E.med=o.interp(L,.5),P%2&&(le||ue)?(le?(ce=L.slice(0,P/2),fe=L.slice(P/2+1)):ue&&(ce=L.slice(0,P/2+1),fe=L.slice(P/2)),E.q1=o.interp(ce,.5),E.q3=o.interp(fe,.5)):(E.q1=o.interp(L,.25),E.q3=o.interp(L,.75)),E.lf=h(E,L,P),E.uf=p(E,L,P),E.lo=v(E),E.uo=m(E);var de=g(E,P);E.ln=E.med-de,E.un=E.med+de,ae=Math.min(ae,E.ln),oe=Math.max(oe,E.un),E.pts2=C.filter(j),A.push(E)}t._extremes[y._id]=i.findExtremes(y,t.notched?ee.concat([ae,oe]):ee,{padded:!0})}return function(e,t){if(o.isArrayOrTypedArray(t.selectedpoints))for(var r=0;r0?(A[0].t={num:k[S],dPos:B,posLetter:_,valLetter:x,labels:{med:l(e,"median:"),min:l(e,"min:"),q1:l(e,"q1:"),q3:l(e,"q3:"),max:l(e,"max:"),mean:"sd"===t.boxmean?l(e,"mean \xb1 \u03c3:"):l(e,"mean:"),lf:l(e,"lower fence:"),uf:l(e,"upper fence:")}},k[S]++,A):[{t:{empty:!0}}]};var u={text:"tx",hovertext:"htx"};function c(e,t,r){for(var n in u)o.isArrayOrTypedArray(t[n])&&(Array.isArray(r)?o.isArrayOrTypedArray(t[n][r[0]])&&(e[u[n]]=t[n][r[0]][r[1]]):e[u[n]]=t[n][r])}function f(e,t){return e.v-t.v}function d(e){return e.v}function h(e,t,r){return 0===r?e.q1:Math.min(e.q1,t[Math.min(o.findBin(2.5*e.q1-1.5*e.q3,t,!0)+1,r-1)])}function p(e,t,r){return 0===r?e.q3:Math.max(e.q3,t[Math.max(o.findBin(2.5*e.q3-1.5*e.q1,t),0)])}function v(e){return 4*e.q1-3*e.q3}function m(e){return 4*e.q3-3*e.q1}function g(e,t){return 0===t?0:1.57*(e.q3-e.q1)/Math.sqrt(t)}},37188:function(e,t,r){"use strict";var n=r(89298),i=r(71828),a=r(99082).getAxisGroup,o=["v","h"];function s(e,t,r,o){var s,l,u,c=t.calcdata,f=t._fullLayout,d=o._id,h=d.charAt(0),p=[],v=0;for(s=0;s1,b=1-f[e+"gap"],_=1-f[e+"groupgap"];for(s=0;s0){var q=E.pointpos,W=E.jitter,G=E.marker.size/2,Y=0;q+W>=0&&((Y=V*(q+W))>A?(H=!0,j=G,N=Y):Y>z&&(j=G,N=A)),Y<=A&&(N=A);var Z=0;q-W<=0&&((Z=-V*(q-W))>S?(H=!0,U=G,B=Z):Z>F&&(U=G,B=S)),Z<=S&&(B=S)}else N=A,B=S;var X=new Array(u.length);for(l=0;l0?(m="v",g=x>0?Math.min(_,b):Math.min(b)):x>0?(m="h",g=Math.min(_)):g=0;if(g){t._length=g;var S=r("orientation",m);t._hasPreCompStats?"v"===S&&0===x?(r("x0",0),r("dx",1)):"h"===S&&0===y&&(r("y0",0),r("dy",1)):"v"===S&&0===x?r("x0"):"h"===S&&0===y&&r("y0"),i.getComponentMethod("calendars","handleTraceDefaults")(e,t,["x","y"],a)}else t.visible=!1}function f(e,t,r,i){var a=i.prefix,o=n.coerce2(e,t,u,"marker.outliercolor"),s=r("marker.line.outliercolor"),l="outliers";t._hasPreCompStats?l="all":(o||s)&&(l="suspectedoutliers");var c=r(a+"points",l);c?(r("jitter","all"===c?.3:0),r("pointpos","all"===c?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),"suspectedoutliers"===c&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var f=r("hoveron");"all"!==f&&-1===f.indexOf("points")||r("hovertemplate"),n.coerceSelectionMarkerOpacity(t,r)}e.exports={supplyDefaults:function(e,t,r,i){function s(r,i){return n.coerce(e,t,u,r,i)}if(c(e,t,s,i),!1!==t.visible){o(e,t,i,s),s("xhoverformat"),s("yhoverformat");var l=t._hasPreCompStats;l&&(s("lowerfence"),s("upperfence")),s("line.color",(e.marker||{}).color||r),s("line.width"),s("fillcolor",a.addOpacity(t.line.color,.5));var d=!1;if(l){var h=s("mean"),p=s("sd");h&&h.length&&(d=!0,p&&p.length&&(d="sd"))}s("boxmean",d),s("whiskerwidth"),s("width"),s("quartilemethod");var v=!1;if(l){var m=s("notchspan");m&&m.length&&(v=!0)}else n.validate(e.notchwidth,u.notchwidth)&&(v=!0);s("notched",v)&&s("notchwidth"),f(e,t,s,{prefix:"box"})}},crossTraceDefaults:function(e,t){var r,i;function a(e){return n.coerce(i._input,i,u,e)}for(var o=0;oe.lo&&(_.so=!0)}return a}));p.enter().append("path").classed("point",!0),p.exit().remove(),p.call(a.translatePoints,l,u)}function c(e,t,r,a){var o,s,l=t.val,u=t.pos,c=!!u.rangebreaks,f=a.bPos,d=a.bPosPxOffset||0,h=r.boxmean||(r.meanline||{}).visible;Array.isArray(a.bdPos)?(o=a.bdPos[0],s=a.bdPos[1]):(o=a.bdPos,s=a.bdPos);var p=e.selectAll("path.mean").data("box"===r.type&&r.boxmean||"violin"===r.type&&r.box.visible&&r.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(e){var t=u.c2l(e.pos+f,!0),i=u.l2p(t-o)+d,a=u.l2p(t+s)+d,p=c?(i+a)/2:u.l2p(t)+d,v=l.c2p(e.mean,!0),m=l.c2p(e.mean-e.sd,!0),g=l.c2p(e.mean+e.sd,!0);"h"===r.orientation?n.select(this).attr("d","M"+v+","+i+"V"+a+("sd"===h?"m0,0L"+m+","+p+"L"+v+","+i+"L"+g+","+p+"Z":"")):n.select(this).attr("d","M"+i+","+v+"H"+a+("sd"===h?"m0,0L"+p+","+m+"L"+i+","+v+"L"+p+","+g+"Z":""))}))}e.exports={plot:function(e,t,r,a){var o=e._context.staticPlot,s=t.xaxis,f=t.yaxis;i.makeTraceGroups(a,r,"trace boxes").each((function(e){var t,r,i=n.select(this),a=e[0],d=a.t,h=a.trace;d.wdPos=d.bdPos*h.whiskerwidth,!0!==h.visible||d.empty?i.remove():("h"===h.orientation?(t=f,r=s):(t=s,r=f),l(i,{pos:t,val:r},h,d,o),u(i,{x:s,y:f},h,d),c(i,{pos:t,val:r},h,d))}))},plotBoxAndWhiskers:l,plotPoints:u,plotBoxMean:c}},24626:function(e){"use strict";e.exports=function(e,t){var r,n,i=e.cd,a=e.xaxis,o=e.yaxis,s=[];if(!1===t)for(r=0;r=10)return null;for(var r=1/0,a=-1/0,o=e.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=P(S+L),z=O(E-L),F=[[f=A(S)]];for(a=R;a*C=0;i--)a[c-i]=e[f][i],o[c-i]=t[f][i];for(s.push({x:a,y:o,bicubic:l}),i=f,a=[],o=[];i>=0;i--)a[f-i]=e[i][0],o[f-i]=t[i][0];return s.push({x:a,y:o,bicubic:u}),s}},20347:function(e,t,r){"use strict";var n=r(89298),i=r(1426).extendFlat;e.exports=function(e,t,r){var a,o,s,l,u,c,f,d,h,p,v,m,g,y,x=e["_"+t],b=e[t+"axis"],_=b._gridlines=[],w=b._minorgridlines=[],k=b._boundarylines=[],T=e["_"+r],M=e[r+"axis"];"array"===b.tickmode&&(b.tickvals=x.slice());var A=e._xctrl,S=e._yctrl,E=A[0].length,C=A.length,L=e._a.length,P=e._b.length;n.prepTicks(b),"array"===b.tickmode&&delete b.tickvals;var O=b.smoothing?3:1;function I(n){var i,a,o,s,l,u,c,f,h,p,v,m,g=[],y=[],x={};if("b"===t)for(a=e.b2j(n),o=Math.floor(Math.max(0,Math.min(P-2,a))),s=a-o,x.length=P,x.crossLength=L,x.xy=function(t){return e.evalxy([],t,a)},x.dxy=function(t,r){return e.dxydi([],t,o,r,s)},i=0;i0&&(h=e.dxydi([],i-1,o,0,s),g.push(l[0]+h[0]/3),y.push(l[1]+h[1]/3),p=e.dxydi([],i-1,o,1,s),g.push(f[0]-p[0]/3),y.push(f[1]-p[1]/3)),g.push(f[0]),y.push(f[1]),l=f;else for(i=e.a2i(n),u=Math.floor(Math.max(0,Math.min(L-2,i))),c=i-u,x.length=L,x.crossLength=P,x.xy=function(t){return e.evalxy([],i,t)},x.dxy=function(t,r){return e.dxydj([],u,t,c,r)},a=0;a0&&(v=e.dxydj([],u,a-1,c,0),g.push(l[0]+v[0]/3),y.push(l[1]+v[1]/3),m=e.dxydj([],u,a-1,c,1),g.push(f[0]-m[0]/3),y.push(f[1]-m[1]/3)),g.push(f[0]),y.push(f[1]),l=f;return x.axisLetter=t,x.axis=b,x.crossAxis=M,x.value=n,x.constvar=r,x.index=d,x.x=g,x.y=y,x.smoothing=M.smoothing,x}function D(n){var i,a,o,s,l,u=[],c=[],f={};if(f.length=x.length,f.crossLength=T.length,"b"===t)for(o=Math.max(0,Math.min(P-2,n)),l=Math.min(1,Math.max(0,n-o)),f.xy=function(t){return e.evalxy([],t,n)},f.dxy=function(t,r){return e.dxydi([],t,o,r,l)},i=0;ix.length-1||_.push(i(D(o),{color:b.gridcolor,width:b.gridwidth,dash:b.griddash}));for(d=c;dx.length-1)&&!(v<0||v>x.length-1))for(m=x[s],g=x[v],a=0;ax[x.length-1]||w.push(i(I(p),{color:b.minorgridcolor,width:b.minorgridwidth,dash:b.minorgriddash}));b.startline&&k.push(i(D(0),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&k.push(i(D(x.length-1),{color:b.endlinecolor,width:b.endlinewidth}))}else{for(l=5e-15,c=(u=[Math.floor((x[x.length-1]-b.tick0)/b.dtick*(1+l)),Math.ceil((x[0]-b.tick0)/b.dtick/(1+l))].sort((function(e,t){return e-t})))[0],f=u[1],d=c;d<=f;d++)h=b.tick0+b.dtick*d,_.push(i(I(h),{color:b.gridcolor,width:b.gridwidth,dash:b.griddash}));for(d=c-1;dx[x.length-1]||w.push(i(I(p),{color:b.minorgridcolor,width:b.minorgridwidth,dash:b.minorgriddash}));b.startline&&k.push(i(I(x[0]),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&k.push(i(I(x[x.length-1]),{color:b.endlinecolor,width:b.endlinewidth}))}}},83311:function(e,t,r){"use strict";var n=r(89298),i=r(1426).extendFlat;e.exports=function(e,t){var r,a,o,s=t._labels=[],l=t._gridlines;for(r=0;rt.length&&(e=e.slice(0,t.length)):e=[],i=0;i90&&(h-=180,l=-l),{angle:h,flip:l,p:e.c2p(n,t,r),offsetMultplier:u}}},89740:function(e,t,r){"use strict";var n=r(39898),i=r(91424),a=r(27669),o=r(67961),s=r(11651),l=r(63893),u=r(71828),c=u.strRotate,f=u.strTranslate,d=r(18783);function h(e,t,r,s,l,u,c){var f="const-"+l+"-lines",d=r.selectAll("."+f).data(u);d.enter().append("path").classed(f,!0).style("vector-effect",c?"none":"non-scaling-stroke"),d.each((function(r){var s=r,l=s.x,u=s.y,c=a([],l,e.c2p),f=a([],u,t.c2p),d="M"+o(c,f,s.smoothing);n.select(this).attr("d",d).style("stroke-width",s.width).style("stroke",s.color).style("stroke-dasharray",i.dashStyle(s.dash,s.width)).style("fill","none")})),d.exit().remove()}function p(e,t,r,a,o,u,d,h){var p=u.selectAll("text."+h).data(d);p.enter().append("text").classed(h,!0);var v=0,m={};return p.each((function(o,u){var d;if("auto"===o.axis.tickangle)d=s(a,t,r,o.xy,o.dxy);else{var h=(o.axis.tickangle+180)*Math.PI/180;d=s(a,t,r,o.xy,[Math.cos(h),Math.sin(h)])}u||(m={angle:d.angle,flip:d.flip});var p=(o.endAnchor?-1:1)*d.flip,g=n.select(this).attr({"text-anchor":p>0?"start":"end","data-notex":1}).call(i.font,o.font).text(o.text).call(l.convertToTspans,e),y=i.bBox(this);g.attr("transform",f(d.p[0],d.p[1])+c(d.angle)+f(o.axis.labelpadding*p,.3*y.height)),v=Math.max(v,y.width+o.axis.labelpadding)})),p.exit().remove(),m.maxExtent=v,m}e.exports=function(e,t,r,i){var l=e._context.staticPlot,c=t.xaxis,f=t.yaxis,d=e._fullLayout._clips;u.makeTraceGroups(i,r,"trace").each((function(t){var r=n.select(this),i=t[0],v=i.trace,m=v.aaxis,y=v.baxis,x=u.ensureSingle(r,"g","minorlayer"),b=u.ensureSingle(r,"g","majorlayer"),_=u.ensureSingle(r,"g","boundarylayer"),w=u.ensureSingle(r,"g","labellayer");r.style("opacity",v.opacity),h(c,f,b,0,"a",m._gridlines,!0),h(c,f,b,0,"b",y._gridlines,!0),h(c,f,x,0,"a",m._minorgridlines,!0),h(c,f,x,0,"b",y._minorgridlines,!0),h(c,f,_,0,"a-boundary",m._boundarylines,l),h(c,f,_,0,"b-boundary",y._boundarylines,l);var k=p(e,c,f,v,0,w,m._labels,"a-label"),T=p(e,c,f,v,0,w,y._labels,"b-label");!function(e,t,r,n,i,a,o,l){var c,f,d,h,p=u.aggNums(Math.min,null,r.a),v=u.aggNums(Math.max,null,r.a),m=u.aggNums(Math.min,null,r.b),y=u.aggNums(Math.max,null,r.b);c=.5*(p+v),f=m,d=r.ab2xy(c,f,!0),h=r.dxyda_rough(c,f),void 0===o.angle&&u.extendFlat(o,s(r,i,a,d,r.dxydb_rough(c,f))),g(e,t,r,0,d,h,r.aaxis,i,a,o,"a-title"),c=p,f=.5*(m+y),d=r.ab2xy(c,f,!0),h=r.dxydb_rough(c,f),void 0===l.angle&&u.extendFlat(l,s(r,i,a,d,r.dxyda_rough(c,f))),g(e,t,r,0,d,h,r.baxis,i,a,l,"b-title")}(e,w,v,0,c,f,k,T),function(e,t,r,n,i){var s,l,c,f,d=r.select("#"+e._clipPathId);d.size()||(d=r.append("clipPath").classed("carpetclip",!0));var h=u.ensureSingle(d,"path","carpetboundary"),p=t.clipsegments,v=[];for(f=0;f90&&y<270,b=n.select(this);b.text(d.title.text).call(l.convertToTspans,e),x&&(_=(-l.lineCount(b)+m)*v*a-_),b.attr("transform",f(t.p[0],t.p[1])+c(t.angle)+f(0,_)).attr("text-anchor","middle").call(i.font,d.title.font)})),b.exit().remove()}},11435:function(e,t,r){"use strict";var n=r(35509),i=r(65888).findBin,a=r(45664),o=r(20349),s=r(54495),l=r(73057);e.exports=function(e){var t=e._a,r=e._b,u=t.length,c=r.length,f=e.aaxis,d=e.baxis,h=t[0],p=t[u-1],v=r[0],m=r[c-1],g=t[t.length-1]-t[0],y=r[r.length-1]-r[0],x=g*n.RELATIVE_CULL_TOLERANCE,b=y*n.RELATIVE_CULL_TOLERANCE;h-=x,p+=x,v-=b,m+=b,e.isVisible=function(e,t){return e>h&&ev&&tp||tm},e.setScale=function(){var t=e._x,r=e._y,n=a(e._xctrl,e._yctrl,t,r,f.smoothing,d.smoothing);e._xctrl=n[0],e._yctrl=n[1],e.evalxy=o([e._xctrl,e._yctrl],u,c,f.smoothing,d.smoothing),e.dxydi=s([e._xctrl,e._yctrl],f.smoothing,d.smoothing),e.dxydj=l([e._xctrl,e._yctrl],f.smoothing,d.smoothing)},e.i2a=function(e){var r=Math.max(0,Math.floor(e[0]),u-2),n=e[0]-r;return(1-n)*t[r]+n*t[r+1]},e.j2b=function(e){var t=Math.max(0,Math.floor(e[1]),u-2),n=e[1]-t;return(1-n)*r[t]+n*r[t+1]},e.ij2ab=function(t){return[e.i2a(t[0]),e.j2b(t[1])]},e.a2i=function(e){var r=Math.max(0,Math.min(i(e,t),u-2)),n=t[r],a=t[r+1];return Math.max(0,Math.min(u-1,r+(e-n)/(a-n)))},e.b2j=function(e){var t=Math.max(0,Math.min(i(e,r),c-2)),n=r[t],a=r[t+1];return Math.max(0,Math.min(c-1,t+(e-n)/(a-n)))},e.ab2ij=function(t){return[e.a2i(t[0]),e.b2j(t[1])]},e.i2c=function(t,r){return e.evalxy([],t,r)},e.ab2xy=function(n,i,a){if(!a&&(nt[u-1]|ir[c-1]))return[!1,!1];var o=e.a2i(n),s=e.b2j(i),l=e.evalxy([],o,s);if(a){var f,d,h,p,v=0,m=0,g=[];nt[u-1]?(f=u-2,d=1,v=(n-t[u-1])/(t[u-1]-t[u-2])):d=o-(f=Math.max(0,Math.min(u-2,Math.floor(o)))),ir[c-1]?(h=c-2,p=1,m=(i-r[c-1])/(r[c-1]-r[c-2])):p=s-(h=Math.max(0,Math.min(c-2,Math.floor(s)))),v&&(e.dxydi(g,f,h,d,p),l[0]+=g[0]*v,l[1]+=g[1]*v),m&&(e.dxydj(g,f,h,d,p),l[0]+=g[0]*m,l[1]+=g[1]*m)}return l},e.c2p=function(e,t,r){return[t.c2p(e[0]),r.c2p(e[1])]},e.p2x=function(e,t,r){return[t.p2c(e[0]),r.p2c(e[1])]},e.dadi=function(e){var r=Math.max(0,Math.min(t.length-2,e));return t[r+1]-t[r]},e.dbdj=function(e){var t=Math.max(0,Math.min(r.length-2,e));return r[t+1]-r[t]},e.dxyda=function(t,r,n,i){var a=e.dxydi(null,t,r,n,i),o=e.dadi(t,n);return[a[0]/o,a[1]/o]},e.dxydb=function(t,r,n,i){var a=e.dxydj(null,t,r,n,i),o=e.dbdj(r,i);return[a[0]/o,a[1]/o]},e.dxyda_rough=function(t,r,n){var i=g*(n||.1),a=e.ab2xy(t+i,r,!0),o=e.ab2xy(t-i,r,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},e.dxydb_rough=function(t,r,n){var i=y*(n||.1),a=e.ab2xy(t,r+i,!0),o=e.ab2xy(t,r-i,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},e.dpdx=function(e){return e._m},e.dpdy=function(e){return e._m}}},72505:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t,r){var i,a,o,s=[],l=[],u=e[0].length,c=e.length;function f(t,r){var n,i=0,a=0;return t>0&&void 0!==(n=e[r][t-1])&&(a++,i+=n),t0&&void 0!==(n=e[r-1][t])&&(a++,i+=n),r0&&a0&&i1e-5);return n.log("Smoother converged to",T,"after",M,"iterations"),e}},19237:function(e,t,r){"use strict";var n=r(71828).isArray1D;e.exports=function(e,t,r){var i=r("x"),a=i&&i.length,o=r("y"),s=o&&o.length;if(!a&&!s)return!1;if(t._cheater=!i,a&&!n(i)||s&&!n(o))t._length=null;else{var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),t.a&&t.a.length&&(l=Math.min(l,t.a.length)),t.b&&t.b.length&&(l=Math.min(l,t.b.length)),t._length=l}return!0}},69568:function(e,t,r){"use strict";var n=r(5386).fF,i=r(19316),a=r(50693),o=r(9012),s=r(22399).defaultLine,l=r(1426).extendFlat,u=i.marker.line;e.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({},u.color,{dflt:s}),width:l({},u.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:n(),showlegend:l({},o.showlegend,{dflt:!1})},a("",{cLetter:"z",editTypeOverride:"calc"}))},38675:function(e,t,r){"use strict";var n=r(92770),i=r(50606).BADNUM,a=r(78803),o=r(75225),s=r(66279);function l(e){return e&&"string"===typeof e}e.exports=function(e,t){var r,u=t._length,c=new Array(u);r=t.geojson?function(e){return l(e)||n(e)}:l;for(var f=0;f")}}(e,f,o),[e]}},51319:function(e,t,r){"use strict";e.exports={attributes:r(69568),supplyDefaults:r(61869),colorbar:r(61243),calc:r(38675),calcGeoJSON:r(99841).calcGeoJSON,plot:r(99841).plot,style:r(99636).style,styleOnSelect:r(99636).styleOnSelect,hoverPoints:r(42300),eventData:r(92069),selectPoints:r(81253),moduleType:"trace",name:"choropleth",basePlotModule:r(44622),categories:["geo","noOpacity","showLegend"],meta:{}}},99841:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(41327),o=r(90973).getTopojsonFeatures,s=r(71739).findExtremes,l=r(99636).style;e.exports={calcGeoJSON:function(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,l=r.locationmode,u=r._length,c="geojson-id"===l?a.extractTraceFeature(e):o(r,i.topojson),f=[],d=[],h=0;h=0;n--){var i=r[n].id;if("string"===typeof i&&0===i.indexOf("water"))for(var a=n+1;a=0;r--)e.removeLayer(t[r][1])},s.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},e.exports=function(e,t){var r=t[0].trace,i=new o(e,r.uid),a=i.sourceId,s=n(t),l=i.below=e.belowLookup["trace-"+r.uid];return e.map.addSource(a,{type:"geojson",data:s.geojson}),i._addLayers(s,l),t[0].trace._glTrace=i,i}},12674:function(e,t,r){"use strict";var n=r(50693),i=r(12663).axisHoverFormat,a=r(5386).fF,o=r(2418),s=r(9012),l=r(1426).extendFlat,u={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(u,n("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"})),["opacity","lightposition","lighting"].forEach((function(e){u[e]=o[e]})),u.hoverinfo=l({},s.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),u.transforms=void 0,e.exports=u},31371:function(e,t,r){"use strict";var n=r(78803);e.exports=function(e,t){for(var r=t.u,i=t.v,a=t.w,o=Math.min(t.x.length,t.y.length,t.z.length,r.length,i.length,a.length),s=-1/0,l=1/0,u=0;uo.level||o.starts.length&&a===o.level)}break;case"constraint":if(n.prefixBoundary=!1,n.edgepaths.length)return;var s=n.x.length,l=n.y.length,u=-1/0,c=1/0;for(r=0;r":h>u&&(n.prefixBoundary=!0);break;case"<":(hu||n.starts.length&&d===c)&&(n.prefixBoundary=!0);break;case"][":f=Math.min(h[0],h[1]),d=Math.max(h[0],h[1]),fu&&(n.prefixBoundary=!0)}}}},90654:function(e,t,r){"use strict";var n=r(21081),i=r(86068),a=r(53572);e.exports={min:"zmin",max:"zmax",calc:function(e,t,r){var o=t.contours,s=t.line,l=o.size||1,u=o.coloring,c=i(t,{isColorbar:!0});if("heatmap"===u){var f=n.extractOpts(t);r._fillgradient=f.reversescale?n.flipScale(f.colorscale):f.colorscale,r._zrange=[f.min,f.max]}else"fill"===u&&(r._fillcolor=c);r._line={color:"lines"===u?c:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},r._levels={start:o.start,end:a(o),size:l}}}},36914:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(92770),i=r(14523),a=r(7901),o=a.addOpacity,s=a.opacity,l=r(74808),u=l.CONSTRAINT_REDUCTION,c=l.COMPARISON_OPS2;e.exports=function(e,t,r,a,l,f){var d,h,p,v=t.contours,m=r("contours.operation");v._operation=u[m],function(e,t){var r;-1===c.indexOf(t.operation)?(e("contours.value",[0,1]),Array.isArray(t.value)?t.value.length>2?t.value=t.value.slice(2):0===t.length?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:n(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),n(t.value)||(Array.isArray(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}(r,v),"="===m?d=v.showlines=!0:(d=r("contours.showlines"),p=r("fillcolor",o((e.line||{}).color||l,.5))),d&&(h=r("line.color",p&&s(p)?o(t.fillcolor,1):l),r("line.width",2),r("line.dash")),r("line.smoothing"),i(r,a,h,f)}},64237:function(e,t,r){"use strict";var n=r(74808),i=r(92770);function a(e,t){var r,a=Array.isArray(t);function o(e){return i(e)?+e:null}return-1!==n.COMPARISON_OPS2.indexOf(e)?r=o(a?t[0]:t):-1!==n.INTERVAL_OPS.indexOf(e)?r=a?[o(t[0]),o(t[1])]:[o(t),o(t)]:-1!==n.SET_OPS.indexOf(e)&&(r=a?t.map(o):[o(t)]),r}function o(e){return function(t){t=a(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function s(e){return function(t){return{start:t=a(e,t),end:1/0,size:1/0}}}e.exports={"[]":o("[]"),"][":o("]["),">":s(">"),"<":s("<"),"=":s("=")}},67217:function(e){"use strict";e.exports=function(e,t,r,n){var i=n("contours.start"),a=n("contours.end"),o=!1===i||!1===a,s=r("contours.size");!(o?t.autocontour=!0:r("autocontour",!1))&&s||r("ncontours")}},84857:function(e,t,r){"use strict";var n=r(71828);function i(e){return n.extendFlat({},e,{edgepaths:n.extendDeep([],e.edgepaths),paths:n.extendDeep([],e.paths),starts:n.extendDeep([],e.starts)})}e.exports=function(e,t){var r,a,o,s=function(e){return e.reverse()},l=function(e){return e};switch(t){case"=":case"<":return e;case">":for(1!==e.length&&n.warn("Contour data invalid for the specified inequality operation."),a=e[0],r=0;r1e3){n.warn("Too many contours, clipping at 1000",e);break}return l}},53572:function(e){"use strict";e.exports=function(e){return e.end+e.size/1e6}},81696:function(e,t,r){"use strict";var n=r(71828),i=r(36914);function a(e,t,r,n){return Math.abs(e[0]-t[0])20&&t?208===e||1114===e?n=0===r[0]?1:-1:a=0===r[1]?1:-1:-1!==i.BOTTOMSTART.indexOf(e)?a=1:-1!==i.LEFTSTART.indexOf(e)?n=1:-1!==i.TOPSTART.indexOf(e)?a=-1:n=-1,[n,a]}(d,r,t),p=[l(e,t,[-h[0],-h[1]])],v=e.z.length,m=e.z[0].length,g=t.slice(),y=h.slice();for(c=0;c<1e4;c++){if(d>20?(d=i.CHOOSESADDLE[d][(h[0]||h[1])<0?0:1],e.crossings[f]=i.SADDLEREMAINDER[d]):delete e.crossings[f],!(h=i.NEWDELTA[d])){n.log("Found bad marching index:",d,t,e.level);break}p.push(l(e,t,h)),t[0]+=h[0],t[1]+=h[1],f=t.join(","),a(p[p.length-1],p[p.length-2],s,u)&&p.pop();var x=h[0]&&(t[0]<0||t[0]>m-2)||h[1]&&(t[1]<0||t[1]>v-2);if(t[0]===g[0]&&t[1]===g[1]&&h[0]===y[0]&&h[1]===y[1]||r&&x)break;d=e.crossings[f]}1e4===c&&n.log("Infinite loop in contour?");var b,_,w,k,T,M,A,S,E,C,L,P=a(p[0],p[p.length-1],s,u),O=0,I=.2*e.smoothing,D=[],R=0;for(c=1;c=R;c--)if((b=D[c])=R&&b+D[_]S&&E--,e.edgepaths[E]=L.concat(p,C));break}B||(e.edgepaths[S]=p.concat(C))}for(S=0;Se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);return 5===r||10===r?e>(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4?5===r?713:1114:5===r?104:208:15===r?0:r}e.exports=function(e){var t,r,a,o,s,l,u,c,f,d=e[0].z,h=d.length,p=d[0].length,v=2===h||2===p;for(r=0;r=0&&(n=y,s=l):Math.abs(r[1]-n[1])<.01?Math.abs(r[1]-y[1])<.01&&(y[0]-r[0])*(n[0]-y[0])>=0&&(n=y,s=l):i.log("endpt to newendpt is not vert. or horz.",r,n,y)}if(r=n,s>=0)break;f+="L"+n}if(s===e.edgepaths.length){i.log("unclosed perimeter path");break}d=s,(p=-1===h.indexOf(d))&&(d=h[0],f+="Z")}for(d=0;dn.center?n.right-s:s-n.left)/(c+Math.abs(Math.sin(u)*o)),h=(l>n.middle?n.bottom-l:l-n.top)/(Math.abs(f)+Math.cos(u)*o);if(d<1||h<1)return 1/0;var p=g.EDGECOST*(1/(d-1)+1/(h-1));p+=g.ANGLECOST*u*u;for(var v=s-c,m=l-f,y=s+c,x=l+f,b=0;b2*g.MAXCOST)break;h&&(s/=2),l=(o=u-s/2)+1.5*s}if(d<=g.MAXCOST)return c},t.addLabelData=function(e,t,r,n){var i=t.fontSize,a=t.width+i/3,o=Math.max(0,t.height-i/3),s=e.x,l=e.y,u=e.theta,c=Math.sin(u),f=Math.cos(u),d=function(e,t){return[s+e*f-t*c,l+e*c+t*f]},h=[d(-a/2,-o/2),d(-a/2,o/2),d(a/2,o/2),d(a/2,-o/2)];r.push({text:t.text,x:s,y:l,dy:t.dy,theta:u,level:t.level,width:a,height:o}),n.push(h)},t.drawLabels=function(e,t,r,a,o){var l=e.selectAll("text").data(t,(function(e){return e.text+","+e.x+","+e.y+","+e.theta}));if(l.exit().remove(),l.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each((function(e){var t=e.x+Math.sin(e.theta)*e.dy,i=e.y-Math.cos(e.theta)*e.dy;n.select(this).text(e.text).attr({x:t,y:i,transform:"rotate("+180*e.theta/Math.PI+" "+t+" "+i+")"}).call(s.convertToTspans,r)})),o){for(var u="",c=0;cr.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),i.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if("constraint"!==r.type){var u,c=r.start,f=r.end,d=e._input.contours;c>f&&(r.start=d.start=f,f=r.end=d.end=c,c=r.start),r.size>0||(u=c===f?1:a(c,f,e.ncontours).dtick,d.size=r.size=u)}}},84426:function(e,t,r){"use strict";var n=r(39898),i=r(91424),a=r(70035),o=r(86068);e.exports=function(e){var t=n.select(e).selectAll("g.contour");t.style("opacity",(function(e){return e[0].trace.opacity})),t.each((function(e){var t=n.select(this),r=e[0].trace,a=r.contours,s=r.line,l=a.size||1,u=a.start,c="constraint"===a.type,f=!c&&"lines"===a.coloring,d=!c&&"fill"===a.coloring,h=f||d?o(r):null;t.selectAll("g.contourlevel").each((function(e){n.select(this).selectAll("path").call(i.lineGroupStyle,s.width,f?h(e.level):s.color,s.dash)}));var p=a.labelfont;if(t.selectAll("g.contourlabels text").each((function(e){i.font(n.select(this),{family:p.family,size:p.size,color:p.color||(f?h(e.level):s.color)})})),c)t.selectAll("g.contourfill path").style("fill",r.fillcolor);else if(d){var v;t.selectAll("g.contourfill path").style("fill",(function(e){return void 0===v&&(v=e.level),h(e.level+.5*l)})),void 0===v&&(v=u),t.selectAll("g.contourbg path").style("fill",h(v-.5*l))}})),a(e)}},8724:function(e,t,r){"use strict";var n=r(1586),i=r(14523);e.exports=function(e,t,r,a,o){var s,l=r("contours.coloring"),u="";"fill"===l&&(s=r("contours.showlines")),!1!==s&&("lines"!==l&&(u=r("line.color","#000")),r("line.width",.5),r("line.dash")),"none"!==l&&(!0!==e.showlegend&&(t.showlegend=!1),t._dfltShowLegend=!1,n(e,t,a,r,{prefix:"",cLetter:"z"})),r("line.smoothing"),i(r,a,u,o)}},88085:function(e,t,r){"use strict";var n=r(21606),i=r(70600),a=r(50693),o=r(1426).extendFlat,s=i.contours;e.exports=o({carpet:{valType:"string",editType:"calc"},z:n.z,a:n.x,a0:n.x0,da:n.dx,b:n.y,b0:n.y0,db:n.dy,text:n.text,hovertext:n.hovertext,transpose:n.transpose,atype:n.xtype,btype:n.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(e,t,r){"use strict";var n=r(78803),i=r(71828),a=r(68296),o=r(4742),s=r(824),l=r(43907),u=r(70769),c=r(75005),f=r(22882),d=r(18670);e.exports=function(e,t){var r=t._carpetTrace=f(e,t);if(r&&r.visible&&"legendonly"!==r.visible){if(!t.a||!t.b){var h=e.data[r.index],p=e.data[t.index];p.a||(p.a=h.a),p.b||(p.b=h.b),c(p,t,t._defaultColor,e._fullLayout)}var v=function(e,t){var r,c,f,d,h,p,v,m=t._carpetTrace,g=m.aaxis,y=m.baxis;g._minDtick=0,y._minDtick=0,i.isArray1D(t.z)&&a(t,g,y,"a","b",["z"]),r=t._a=t._a||t.a,d=t._b=t._b||t.b,r=r?g.makeCalcdata(t,"_a"):[],d=d?y.makeCalcdata(t,"_b"):[],c=t.a0||0,f=t.da||1,h=t.b0||0,p=t.db||1,v=t._z=o(t._z||t.z,t.transpose),t._emptypoints=l(v),s(v,t._emptypoints);var x=i.maxRowLength(v),b="scaled"===t.xtype?"":r,_=u(t,b,c,f,x,g),w="scaled"===t.ytype?"":d,k=u(t,w,h,p,v.length,y),T={a:_,b:k,z:v};return"levels"===t.contours.type&&"none"!==t.contours.coloring&&n(e,t,{vals:v,containerStr:"",cLetter:"z"}),[T]}(e,t);return d(t,t._z),v}}},75005:function(e,t,r){"use strict";var n=r(71828),i=r(67684),a=r(88085),o=r(83179),s=r(67217),l=r(8724);e.exports=function(e,t,r,u){function c(r,i){return n.coerce(e,t,a,r,i)}if(c("carpet"),e.a&&e.b){if(!i(e,t,c,u,"a","b"))return void(t.visible=!1);c("text"),"constraint"===c("contours.type")?o(e,t,c,u,r,{hasHover:!1}):(s(e,t,c,(function(r){return n.coerce2(e,t,a,r)})),l(e,t,c,u,{hasHover:!1}))}else t._defaultColor=r,t._length=null}},93740:function(e,t,r){"use strict";e.exports={attributes:r(88085),supplyDefaults:r(75005),colorbar:r(90654),calc:r(59885),plot:r(51048),style:r(84426),moduleType:"trace",name:"contourcarpet",basePlotModule:r(93612),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}},51048:function(e,t,r){"use strict";var n=r(39898),i=r(27669),a=r(67961),o=r(91424),s=r(71828),l=r(87678),u=r(81696),c=r(29854),f=r(36914),d=r(84857),h=r(87558),p=r(20083),v=r(22882),m=r(4536);function g(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function y(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function x(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]);return Math.sqrt(1-r*r)/r}e.exports=function(e,t,r,b){var _=t.xaxis,w=t.yaxis;s.makeTraceGroups(b,r,"contour").each((function(r){var b=n.select(this),k=r[0],T=k.trace,M=T._carpetTrace=v(e,T),A=e.calcdata[M.index][0];if(M.visible&&"legendonly"!==M.visible){var S=k.a,E=k.b,C=T.contours,L=h(C,t,k),P="constraint"===C.type,O=C._operation,I=P?"="===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(L);var R=1e-8*(S[S.length-1]-S[0]),z=1e-8*(E[E.length-1]-E[0]);u(L,R,z);var F,N,B,j,U=L;"constraint"===C.type&&(U=d(L,O)),function(e,t){var r,n,i,a,o,s,l,u,c;for(r=0;r=0;j--)F=A.clipsegments[j],N=i([],F.x,_.c2p),B=i([],F.y,w.c2p),N.reverse(),B.reverse(),V.push(a(N,B,F.bicubic));var H="M"+V.join("L")+"Z";!function(e,t,r,n,o,l){var u,c,f,d,h=s.ensureSingle(e,"g","contourbg").selectAll("path").data("fill"!==l||o?[]:[0]);h.enter().append("path"),h.exit().remove();var p=[];for(d=0;d=0&&(d=C,p=v):Math.abs(f[1]-d[1])=0&&(d=C,p=v):s.log("endpt to newendpt is not vert. or horz.",f,d,C)}if(p>=0)break;y+=S(f,d),f=d}if(p===t.edgepaths.length){s.log("unclosed perimeter path");break}c=p,(b=-1===x.indexOf(c))&&(c=x[0],y+=S(f,d)+"Z",f=null)}for(c=0;cv&&(n.max=v),n.len=n.max-n.min}function m(e,t){var r,n=0,o=.1;return(Math.abs(e[0]-l)0?+h[c]:0),f.push({type:"Feature",geometry:{type:"Point",coordinates:g},properties:y})}}var b=o.extractOpts(t),_=b.reversescale?o.flipScale(b.colorscale):b.colorscale,w=_[0][1],k=["interpolate",["linear"],["heatmap-density"],0,a.opacity(w)<1?w:a.addOpacity(w,0)];for(c=1;c<_.length;c++)k.push(_[c][0],_[c][1]);var T=["interpolate",["linear"],["get","z"],b.min,0,b.max,1];return i.extendFlat(u.heatmap.paint,{"heatmap-weight":p?T:1/(b.max-b.min),"heatmap-color":k,"heatmap-radius":v?{type:"identity",property:"r"}:t.radius,"heatmap-opacity":t.opacity}),u.geojson={type:"FeatureCollection",features:f},u.heatmap.layout.visibility="visible",u}},79429:function(e,t,r){"use strict";var n=r(71828),i=r(1586),a=r(64096);e.exports=function(e,t,r,o){function s(r,i){return n.coerce(e,t,a,r,i)}var l=s("lon")||[],u=s("lat")||[],c=Math.min(l.length,u.length);c?(t._length=c,s("z"),s("radius"),s("below"),s("text"),s("hovertext"),s("hovertemplate"),i(e,t,o,s,{prefix:"",cLetter:"z"})):t.visible=!1}},62474:function(e){"use strict";e.exports=function(e,t){return e.lon=t.lon,e.lat=t.lat,e.z=t.z,e}},84684:function(e,t,r){"use strict";var n=r(89298),i=r(28178).hoverPoints,a=r(28178).getExtraText;e.exports=function(e,t,r){var o=i(e,t,r);if(o){var s=o[0],l=s.cd,u=l[0].trace,c=l[s.index];if(delete s.color,"z"in c){var f=s.subplot.mockAxis;s.z=c.z,s.zLabel=n.tickText(f,f.c2l(c.z),"hover").text}return s.extraText=a(u,c,l[0].t.labels),[s]}}},93814:function(e,t,r){"use strict";e.exports={attributes:r(64096),supplyDefaults:r(79429),colorbar:r(61243),formatLabels:r(15636),calc:r(85070),plot:r(7336),hoverPoints:r(84684),eventData:r(62474),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n=0;r--)e.removeLayer(t[r][1])},o.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},e.exports=function(e,t){var r=t[0].trace,i=new a(e,r.uid),o=i.sourceId,s=n(t),l=i.below=e.belowLookup["trace-"+r.uid];return e.map.addSource(o,{type:"geojson",data:s.geojson}),i._addLayers(s,l),i}},49789:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){for(var r=0;r"),l.color=function(e,t){var r=e.marker,i=t.mc||r.color,a=t.mlc||r.line.color,o=t.mlw||r.line.width;return n(i)?i:n(a)&&o?a:void 0}(c,d),[l]}}},51759:function(e,t,r){"use strict";e.exports={attributes:r(1285),layoutAttributes:r(10440),supplyDefaults:r(26199).supplyDefaults,crossTraceDefaults:r(26199).crossTraceDefaults,supplyLayoutDefaults:r(93138),calc:r(9532),crossTraceCalc:r(8984),plot:r(80461),style:r(68266).style,hoverPoints:r(63341),eventData:r(34598),selectPoints:r(81974),moduleType:"trace",name:"funnel",basePlotModule:r(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},10440:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(10440);e.exports=function(e,t,r){var a=!1;function o(r,a){return n.coerce(e,t,i,r,a)}for(var s=0;s path").each((function(e){if(!e.isBlank){var t=s.marker;n.select(this).call(a.fill,e.mc||t.color).call(a.stroke,e.mlc||t.line.color).call(i.dashLine,t.line.dash,e.mlw||t.line.width).style("opacity",s.selectedpoints&&!e.selected?o:1)}})),u(r,s,e),r.selectAll(".regions").each((function(){n.select(this).selectAll("path").style("stroke-width",0).call(a.fill,s.connector.fillcolor)})),r.selectAll(".lines").each((function(){var e=s.connector.line;i.lineGroupStyle(n.select(this).selectAll("path"),e.width,e.color,e.dash)}))}))}}},86807:function(e,t,r){"use strict";var n=r(34e3),i=r(9012),a=r(27670).Y,o=r(5386).fF,s=r(5386).si,l=r(1426).extendFlat;e.exports={labels:n.labels,label0:n.label0,dlabel:n.dlabel,values:n.values,marker:{colors:n.marker.colors,line:{color:l({},n.marker.line.color,{dflt:null}),width:l({},n.marker.line.width,{dflt:1}),editType:"calc"},editType:"calc"},text:n.text,hovertext:n.hovertext,scalegroup:l({},n.scalegroup,{}),textinfo:l({},n.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({},n.textposition,{values:["inside","none"],dflt:"inside"}),textfont:n.textfont,insidetextfont:n.insidetextfont,title:{text:n.title.text,font:n.title.font,position:l({},n.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(e,t,r){"use strict";var n=r(74875);t.name="funnelarea",t.plot=function(e,r,i,a){n.plotBasePlot(t.name,e,r,i,a)},t.clean=function(e,r,i,a){n.cleanBasePlot(t.name,e,r,i,a)}},89574:function(e,t,r){"use strict";var n=r(32354);e.exports={calc:function(e,t){return n.calc(e,t)},crossTraceCalc:function(e){n.crossTraceCalc(e,{type:"funnelarea"})}}},86282:function(e,t,r){"use strict";var n=r(71828),i=r(86807),a=r(27670).c,o=r(90769).handleText,s=r(37434).handleLabelsAndValues;e.exports=function(e,t,r,l){function u(r,a){return n.coerce(e,t,i,r,a)}var c=u("labels"),f=u("values"),d=s(c,f),h=d.len;if(t._hasLabels=d.hasLabels,t._hasValues=d.hasValues,!t._hasLabels&&t._hasValues&&(u("label0"),u("dlabel")),h){t._length=h,u("marker.line.width")&&u("marker.line.color",l.paper_bgcolor),u("marker.colors"),u("scalegroup");var p,v=u("text"),m=u("texttemplate");if(m||(p=u("textinfo",Array.isArray(v)?"text+percent":"percent")),u("hovertext"),u("hovertemplate"),m||p&&"none"!==p){var g=u("textposition");o(e,t,l,u,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}a(t,l,u),u("title.text")&&(u("title.position"),n.coerceFont(u,"title.font",l.font)),u("aspectratio"),u("baseratio")}else t.visible=!1}},10421:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"funnelarea",basePlotModule:r(6452),categories:["pie-like","funnelarea","showLegend"],attributes:r(86807),layoutAttributes:r(80097),supplyDefaults:r(86282),supplyLayoutDefaults:r(57402),calc:r(89574).calc,crossTraceCalc:r(89574).crossTraceCalc,plot:r(79187),style:r(71858),styleOne:r(63463),meta:{}}},80097:function(e,t,r){"use strict";var n=r(92774).hiddenlabels;e.exports={hiddenlabels:n,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57402:function(e,t,r){"use strict";var n=r(71828),i=r(80097);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}r("hiddenlabels"),r("funnelareacolorway",t.colorway),r("extendfunnelareacolors")}},79187:function(e,t,r){"use strict";var n=r(39898),i=r(91424),a=r(71828),o=a.strScale,s=a.strTranslate,l=r(63893),u=r(17295).toMoveInsideBar,c=r(72597),f=c.recordMinTextSize,d=c.clearMinTextSize,h=r(53581),p=r(14575),v=p.attachFxHandlers,m=p.determineInsideTextFont,g=p.layoutAreas,y=p.prerenderTitles,x=p.positionTitleOutside,b=p.formatSliceLabel;function _(e,t){return"l"+(t[0]-e[0])+","+(t[1]-e[1])}function w(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}e.exports=function(e,t){var r=e._context.staticPlot,c=e._fullLayout;d("funnelarea",c),y(t,e),g(t,c._size),a.makeTraceGroups(c._funnelarealayer,t,"trace").each((function(t){var d=n.select(this),p=t[0],g=p.trace;!function(e){if(e.length){var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a,o,s,l=Math.pow(i,2),u=t.vTotal,c=u,f=u*l/(1-l)/u,d=[];for(d.push(E()),o=e.length-1;o>-1;o--)if(!(s=e[o]).hidden){var h=s.v/c;f+=h,d.push(E())}var p=1/0,v=-1/0;for(o=0;o-1;o--)if(!(s=e[o]).hidden){var M=d[T+=1][0],A=d[T][1];s.TL=[-M,A],s.TR=[M,A],s.BL=_,s.BR=k,s.pxmid=w(s.TR,s.BR),_=s.TL,k=s.TR}}function S(){var e=Math.sqrt(f);return{x:e,y:-e}}function E(){var e=S();return[e.x,e.y]}}(t),d.each((function(){var d=n.select(this).selectAll("g.slice").data(t);d.enter().append("g").classed("slice",!0),d.exit().remove(),d.each((function(o,s){if(o.hidden)n.select(this).selectAll("path,g").remove();else{o.pointNumber=o.i,o.curveNumber=g.index;var d=p.cx,y=p.cy,x=n.select(this),w=x.selectAll("path.surface").data([o]);w.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),x.call(v,e,t);var k="M"+(d+o.TR[0])+","+(y+o.TR[1])+_(o.TR,o.BR)+_(o.BR,o.BL)+_(o.BL,o.TL)+"Z";w.attr("d",k),b(e,o,p);var T=h.castOption(g.textposition,o.pts),M=x.selectAll("g.slicetext").data(o.text&&"none"!==T?[0]:[]);M.enter().append("g").classed("slicetext",!0),M.exit().remove(),M.each((function(){var r=a.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),h=a.ensureUniformFontSize(e,m(g,o,c.font));r.text(o.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(i.font,h).call(l.convertToTspans,e);var p,v,x,b=i.bBox(r.node()),_=Math.min(o.BL[1],o.BR[1])+y,w=Math.max(o.TL[1],o.TR[1])+y;v=Math.max(o.TL[0],o.BL[0])+d,x=Math.min(o.TR[0],o.BR[0])+d,(p=u(v,x,_,w,b,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=h.size,f(g.type,p,c),t[s].transform=p,a.setTransormAndDisplay(r,p)}))}}));var y=n.select(this).selectAll("g.titletext").data(g.title.text?[0]:[]);y.enter().append("g").classed("titletext",!0),y.exit().remove(),y.each((function(){var t=a.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),r=g.title.text;g._meta&&(r=a.templateString(r,g._meta)),t.text(r).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(i.font,g.title.font).call(l.convertToTspans,e);var u=x(p,c._size);t.attr("transform",s(u.x,u.y)+o(Math.min(1,u.scale))+s(u.tx,u.ty))}))}))}))}},71858:function(e,t,r){"use strict";var n=r(39898),i=r(63463),a=r(72597).resizeText;e.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");a(e,t,"funnelarea"),t.each((function(e){var t=e[0].trace,r=n.select(this);r.style({opacity:t.opacity}),r.selectAll("path.surface").each((function(e){n.select(this).call(i,e,t)}))}))}},21606:function(e,t,r){"use strict";var n=r(82196),i=r(9012),a=r(41940),o=r(12663).axisHoverFormat,s=r(5386).fF,l=r(5386).si,u=r(50693),c=r(1426).extendFlat;e.exports=c({z:{valType:"data_array",editType:"calc"},x:c({},n.x,{impliedEdits:{xtype:"array"}}),x0:c({},n.x0,{impliedEdits:{xtype:"scaled"}}),dx:c({},n.dx,{impliedEdits:{xtype:"scaled"}}),y:c({},n.y,{impliedEdits:{ytype:"array"}}),y0:c({},n.y0,{impliedEdits:{ytype:"scaled"}}),dy:c({},n.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:c({},n.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:c({},n.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:c({},n.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:c({},n.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:c({},n.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:c({},n.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:c({},i.showlegend,{dflt:!1})},{transforms:void 0},u("",{cLetter:"z",autoColorDflt:!1}))},90757:function(e,t,r){"use strict";var n=r(73972),i=r(71828),a=r(89298),o=r(42973),s=r(17562),l=r(78803),u=r(68296),c=r(4742),f=r(824),d=r(43907),h=r(70769),p=r(50606).BADNUM;function v(e){for(var t=[],r=e.length,n=0;nR){I("x scale is not linear");break}}if(x.length&&"fast"===P){var z=(x[x.length-1]-x[0])/(x.length-1),F=Math.abs(z/100);for(T=0;TF){I("y scale is not linear");break}}}var N=i.maxRowLength(k),B="scaled"===t.xtype?"":r,j=h(t,B,m,g,N,A),U="scaled"===t.ytype?"":x,V=h(t,U,b,_,k.length,S);L||(t._extremes[A._id]=a.findExtremes(A,j),t._extremes[S._id]=a.findExtremes(S,V));var H={x:j,y:V,z:k,text:t._text||t.text,hovertext:t._hovertext||t.hovertext};if(t.xperiodalignment&&y&&(H.orig_x=y),t.yperiodalignment&&w&&(H.orig_y=w),B&&B.length===j.length-1&&(H.xCenter=B),U&&U.length===V.length-1&&(H.yCenter=U),C&&(H.xRanges=M.xRanges,H.yRanges=M.yRanges,H.pts=M.pts),E||l(e,t,{vals:k,cLetter:"z"}),E&&t.contours&&"heatmap"===t.contours.coloring){var q={type:"contour"===t.type?"heatmap":"histogram2d",xcalendar:t.xcalendar,ycalendar:t.ycalendar};H.xfill=h(q,B,m,g,N,A),H.yfill=h(q,U,b,_,k.length,S)}return[H]}},4742:function(e,t,r){"use strict";var n=r(92770),i=r(71828),a=r(50606).BADNUM;e.exports=function(e,t,r,o){var s,l,u,c,f,d;function h(e){if(n(e))return+e}if(t&&t.transpose){for(s=0,f=0;f=0;o--)(s=((f[[(r=(a=d[o])[0])-1,i=a[1]]]||v)[2]+(f[[r+1,i]]||v)[2]+(f[[r,i-1]]||v)[2]+(f[[r,i+1]]||v)[2])/20)&&(l[a]=[r,i,s],d.splice(o,1),u=!0);if(!u)throw"findEmpties iterated with no new neighbors";for(a in l)f[a]=l[a],c.push(l[a])}return c.sort((function(e,t){return t[2]-e[2]}))}},46248:function(e,t,r){"use strict";var n=r(30211),i=r(71828),a=r(89298),o=r(21081).extractOpts;e.exports=function(e,t,r,s,l){l||(l={});var u,c,f,d,h=l.isContour,p=e.cd[0],v=p.trace,m=e.xa,g=e.ya,y=p.x,x=p.y,b=p.z,_=p.xCenter,w=p.yCenter,k=p.zmask,T=v.zhoverformat,M=y,A=x;if(!1!==e.index){try{f=Math.round(e.index[1]),d=Math.round(e.index[0])}catch(B){return void i.error("Error hovering on heatmap, pointNumber must be [row,col], found:",e.index)}if(f<0||f>=b[0].length||d<0||d>b.length)return}else{if(n.inbox(t-y[0],t-y[y.length-1],0)>0||n.inbox(r-x[0],r-x[x.length-1],0)>0)return;if(h){var S;for(M=[2*y[0]-y[1]],S=1;Sv&&(g=Math.max(g,Math.abs(e[a][o]-p)/(m-v))))}return g}e.exports=function(e,t){var r,i=1;for(o(e,t),r=0;r.01;r++)i=o(e,t,a(i));return i>.01&&n.log("interp2d didn't converge quickly",i),e}},58623:function(e,t,r){"use strict";var n=r(71828);e.exports=function(e,t){e("texttemplate");var r=n.extendFlat({},t.font,{color:"auto",size:"auto"});n.coerceFont(e,"textfont",r)}},70769:function(e,t,r){"use strict";var n=r(73972),i=r(71828).isArrayOrTypedArray;e.exports=function(e,t,r,a,o,s){var l,u,c,f=[],d=n.traceIs(e,"contour"),h=n.traceIs(e,"histogram"),p=n.traceIs(e,"gl2d");if(i(t)&&t.length>1&&!h&&"category"!==s.type){var v=t.length;if(!(v<=o))return d?t.slice(0,o):t.slice(0,o+1);if(d||p)f=t.slice(0,o);else if(1===o)f=[t[0]-.5,t[0]+.5];else{for(f=[1.5*t[0]-.5*t[1]],c=1;c0;)w=k.c2p(F[E]),E--;for(w0;)S=T.c2p(N[E]),E--;if(SGe||Ge>T._length))for(C=Ve;CZe||Ze>k._length)){var Xe=c({x:Ye,y:We},I,e._fullLayout);Xe.x=Ye,Xe.y=We;var Ke=O.z[E][C];void 0===Ke?(Xe.z="",Xe.zLabel=""):(Xe.z=Ke,Xe.zLabel=s.tickText(Ne,Ke,"hover").text);var $e=O.text&&O.text[E]&&O.text[E][C];void 0!==$e&&!1!==$e||($e=""),Xe.text=$e;var Je=l.texttemplateString(ze,Xe,e._fullLayout._d3locale,Xe,I._meta||{});if(Je){var Qe=Je.split("
"),et=Qe.length,tt=0;for(L=0;L0&&(a=!0);for(var l=0;la){var o=a-r[e];return r[e]=a,o}}return 0},max:function(e,t,r,i){var a=i[t];if(n(a)){if(a=Number(a),!n(r[e]))return r[e]=a,a;if(r[e]u?e>o?e>1.1*i?i:e>1.1*a?a:o:e>s?s:e>l?l:u:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function h(e,t,r,n,a,s){if(n&&e>o){var l=p(t,a,s),u=p(r,a,s),c=e===i?0:1;return l[c]!==u[c]}return Math.floor(r/e)-Math.floor(t/e)>.1}function p(e,t,r){var n=t.c2d(e,i,r).split("-");return""===n[0]&&(n.unshift(),n[0]="-"+n[0]),n}e.exports=function(e,t,r,n,a){var s,l,u=-1.1*t,d=-.1*t,h=e-d,p=r[0],v=r[1],m=Math.min(f(p+d,p+h,n,a),f(v+d,v+h,n,a)),g=Math.min(f(p+u,p+d,n,a),f(v+u,v+d,n,a));if(m>g&&go){var y=s===i?1:6,x=s===i?"M12":"M1";return function(t,r){var o=n.c2d(t,i,a),s=o.indexOf("-",y);s>0&&(o=o.substr(0,s));var u=n.d2c(o,0,a);if(ur.r2l(N)&&(j=o.tickIncrement(j,b.size,!0,h)),D.start=r.l2r(j),F||i.nestedProperty(t,g+".start").set(D.start)}var U=b.end,V=r.r2l(I.end),H=void 0!==V;if((b.endFound||H)&&V!==r.r2l(U)){var q=H?V:i.aggNums(Math.max,null,p);D.end=r.l2r(q),H||i.nestedProperty(t,g+".start").set(D.end)}var W="autobin"+s;return!1===t._input[W]&&(t._input[g]=i.extendFlat({},t[g]||{}),delete t._input[W],delete t[W]),[D,p]}e.exports={calc:function(e,t){var r,a,h,p,v=[],m=[],g="h"===t.orientation,y=o.getFromId(e,g?t.yaxis:t.xaxis),x=g?"y":"x",b={x:"y",y:"x"}[x],_=t[x+"calendar"],w=t.cumulative,k=d(e,t,y,x),T=k[0],M=k[1],A="string"===typeof T.size,S=[],E=A?S:T,C=[],L=[],P=[],O=0,I=t.histnorm,D=t.histfunc,R=-1!==I.indexOf("density");w.enabled&&R&&(I=I.replace(/ ?density$/,""),R=!1);var z,F="max"===D||"min"===D?null:0,N=l.count,B=u[I],j=!1,U=function(e){return y.r2c(e,0,_)};for(i.isArrayOrTypedArray(t[b])&&"count"!==D&&(z=t[b],j="avg"===D,N=l[D]),r=U(T.start),h=U(T.end)+(r-o.tickIncrement(r,T.size,!1,_))/1e6;r=0&&p=0;n--)s(n);else if("increasing"===t){for(n=1;n=0;n--)e[n]+=e[n+1];"exclude"===r&&(e.push(0),e.shift())}}(m,w.direction,w.currentbin);var $=Math.min(v.length,m.length),J=[],Q=0,ee=$-1;for(r=0;r<$;r++)if(m[r]){Q=r;break}for(r=$-1;r>=Q;r--)if(m[r]){ee=r;break}for(r=Q;r<=ee;r++)if(n(v[r])&&n(m[r])){var te={p:v[r],s:m[r],b:0};w.enabled||(te.pts=P[r],G?te.ph0=te.ph1=P[r].length?M[P[r][0]]:v[r]:(t._computePh=!0,te.ph0=q(S[r]),te.ph1=q(S[r+1],!0))),J.push(te)}return 1===J.length&&(J[0].width1=o.tickIncrement(J[0].p,T.size,!1,_)-J[0].p),s(J,t),i.isArrayOrTypedArray(t.selectedpoints)&&i.tagSelected(J,t,X),J},calcAllAutoBins:d}},72406:function(e){"use strict";e.exports={eventDataKeys:["binNumber"]}},82222:function(e,t,r){"use strict";var n=r(71828),i=r(41675),a=r(73972).traceIs,o=r(26125),s=n.nestedProperty,l=r(99082).getAxisGroup,u=[{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"}],c=["x","y"];e.exports=function(e,t){var r,f,d,h,p,v,m,g=t._histogramBinOpts={},y=[],x={},b=[];function _(e,t){return n.coerce(r._input,r,r._module.attributes,e,t)}function w(e){return"v"===e.orientation?"x":"y"}function k(e,r,a){var o=e.uid+"__"+a;r||(r=o);var s=function(e,r){return i.getFromTrace({_fullLayout:t},e,r).type}(e,a),l=e[a+"calendar"]||"",u=g[r],c=!0;u&&(s===u.axType&&l===u.calendar?(c=!1,u.traces.push(e),u.dirs.push(a)):(r=o,s!==u.axType&&n.warn(["Attempted to group the bins of trace",e.index,"set on a","type:"+s,"axis","with bins on","type:"+u.axType,"axis."].join(" ")),l!==u.calendar&&n.warn(["Attempted to group the bins of trace",e.index,"set with a",l,"calendar","with bins",u.calendar?"on a "+u.calendar+" calendar":"w/o a set calendar"].join(" ")))),c&&(g[r]={traces:[e],dirs:[a],axType:s,calendar:e[a+"calendar"]||""}),e["_"+a+"bingroup"]=r}for(p=0;pS&&k.splice(S,k.length-S),A.length>S&&A.splice(S,A.length-S);var E=[],C=[],L=[],P="string"===typeof w.size,O="string"===typeof M.size,I=[],D=[],R=P?I:w,z=O?D:M,F=0,N=[],B=[],j=t.histnorm,U=t.histfunc,V=-1!==j.indexOf("density"),H="max"===U||"min"===U?null:0,q=a.count,W=o[j],G=!1,Y=[],Z=[],X="z"in t?t.z:"marker"in t&&Array.isArray(t.marker.color)?t.marker.color:"";X&&"count"!==U&&(G="avg"===U,q=a[U]);var K=w.size,$=x(w.start),J=x(w.end)+($-i.tickIncrement($,K,!1,g))/1e6;for(r=$;r=0&&h=0&&p-1,flipY:L.tiling.flip.indexOf("y")>-1,orientation:L.tiling.orientation,pad:{inner:L.tiling.pad},maxDepth:L._maxDepth}).descendants(),R=1/0,z=-1/0;D.forEach((function(e){var t=e.depth;t>=L._maxDepth?(e.x0=e.x1=(e.x0+e.x1)/2,e.y0=e.y1=(e.y0+e.y1)/2):(R=Math.min(R,t),z=Math.max(z,t))})),p=p.data(D,c.getPtId),L._maxVisibleLayers=isFinite(z)?z-R+1:0,p.enter().append("g").classed("slice",!0),T(p,h,{},[m,g],b),p.order();var F=null;if(k&&S){var N=c.getPtId(S);p.each((function(e){null===F&&c.getPtId(e)===N&&(F={x0:e.x0,x1:e.x1,y0:e.y0,y1:e.y1})}))}var B=function(){return F||{x0:0,x1:m,y0:0,y1:g}},j=p;return k&&(j=j.transition().each("end",(function(){var t=n.select(this);c.setSliceCursor(t,e,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),j.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=y(s.x1-L.tiling.pad),s._hoverY=x(I?s.y1-L.tiling.pad/2:s.y0+L.tiling.pad/2);var p=n.select(this),v=i.ensureSingle(p,"path","surface",(function(e){e.style("pointer-events",E?"none":"all")}));k?v.transition().attrTween("d",(function(e){var t=M(e,h,B(),[m,g],{orientation:L.tiling.orientation,flipX:L.tiling.flip.indexOf("x")>-1,flipY:L.tiling.flip.indexOf("y")>-1});return function(e){return b(t(e))}})):v.attr("d",b),p.call(f,r,e,t,{styleOne:l,eventDataKeys:u.eventDataKeys,transitionTime:u.CLICK_TRANSITION_TIME,transitionEasing:u.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,e,{isTransitioning:e._transitioning}),v.call(l,s,L,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=d(s,r,L,t,C)||"";var T=i.ensureSingle(p,"g","slicetext"),S=i.ensureSingle(T,"text","",(function(e){e.attr("data-notex",1)})),D=i.ensureUniformFontSize(e,c.determineTextFont(L,s,C.font));S.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":P?"start":"middle").call(a.font,D).call(o.convertToTspans,e),s.textBB=a.bBox(S.node()),s.transform=_(s,{fontSize:D.size}),s.transform.fontSize=D.size,k?S.transition().attrTween("transform",(function(e){var t=A(e,h,B(),[m,g]);return function(e){return w(t(e))}})):S.attr("transform",w(s))})),F}},69816:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"icicle",basePlotModule:r(96346),categories:[],animatable:!0,attributes:r(46291),layoutAttributes:r(92894),supplyDefaults:r(56524),supplyLayoutDefaults:r(21070),calc:r(46584).y,crossTraceCalc:r(46584).T,plot:r(85596),style:r(82454).style,colorbar:r(4898),meta:{}}},92894:function(e){"use strict";e.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},21070:function(e,t,r){"use strict";var n=r(71828),i=r(92894);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}r("iciclecolorway",t.colorway),r("extendiciclecolors")}},21538:function(e,t,r){"use strict";var n=r(674),i=r(14102);e.exports=function(e,t,r){var a=r.flipX,o=r.flipY,s="h"===r.orientation,l=r.maxDepth,u=t[0],c=t[1];l&&(u=(e.height+1)*t[0]/Math.min(e.height+1,l),c=(e.height+1)*t[1]/Math.min(e.height+1,l));var f=n.partition().padding(r.pad.inner).size(s?[t[1],u]:[t[0],c])(e);return(s||a||o)&&i(f,t,{swapXY:s,flipX:a,flipY:o}),f}},85596:function(e,t,r){"use strict";var n=r(80694),i=r(90666);e.exports=function(e,t,r,a){return n(e,t,r,a,{type:"icicle",drawDescendants:i})}},82454:function(e,t,r){"use strict";var n=r(39898),i=r(7901),a=r(71828),o=r(72597).resizeText;function s(e,t,r){var n=t.data.data,o=!t.children,s=n.i,l=a.castOption(r,s,"marker.line.color")||i.defaultLine,u=a.castOption(r,s,"marker.line.width")||0;e.style("stroke-width",u).call(i.fill,n.color).call(i.stroke,l).style("opacity",o?r.leaf.opacity:null)}e.exports={style:function(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");o(e,t,"icicle"),t.each((function(e){var t=n.select(this),r=e[0].trace;t.style("opacity",r.opacity),t.selectAll("path.surface").each((function(e){n.select(this).call(s,e,r)}))}))},styleOne:s}},17230:function(e,t,r){"use strict";for(var n=r(9012),i=r(5386).fF,a=r(1426).extendFlat,o=r(51877).colormodel,s=["rgb","rgba","rgba256","hsl","hsla"],l=[],u=[],c=0;c0||n.inbox(r-o.y0,r-(o.y0+o.h*s.dy),0)>0)){var c,f=Math.floor((t-o.x0)/s.dx),d=Math.floor(Math.abs(r-o.y0)/s.dy);if(s._hasZ?c=o.z[d][f]:s._hasSource&&(c=s._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(f,d,1,1).data),c){var h,p=o.hi||s.hoverinfo;if(p){var v=p.split("+");-1!==v.indexOf("all")&&(v=["color"]),-1!==v.indexOf("color")&&(h=!0)}var m,g=a.colormodel[s.colormodel],y=g.colormodel||s.colormodel,x=y.length,b=s._scaler(c),_=g.suffix,w=[];(s.hovertemplate||h)&&(w.push("["+[b[0]+_[0],b[1]+_[1],b[2]+_[2]].join(", ")),4===x&&w.push(", "+b[3]+_[3]),w.push("]"),w=w.join(""),e.extraText=y.toUpperCase()+": "+w),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[d])?m=s.hovertext[d][f]:Array.isArray(s.text)&&Array.isArray(s.text[d])&&(m=s.text[d][f]);var k=u.c2p(o.y0+(d+.5)*s.dy),T=o.x0+(f+.5)*s.dx,M=o.y0+(d+.5)*s.dy,A="["+c.slice(0,s.colormodel.length).join(", ")+"]";return[i.extendFlat(e,{index:[d,f],x0:l.c2p(o.x0+f*s.dx),x1:l.c2p(o.x0+(f+1)*s.dx),y0:k,y1:k,color:b,xVal:T,xLabelVal:T,yVal:M,yLabelVal:M,zLabelVal:A,text:m,hovertemplateLabels:{zLabel:A,colorLabel:w,"color[0]Label":b[0]+_[0],"color[1]Label":b[1]+_[1],"color[2]Label":b[2]+_[2],"color[3]Label":b[3]+_[3]}})]}}}},94507:function(e,t,r){"use strict";e.exports={attributes:r(17230),supplyDefaults:r(13245),calc:r(71113),plot:r(60775),style:r(12826),hoverPoints:r(28749),eventData:r(30835),moduleType:"trace",name:"image",basePlotModule:r(93612),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}},60775:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.strTranslate,o=r(77922),s=r(51877),l=i.isIOS()||i.isSafari()||i.isIE();e.exports=function(e,t,r,u){var c=t.xaxis,f=t.yaxis,d=!(l||e._context._exportedPlot);i.makeTraceGroups(u,r,"im").each((function(t){var r=n.select(this),l=t[0],u=l.trace,h=("fast"===u.zsmooth||!1===u.zsmooth&&d)&&!u._hasZ&&u._hasSource&&"linear"===c.type&&"linear"===f.type;u._realImage=h;var p,v,m,g,y,x,b=l.z,_=l.x0,w=l.y0,k=l.w,T=l.h,M=u.dx,A=u.dy;for(x=0;void 0===p&&x0;)v=c.c2p(_+x*M),x--;for(x=0;void 0===g&&x0;)y=f.c2p(w+x*A),x--;vO[0];if(I||D){var R=p+S/2,z=g+E/2;L+="transform:"+a(R+"px",z+"px")+"scale("+(I?-1:1)+","+(D?-1:1)+")"+a(-R+"px",-z+"px")+";"}}C.attr("style",L);var F=new Promise((function(e){if(u._hasZ)e();else if(u._hasSource)if(u._canvas&&u._canvas.el.width===k&&u._canvas.el.height===T&&u._canvas.source===u.source)e();else{var t=document.createElement("canvas");t.width=k,t.height=T;var r=t.getContext("2d",{willReadFrequently:!0});u._image=u._image||new Image;var n=u._image;n.onload=function(){r.drawImage(n,0,0),u._canvas={el:t,source:u.source},e()},n.setAttribute("src",u.source)}})).then((function(){var e,t;if(u._hasZ)t=N((function(e,t){return b[t][e]})),e=t.toDataURL("image/png");else if(u._hasSource)if(h)e=u.source;else{var r=u._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,k,T).data;t=N((function(e,t){var n=4*(t*k+e);return[r[n],r[n+1],r[n+2],r[n+3]]})),e=t.toDataURL("image/png")}C.attr({"xlink:href":e,height:E,width:S,x:p,y:g})}));e._promises.push(F)}function N(e){var t=document.createElement("canvas");t.width=S,t.height=E;var r,n=t.getContext("2d",{willReadFrequently:!0}),a=function(e){return i.constrain(Math.round(c.c2p(_+e*M)-p),0,S)},o=function(e){return i.constrain(Math.round(f.c2p(w+e*A)-g),0,E)},d=s.colormodel[u.colormodel],h=d.colormodel||u.colormodel,v=d.fmt;for(x=0;x0}function k(e){e.each((function(e){y.stroke(n.select(this),e.line.color)})).each((function(e){y.fill(n.select(this),e.color)})).style("stroke-width",(function(e){return e.line.width}))}function T(e,t,r){var n=e._fullLayout,i=o.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},s={letter:"x",font:n.font,noHover:!0,noTickson:!0};function l(e,t){return o.coerce(i,a,g,e,t)}return v(i,a,l,s,n),m(i,a,l,s),a}function M(e,t,r){return[Math.min(t/e.width,r/e.height),e,t+"x"+r]}function A(e,t,r,i){var a=document.createElementNS("http://www.w3.org/2000/svg","text"),o=n.select(a);return o.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(h.convertToTspans,i).call(f.font,t),f.bBox(o.node())}function S(e,t,r,n,i,a){var s="_cache"+t;e[s]&&e[s].key===i||(e[s]={key:i,value:r});var l=o.aggNums(a,null,[e[s].value,n],2);return e[s].value=l,l}e.exports=function(e,t,r,v){var m,g=e._fullLayout;w(r)&&v&&(m=v()),o.makeTraceGroups(g._indicatorlayer,t,"trace").each((function(t){var v,E,C,L,P,O=t[0].trace,I=n.select(this),D=O._hasGauge,R=O._isAngular,z=O._isBullet,F=O.domain,N={w:g._size.w*(F.x[1]-F.x[0]),h:g._size.h*(F.y[1]-F.y[0]),l:g._size.l+g._size.w*F.x[0],r:g._size.r+g._size.w*(1-F.x[1]),t:g._size.t+g._size.h*(1-F.y[1]),b:g._size.b+g._size.h*F.y[0]},B=N.l+N.w/2,j=N.t+N.h/2,U=Math.min(N.w/2,N.h),V=d.innerRadius*U,H=O.align||"center";if(E=j,D){if(R&&(v=B,E=j+U/2,C=function(e){return function(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}(e,.9*V)}),z){var q=d.bulletPadding,W=1-d.bulletNumberDomainSize+q;v=N.l+(W+(1-W)*b[H])*N.w,C=function(e){return M(e,(d.bulletNumberDomainSize-q)*N.w,N.h)}}}else v=N.l+b[H]*N.w,C=function(e){return M(e,N.w,N.h)};!function(e,t,r,i){var u,c,d,v=r[0].trace,m=i.numbersX,g=i.numbersY,k=v.align||"center",M=x[k],E=i.transitionOpts,C=i.onComplete,L=o.ensureSingle(t,"g","numbers"),P=[];v._hasNumber&&P.push("number"),v._hasDelta&&(P.push("delta"),"left"===v.delta.position&&P.reverse());var O=L.selectAll("text").data(P);function I(t,r,n,i){if(!t.match("s")||n>=0===i>=0||r(n).slice(-1).match(_)||r(i).slice(-1).match(_))return r;var a=t.slice().replace("s","f").replace(/\d+/,(function(e){return parseInt(e)-1})),o=T(e,{tickformat:a});return function(e){return Math.abs(e)<1?p.tickText(o,e).text:r(e)}}function D(){var t=T(e,{tickformat:v.number.valueformat},v._range);t.setScale(),p.prepTicks(t);var i=function(e){return p.tickText(t,e).text},o=v.number.suffix,s=v.number.prefix,l=L.select("text.number");function c(){var t="number"===typeof r[0].y?s+i(r[0].y)+o:"-";l.text(t).call(f.font,v.number.font).call(h.convertToTspans,e)}return w(E)?l.transition().duration(E.duration).ease(E.easing).each("end",(function(){c(),C&&C()})).each("interrupt",(function(){c(),C&&C()})).attrTween("text",(function(){var e=n.select(this),t=a(r[0].lastY,r[0].y);v._lastValue=r[0].y;var l=I(v.number.valueformat,i,r[0].lastY,r[0].y);return function(r){e.text(s+l(t(r))+o)}})):c(),u=A(s+i(r[0].y)+o,v.number.font,M,e),l}function R(){var t=T(e,{tickformat:v.delta.valueformat},v._range);t.setScale(),p.prepTicks(t);var i=function(e){return p.tickText(t,e).text},o=v.delta.suffix,s=v.delta.prefix,l=function(e){return v.delta.relative?e.relativeDelta:e.delta},u=function(e,t){return 0===e||"number"!==typeof e||isNaN(e)?"-":(e>0?v.delta.increasing.symbol:v.delta.decreasing.symbol)+s+t(e)+o},d=function(e){return e.delta>=0?v.delta.increasing.color:v.delta.decreasing.color};void 0===v._deltaLastValue&&(v._deltaLastValue=l(r[0]));var m=L.select("text.delta");function g(){m.text(u(l(r[0]),i)).call(y.fill,d(r[0])).call(h.convertToTspans,e)}return m.call(f.font,v.delta.font).call(y.fill,d({delta:v._deltaLastValue})),w(E)?m.transition().duration(E.duration).ease(E.easing).tween("text",(function(){var e=n.select(this),t=l(r[0]),o=v._deltaLastValue,s=I(v.delta.valueformat,i,o,t),c=a(o,t);return v._deltaLastValue=t,function(t){e.text(u(c(t),s)),e.call(y.fill,d({delta:c(t)}))}})).each("end",(function(){g(),C&&C()})).each("interrupt",(function(){g(),C&&C()})):g(),c=A(u(l(r[0]),i),v.delta.font,M,e),m}O.enter().append("text"),O.attr("text-anchor",(function(){return M})).attr("class",(function(e){return e})).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),O.exit().remove();var z,F=v.mode+v.align;if(v._hasDelta&&(z=R(),F+=v.delta.position+v.delta.font.size+v.delta.font.family+v.delta.valueformat,F+=v.delta.increasing.symbol+v.delta.decreasing.symbol,d=c),v._hasNumber&&(D(),F+=v.number.font.size+v.number.font.family+v.number.valueformat+v.number.suffix+v.number.prefix,d=u),v._hasDelta&&v._hasNumber){var N,B,j=[(u.left+u.right)/2,(u.top+u.bottom)/2],U=[(c.left+c.right)/2,(c.top+c.bottom)/2],V=.75*v.delta.font.size;"left"===v.delta.position&&(N=S(v,"deltaPos",0,-1*(u.width*b[v.align]+c.width*(1-b[v.align])+V),F,Math.min),B=j[1]-U[1],d={width:u.width+c.width+V,height:Math.max(u.height,c.height),left:c.left+N,right:u.right,top:Math.min(u.top,c.top+B),bottom:Math.max(u.bottom,c.bottom+B)}),"right"===v.delta.position&&(N=S(v,"deltaPos",0,u.width*(1-b[v.align])+c.width*b[v.align]+V,F,Math.max),B=j[1]-U[1],d={width:u.width+c.width+V,height:Math.max(u.height,c.height),left:u.left,right:c.right+N,top:Math.min(u.top,c.top+B),bottom:Math.max(u.bottom,c.bottom+B)}),"bottom"===v.delta.position&&(N=null,B=c.height,d={width:Math.max(u.width,c.width),height:u.height+c.height,left:Math.min(u.left,c.left),right:Math.max(u.right,c.right),top:u.bottom-u.height,bottom:u.bottom+c.height}),"top"===v.delta.position&&(N=null,B=u.top,d={width:Math.max(u.width,c.width),height:u.height+c.height,left:Math.min(u.left,c.left),right:Math.max(u.right,c.right),top:u.bottom-u.height-c.height,bottom:u.bottom}),z.attr({dx:N,dy:B})}(v._hasNumber||v._hasDelta)&&L.attr("transform",(function(){var e=i.numbersScaler(d);F+=e[2];var t,r=S(v,"numbersScale",1,e[0],F,Math.min);v._scaleNumbers||(r=1),t=v._isAngular?g-r*d.bottom:g-r*(d.top+d.bottom)/2,v._numbersTop=r*d.top+t;var n=d[k];"center"===k&&(n=(d.left+d.right)/2);var a=m-r*n;return a=S(v,"numbersTranslate",0,a,F,Math.max),l(a,t)+s(r)}))}(e,I,t,{numbersX:v,numbersY:E,numbersScaler:C,transitionOpts:r,onComplete:m}),D&&(L={range:O.gauge.axis.range,color:O.gauge.bgcolor,line:{color:O.gauge.bordercolor,width:0},thickness:1},P={range:O.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:O.gauge.bordercolor,width:O.gauge.borderwidth},thickness:1});var G=I.selectAll("g.angular").data(R?t:[]);G.exit().remove();var Y=I.selectAll("g.angularaxis").data(R?t:[]);Y.exit().remove(),R&&function(e,t,r,a){var o,s,f,d,h=r[0].trace,v=a.size,m=a.radius,g=a.innerRadius,y=a.gaugeBg,x=a.gaugeOutline,b=[v.l+v.w/2,v.t+v.h/2+m/2],_=a.gauge,M=a.layer,A=a.transitionOpts,S=a.onComplete,E=Math.PI/2;function C(e){var t=h.gauge.axis.range[0],r=(e-t)/(h.gauge.axis.range[1]-t)*Math.PI-E;return r<-E?-E:r>E?E:r}function L(e){return n.svg.arc().innerRadius((g+m)/2-e/2*(m-g)).outerRadius((g+m)/2+e/2*(m-g)).startAngle(-E)}function P(e){e.attr("d",(function(e){return L(e.thickness).startAngle(C(e.range[0])).endAngle(C(e.range[1]))()}))}_.enter().append("g").classed("angular",!0),_.attr("transform",l(b[0],b[1])),M.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),M.selectAll("g.xangularaxistick,path,text").remove(),(o=T(e,h.gauge.axis)).type="linear",o.range=h.gauge.axis.range,o._id="xangularaxis",o.ticklabeloverflow="allow",o.setScale();var O=function(e){return(o.range[0]-e.x)/(o.range[1]-o.range[0])*Math.PI+Math.PI},I={},D=p.makeLabelFns(o,0).labelStandoff;I.xFn=function(e){var t=O(e);return Math.cos(t)*D},I.yFn=function(e){var t=O(e),r=Math.sin(t)>0?.2:1;return-Math.sin(t)*(D+e.fontSize*r)+Math.abs(Math.cos(t))*(e.fontSize*c)},I.anchorFn=function(e){var t=O(e),r=Math.cos(t);return Math.abs(r)<.1?"middle":r>0?"start":"end"},I.heightFn=function(e,t,r){var n=O(e);return-.5*(1+Math.sin(n))*r};var R=function(e){return l(b[0]+m*Math.cos(e),b[1]-m*Math.sin(e))};f=function(e){return R(O(e))};var z=function(e){var t=O(e);return R(t)+"rotate("+-u(t)+")"};if(s=p.calcTicks(o),d=p.getTickSigns(o)[2],o.visible){d="inside"===o.ticks?-1:1;var F=(o.linewidth||1)/2;p.drawTicks(e,o,{vals:s,layer:M,path:"M"+d*F+",0h"+d*o.ticklen,transFn:z}),p.drawLabels(e,o,{vals:s,layer:M,transFn:f,labelFns:I})}var N=[y].concat(h.gauge.steps),B=_.selectAll("g.bg-arc").data(N);B.enter().append("g").classed("bg-arc",!0).append("path"),B.select("path").call(P).call(k),B.exit().remove();var j=L(h.gauge.bar.thickness),U=_.selectAll("g.value-arc").data([h.gauge.bar]);U.enter().append("g").classed("value-arc",!0).append("path");var V,H,q,W=U.select("path");w(A)?(W.transition().duration(A.duration).ease(A.easing).each("end",(function(){S&&S()})).each("interrupt",(function(){S&&S()})).attrTween("d",(V=j,H=C(r[0].lastY),q=C(r[0].y),function(){var e=i(H,q);return function(t){return V.endAngle(e(t))()}})),h._lastValue=r[0].y):W.attr("d","number"===typeof r[0].y?j.endAngle(C(r[0].y)):"M0,0Z"),W.call(k),U.exit().remove(),N=[];var G=h.gauge.threshold.value;(G||0===G)&&N.push({range:[G,G],color:h.gauge.threshold.color,line:{color:h.gauge.threshold.line.color,width:h.gauge.threshold.line.width},thickness:h.gauge.threshold.thickness});var Y=_.selectAll("g.threshold-arc").data(N);Y.enter().append("g").classed("threshold-arc",!0).append("path"),Y.select("path").call(P).call(k),Y.exit().remove();var Z=_.selectAll("g.gauge-outline").data([x]);Z.enter().append("g").classed("gauge-outline",!0).append("path"),Z.select("path").call(P).call(k),Z.exit().remove()}(e,0,t,{radius:U,innerRadius:V,gauge:G,layer:Y,size:N,gaugeBg:L,gaugeOutline:P,transitionOpts:r,onComplete:m});var Z=I.selectAll("g.bullet").data(z?t:[]);Z.exit().remove();var X=I.selectAll("g.bulletaxis").data(z?t:[]);X.exit().remove(),z&&function(e,t,r,n){var i,a,o,s,u,c=r[0].trace,f=n.gauge,h=n.layer,v=n.gaugeBg,m=n.gaugeOutline,g=n.size,x=c.domain,b=n.transitionOpts,_=n.onComplete;f.enter().append("g").classed("bullet",!0),f.attr("transform",l(g.l,g.t)),h.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),h.selectAll("g.xbulletaxistick,path,text").remove();var M=g.h,A=c.gauge.bar.thickness*M,S=x.x[0],E=x.x[0]+(x.x[1]-x.x[0])*(c._hasNumber||c._hasDelta?1-d.bulletNumberDomainSize:1);function C(e){e.attr("width",(function(e){return Math.max(0,i.c2p(e.range[1])-i.c2p(e.range[0]))})).attr("x",(function(e){return i.c2p(e.range[0])})).attr("y",(function(e){return.5*(1-e.thickness)*M})).attr("height",(function(e){return e.thickness*M}))}(i=T(e,c.gauge.axis))._id="xbulletaxis",i.domain=[S,E],i.setScale(),a=p.calcTicks(i),o=p.makeTransTickFn(i),s=p.getTickSigns(i)[2],u=g.t+g.h,i.visible&&(p.drawTicks(e,i,{vals:"inside"===i.ticks?p.clipEnds(i,a):a,layer:h,path:p.makeTickPath(i,u,s),transFn:o}),p.drawLabels(e,i,{vals:a,layer:h,transFn:o,labelFns:p.makeLabelFns(i,u)}));var L=[v].concat(c.gauge.steps),P=f.selectAll("g.bg-bullet").data(L);P.enter().append("g").classed("bg-bullet",!0).append("rect"),P.select("rect").call(C).call(k),P.exit().remove();var O=f.selectAll("g.value-bullet").data([c.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),w(b)?O.select("rect").transition().duration(b.duration).ease(b.easing).each("end",(function(){_&&_()})).each("interrupt",(function(){_&&_()})).attr("width",Math.max(0,i.c2p(Math.min(c.gauge.axis.range[1],r[0].y)))):O.select("rect").attr("width","number"===typeof r[0].y?Math.max(0,i.c2p(Math.min(c.gauge.axis.range[1],r[0].y))):0),O.exit().remove();var I=r.filter((function(){return c.gauge.threshold.value||0===c.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(c.gauge.threshold.value)).attr("x2",i.c2p(c.gauge.threshold.value)).attr("y1",(1-c.gauge.threshold.thickness)/2*M).attr("y2",(1-(1-c.gauge.threshold.thickness)/2)*M).call(y.stroke,c.gauge.threshold.line.color).style("stroke-width",c.gauge.threshold.line.width),D.exit().remove();var R=f.selectAll("g.gauge-outline").data([m]);R.enter().append("g").classed("gauge-outline",!0).append("rect"),R.select("rect").call(C).call(k),R.exit().remove()}(e,0,t,{gauge:Z,layer:X,size:N,gaugeBg:L,gaugeOutline:P,transitionOpts:r,onComplete:m});var K=I.selectAll("text.title").data(t);K.exit().remove(),K.enter().append("text").classed("title",!0),K.attr("text-anchor",(function(){return z?x.right:x[O.title.align]})).text(O.title.text).call(f.font,O.title.font).call(h.convertToTspans,e),K.attr("transform",(function(){var e,t=N.l+N.w*b[O.title.align],r=d.titlePadding,n=f.bBox(K.node());return D?(R&&(e=O.gauge.axis.visible?f.bBox(Y.node()).top-r-n.bottom:N.t+N.h/2-U/2-n.bottom-r),z&&(e=E-(n.top+n.bottom)/2,t=N.l-d.bulletPadding*N.w)):e=O._numbersTop-r-n.bottom,l(t,e)}))}))}},16249:function(e,t,r){"use strict";var n=r(50693),i=r(12663).axisHoverFormat,a=r(5386).fF,o=r(2418),s=r(9012),l=r(1426).extendFlat,u=r(30962).overrideAll,c=e.exports=u(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})},n("",{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");c.flatshading.dflt=!0,c.lighting.facenormalsepsilon.dflt=0,c.x.editType=c.y.editType=c.z.editType=c.value.editType="calc+clearAxisTypes",c.transforms=void 0},56959:function(e,t,r){"use strict";var n=r(78803),i=r(88489).processGrid,a=r(88489).filter;e.exports=function(e,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=a(t.x,t._len),t._y=a(t.y,t._len),t._z=a(t.z,t._len),t._value=a(t.value,t._len);var r=i(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;for(var o=1/0,s=-1/0,l=0;l0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function z(e,t){return null===e?t:e}function F(t,r,n){L();var i,a,o,l=[r],u=[n];if(s>=1)l=[r],u=[n];else if(s>0){var c=function(e,t){var r=e[0],n=e[1],i=e[2],a=function(e,t,r){for(var n=[],i=0;i-1?n[h]:C(p,v,g);d[h]=x>-1?x:O(p,v,g,z(t,y))}i=d[0],a=d[1],o=d[2],e._meshI.push(i),e._meshJ.push(a),e._meshK.push(o),++m}}function N(e,t,r,n){var i=e[3];in&&(i=n);for(var a=(e[3]-i)/(e[3]-t[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-a)*e[s]+a*t[s];return o}function B(e,t,r){return e>=t&&e<=r}function j(e){var t=.001*(E-S);return e>=S-t&&e<=E+t}function U(t){for(var r=[],n=0;n<4;n++){var i=t[n];r.push([e._x[i],e._y[i],e._z[i],e._value[i]])}return r}var V=3;function H(e,t,r,n,i,a){a||(a=1),r=[-1,-1,-1];var o=!1,s=[B(t[0][3],n,i),B(t[1][3],n,i),B(t[2][3],n,i)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(e,t,r){return j(t[0][3])&&j(t[1][3])&&j(t[2][3])?(F(e,t,r),!0):aMath.abs(k-A)?[M,k]:[k,A];ee(r,C[0],C[1])}}var L=[[Math.min(S,A),Math.max(S,A)],[Math.min(M,E),Math.max(M,E)]];["x","y","z"].forEach((function(r){for(var n=[],i=0;i0&&(f.push(p.id),"x"===r?d.push([p.distRatio,0,0]):"y"===r?d.push([0,p.distRatio,0]):d.push([0,0,p.distRatio]))}else c=ie(1,"x"===r?b-1:"y"===r?_-1:w-1);f.length>0&&(n[a]="x"===r?te(t,f,o,s,d,n[a]):"y"===r?re(t,f,o,s,d,n[a]):ne(t,f,o,s,d,n[a]),a++),c.length>0&&(n[a]="x"===r?K(t,c,o,s,n[a]):"y"===r?$(t,c,o,s,n[a]):J(t,c,o,s,n[a]),a++)}var v=e.caps[r];v.show&&v.fill&&(D(v.fill),n[a]="x"===r?K(t,[0,b-1],o,s,n[a]):"y"===r?$(t,[0,_-1],o,s,n[a]):J(t,[0,w-1],o,s,n[a]),a++)}})),0===m&&P(),e._meshX=n,e._meshY=i,e._meshZ=a,e._meshIntensity=o,e._Xs=g,e._Ys=y,e._Zs=x}(),e}e.exports={findNearestOnAxis:l,generateIsoMeshes:d,createIsosurfaceTrace:function(e,t){var r=e.glplot.gl,i=n({gl:r}),a=new u(e,i,t.uid);return i._trace=a,a.update(t),e.glplot.add(i),a}}},82738:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(16249),o=r(1586);function s(e,t,r,n,a){var s=a("isomin"),l=a("isomax");void 0!==l&&null!==l&&void 0!==s&&null!==s&&s>l&&(t.isomin=null,t.isomax=null);var u=a("x"),c=a("y"),f=a("z"),d=a("value");u&&u.length&&c&&c.length&&f&&f.length&&d&&d.length?(i.getComponentMethod("calendars","handleTraceDefaults")(e,t,["x","y","z"],n),a("valuehoverformat"),["x","y","z"].forEach((function(e){a(e+"hoverformat");var t="caps."+e;a(t+".show")&&a(t+".fill");var r="slices."+e;a(r+".show")&&(a(r+".fill"),a(r+".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(e){a(e)})),o(e,t,n,a,{prefix:"",cLetter:"c"}),t._length=null):t.visible=!1}e.exports={supplyDefaults:function(e,t,r,i){s(e,t,0,i,(function(r,i){return n.coerce(e,t,a,r,i)}))},supplyIsoDefaults:s}},64943:function(e,t,r){"use strict";e.exports={attributes:r(16249),supplyDefaults:r(82738).supplyDefaults,calc:r(56959),colorbar:{min:"cmin",max:"cmax"},plot:r(22674).createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:r(58547),categories:["gl3d","showLegend"],meta:{}}},2418:function(e,t,r){"use strict";var n=r(50693),i=r(12663).axisHoverFormat,a=r(5386).fF,o=r(54532),s=r(9012),l=r(1426).extendFlat;e.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},n("",{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(e,t,r){"use strict";var n=r(78803);e.exports=function(e,t){t.intensity&&n(e,t,{vals:t.intensity,containerStr:"",cLetter:"c"})}},91134:function(e,t,r){"use strict";var n=r(9330).gl_mesh3d,i=r(9330).delaunay_triangulate,a=r(9330).alpha_shape,o=r(9330).convex_hull,s=r(81697).parseColorScale,l=r(78614),u=r(21081).extractOpts,c=r(90060);function f(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var d=f.prototype;function h(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}d.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return Array.isArray(r)&&void 0!==r[t]?e.textLabel=r[t]:r&&(e.textLabel=r),!0}},d.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n,f=e.x.length,d=c(p(r.xaxis,e.x,t.dataScale[0],e.xcalendar),p(r.yaxis,e.y,t.dataScale[1],e.ycalendar),p(r.zaxis,e.z,t.dataScale[2],e.zcalendar));if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!m(e.i,f)||!m(e.j,f)||!m(e.k,f))return;n=c(v(e.i),v(e.j),v(e.k))}else n=0===e.alphahull?o(d):e.alphahull>0?a(e.alphahull,d):function(e,t){for(var r=["x","y","z"].indexOf(e),n=[],a=t.length,o=0;og):m=M>w,g=M;var A=u(w,k,T,M);A.pos=_,A.yc=(w+M)/2,A.i=b,A.dir=m?"increasing":"decreasing",A.x=A.pos,A.y=[T,k],y&&(A.orig_p=r[b]),p&&(A.tx=t.text[b]),v&&(A.htx=t.hovertext[b]),x.push(A)}else x.push({pos:_,empty:!0})}return t._extremes[l._id]=a.findExtremes(l,n.concat(d,f),{padded:!0}),x.length&&(x[0].t={labels:{open:i(e,"open:")+" ",high:i(e,"high:")+" ",low:i(e,"low:")+" ",close:i(e,"close:")+" "}}),x}e.exports={calc:function(e,t){var r=a.getFromId(e,t.xaxis),i=a.getFromId(e,t.yaxis),s=function(e,t,r){var i=r._minDiff;if(!i){var a,s=e._fullData,l=[];for(i=1/0,a=0;a"+u.labels[x]+n.hoverLabelText(s,b,l.yhoverformat):((y=i.extendFlat({},d)).y0=y.y1=_,y.yLabelVal=b,y.yLabel=u.labels[x]+n.hoverLabelText(s,b,l.yhoverformat),y.name="",f.push(y),m[b]=y)}return f}function d(e,t,r,i){var a=e.cd,o=e.ya,l=a[0].trace,f=a[0].t,d=c(e,t,r,i);if(!d)return[];var h=a[d.index],p=d.index=h.i,v=h.dir;function m(e){return f.labels[e]+n.hoverLabelText(o,l[e][p],l.yhoverformat)}var g=h.hi||l.hoverinfo,y=g.split("+"),x="all"===g,b=x||-1!==y.indexOf("y"),_=x||-1!==y.indexOf("text"),w=b?[m("open"),m("high"),m("low"),m("close")+" "+u[v]]:[];return _&&s(h,l,w),d.extraText=w.join("
"),d.y0=d.y1=o.c2p(h.yc,!0),[d]}e.exports={hoverPoints:function(e,t,r,n){return e.cd[0].trace.hoverlabel.split?f(e,t,r,n):d(e,t,r,n)},hoverSplit:f,hoverOnPoints:d}},54186:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"ohlc",basePlotModule:r(93612),categories:["cartesian","svg","showLegend"],meta:{},attributes:r(2522),supplyDefaults:r(16169),calc:r(3485).calc,plot:r(72314),style:r(53101),hoverPoints:r(66449).hoverPoints,selectPoints:r(67324)}},14555:function(e,t,r){"use strict";var n=r(73972),i=r(71828);e.exports=function(e,t,r,a){var o=r("x"),s=r("open"),l=r("high"),u=r("low"),c=r("close");if(r("hoverlabel.split"),n.getComponentMethod("calendars","handleTraceDefaults")(e,t,["x"],a),s&&l&&u&&c){var f=Math.min(s.length,l.length,u.length,c.length);return o&&(f=Math.min(f,i.minRowLength(o))),t._length=f,f}}},72314:function(e,t,r){"use strict";var n=r(39898),i=r(71828);e.exports=function(e,t,r,a){var o=t.yaxis,s=t.xaxis,l=!!s.rangebreaks;i.makeTraceGroups(a,r,"trace ohlc").each((function(e){var t=n.select(this),r=e[0],a=r.t;if(!0!==r.trace.visible||a.empty)t.remove();else{var u=a.tickLen,c=t.selectAll("path").data(i.identity);c.enter().append("path"),c.exit().remove(),c.attr("d",(function(e){if(e.empty)return"M0,0Z";var t=s.c2p(e.pos-u,!0),r=s.c2p(e.pos+u,!0),n=l?(t+r)/2:s.c2p(e.pos,!0);return"M"+t+","+o.c2p(e.o,!0)+"H"+n+"M"+n+","+o.c2p(e.h,!0)+"V"+o.c2p(e.l,!0)+"M"+r+","+o.c2p(e.c,!0)+"H"+n}))}}))}},67324:function(e){"use strict";e.exports=function(e,t){var r,n=e.cd,i=e.xaxis,a=e.yaxis,o=[],s=n[0].t.bPos||0;if(!1===t)for(r=0;r=e.length)return!1;if(void 0!==t[e[r]])return!1;t[e[r]]=!0}return!0}(r))for(t=0;t0;u&&(o="array");var c=r("categoryorder",o);"array"===c?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),u||"array"!==c||(t.categoryorder="trace")}}e.exports=function(e,t,r,f){function d(r,i){return n.coerce(e,t,l,r,i)}var h=s(e,t,{name:"dimensions",handleItemDefaults:c}),p=function(e,t,r,o,s){s("line.shape"),s("line.hovertemplate");var l=s("line.color",o.colorway[0]);if(i(e,"line")&&n.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(e,t,o,s,{prefix:"line.",cLetter:"c"}),l.length;t.line.color=r}return 1/0}(e,t,r,f,d);o(t,f,d),Array.isArray(h)&&h.length||(t.visible=!1),u(t,h,"values",p),d("hoveron"),d("hovertemplate"),d("arrangement"),d("bundlecolors"),d("sortpaths"),d("counts");var v={family:f.font.family,size:Math.round(f.font.size),color:f.font.color};n.coerceFont(d,"labelfont",v);var m={family:f.font.family,size:Math.round(f.font.size/1.2),color:f.font.color};n.coerceFont(d,"tickfont",m)}},94873:function(e,t,r){"use strict";e.exports={attributes:r(99506),supplyDefaults:r(14647),calc:r(28699),plot:r(45784),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:r(27677),categories:["noOpacity"],meta:{}}},45460:function(e,t,r){"use strict";var n=r(39898),i=r(81684).k4,a=r(72391),o=r(30211),s=r(71828),l=s.strTranslate,u=r(91424),c=r(84267),f=r(63893);function d(e,t,r,i){var a=t._context.staticPlot,o=e.map(F.bind(0,t,r)),c=i.selectAll("g.parcatslayer").data([null]);c.enter().append("g").attr("class","parcatslayer").style("pointer-events",a?"none":"all");var d=c.selectAll("g.trace.parcats").data(o,h),y=d.enter().append("g").attr("class","trace parcats");d.attr("transform",(function(e){return l(e.x,e.y)})),y.append("g").attr("class","paths");var x=d.select("g.paths").selectAll("path.path").data((function(e){return e.paths}),h);x.attr("fill",(function(e){return e.model.color}));var w=x.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",(function(e){return e.model.color})).attr("fill-opacity",0);_(w),x.attr("d",(function(e){return e.svgD})),w.empty()||x.sort(v),x.exit().remove(),x.on("mouseover",m).on("mouseout",g).on("click",b),y.append("g").attr("class","dimensions");var M=d.select("g.dimensions").selectAll("g.dimension").data((function(e){return e.dimensions}),h);M.enter().append("g").attr("class","dimension"),M.attr("transform",(function(e){return l(e.x,0)})),M.exit().remove();var A=M.selectAll("g.category").data((function(e){return e.categories}),h),S=A.enter().append("g").attr("class","category");A.attr("transform",(function(e){return l(0,e.y)})),S.append("rect").attr("class","catrect").attr("pointer-events","none"),A.select("rect.catrect").attr("fill","none").attr("width",(function(e){return e.width})).attr("height",(function(e){return e.height})),k(S);var E=A.selectAll("rect.bandrect").data((function(e){return e.bands}),h);E.each((function(){s.raiseToTop(this)})),E.attr("fill",(function(e){return e.color}));var D=E.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",(function(e){return e.color})).attr("fill-opacity",0);E.attr("fill",(function(e){return e.color})).attr("width",(function(e){return e.width})).attr("height",(function(e){return e.height})).attr("y",(function(e){return e.y})).attr("cursor",(function(e){return"fixed"===e.parcatsViewModel.arrangement?"default":"perpendicular"===e.parcatsViewModel.arrangement?"ns-resize":"move"})),T(D),E.exit().remove(),S.append("text").attr("class","catlabel").attr("pointer-events","none");var R=t._fullLayout.paper_bgcolor;A.select("text.catlabel").attr("text-anchor",(function(e){return p(e)?"start":"end"})).attr("alignment-baseline","middle").style("text-shadow",f.makeTextShadow(R)).style("fill","rgb(0, 0, 0)").attr("x",(function(e){return p(e)?e.width+5:-5})).attr("y",(function(e){return e.height/2})).text((function(e){return e.model.categoryLabel})).each((function(e){u.font(n.select(this),e.parcatsViewModel.categorylabelfont),f.convertToTspans(n.select(this),t)})),S.append("text").attr("class","dimlabel"),A.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",(function(e){return"fixed"===e.parcatsViewModel.arrangement?"default":"ew-resize"})).attr("x",(function(e){return e.width/2})).attr("y",-5).text((function(e,t){return 0===t?e.parcatsViewModel.model.dimensions[e.model.dimensionInd].dimensionLabel:null})).each((function(e){u.font(n.select(this),e.parcatsViewModel.labelfont)})),A.selectAll("rect.bandrect").on("mouseover",C).on("mouseout",L),A.exit().remove(),M.call(n.behavior.drag().origin((function(e){return{x:e.x,y:0}})).on("dragstart",P).on("drag",O).on("dragend",I)),d.each((function(e){e.traceSelection=n.select(this),e.pathSelection=n.select(this).selectAll("g.paths").selectAll("path.path"),e.dimensionSelection=n.select(this).selectAll("g.dimensions").selectAll("g.dimension")})),d.exit().remove()}function h(e){return e.key}function p(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function v(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),C=n.mouse(f)[0];o.loneHover({trace:d,x:b-p.left+v.left,y:_-p.top+v.top,text:E,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:k,idealAlign:C1&&d.displayInd===f.dimensions.length-1?(i=u.left,a="left"):(i=u.left+u.width,a="right");var v=c.model.count,m=c.model.categoryLabel,g=v/c.parcatsViewModel.model.count,y={countLabel:v,categoryLabel:m,probabilityLabel:g.toFixed(3)},x=[];-1!==c.parcatsViewModel.hoverinfoItems.indexOf("count")&&x.push(["Count:",y.countLabel].join(" ")),-1!==c.parcatsViewModel.hoverinfoItems.indexOf("probability")&&x.push(["P("+y.categoryLabel+"):",y.probabilityLabel].join(" "));var b=x.join("
");return{trace:h,x:o*(i-t.left),y:s*(p-t.top),text:b,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:a,hovertemplate:h.hovertemplate,hovertemplateLabels:y,eventData:[{data:h._input,fullData:h,count:v,category:m,probability:g}]}}function C(e){if(!e.parcatsViewModel.dragDimension&&-1===e.parcatsViewModel.hoverinfoItems.indexOf("skip")){if(n.mouse(this)[1]<-1)return;var t,r=e.parcatsViewModel.graphDiv,i=r._fullLayout,a=i._paperdiv.node().getBoundingClientRect(),l=e.parcatsViewModel.hoveron,u=this;"color"===l?(function(e){var t=n.select(e).datum(),r=M(t);w(r),r.each((function(){s.raiseToTop(this)})),n.select(e.parentNode).selectAll("rect.bandrect").filter((function(e){return e.color===t.color})).each((function(){s.raiseToTop(this),n.select(this).attr("stroke","black").attr("stroke-width",1.5)}))}(u),S(u,"plotly_hover",n.event)):(function(e){n.select(e.parentNode).selectAll("rect.bandrect").each((function(e){var t=M(e);w(t),t.each((function(){s.raiseToTop(this)}))})),n.select(e.parentNode).select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(u),A(u,"plotly_hover",n.event)),-1===e.parcatsViewModel.hoverinfoItems.indexOf("none")&&("category"===l?t=E(r,a,u):"color"===l?t=function(e,t,r){e._fullLayout._calcInverseTransform(e);var i,a,o=e._fullLayout._invScaleX,s=e._fullLayout._invScaleY,l=r.getBoundingClientRect(),u=n.select(r).datum(),f=u.categoryViewModel,d=f.parcatsViewModel,h=d.model.dimensions[f.model.dimensionInd],p=d.trace,v=l.y+l.height/2;d.dimensions.length>1&&h.displayInd===d.dimensions.length-1?(i=l.left,a="left"):(i=l.left+l.width,a="right");var m=f.model.categoryLabel,g=u.parcatsViewModel.model.count,y=0;u.categoryViewModel.bands.forEach((function(e){e.color===u.color&&(y+=e.count)}));var x=f.model.count,b=0;d.pathSelection.each((function(e){e.model.color===u.color&&(b+=e.model.count)}));var _=y/g,w=y/b,k=y/x,T={countLabel:g,categoryLabel:m,probabilityLabel:_.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 "+m+"): "+T.probabilityLabel),M.push("P("+m+" | color): "+w.toFixed(3)),M.push("P(color | "+m+"): "+k.toFixed(3)));var A=M.join("
"),S=c.mostReadable(u.color,["black","white"]);return{trace:p,x:o*(i-t.left),y:s*(v-t.top),text:A,color:u.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:m,count:g,probability:_,categorycount:x,colorcount:b,bandcolorcount:y}]}}(r,a,u):"dimension"===l&&(t=function(e,t,r){var i=[];return n.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each((function(){i.push(E(e,t,this))})),i}(r,a,u)),t&&o.loneHover(t,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:r}))}}function L(e){var t=e.parcatsViewModel;t.dragDimension||(_(t.pathSelection),k(t.dimensionSelection.selectAll("g.category")),T(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),o.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(v),-1!==t.hoverinfoItems.indexOf("skip"))||("color"===e.parcatsViewModel.hoveron?S(this,"plotly_unhover",n.event):A(this,"plotly_unhover",n.event))}function P(e){"fixed"!==e.parcatsViewModel.arrangement&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map((function(e){return e.displayInd})),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,n.select(this).selectAll("g.category").select("rect.catrect").each((function(t){var r=n.mouse(this)[0],i=n.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=i&&i<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map((function(e){return e.displayInd})),t.model.dragY=t.y,s.raiseToTop(this.parentNode),n.select(this.parentNode).selectAll("rect.bandrect").each((function(t){t.yf.y+f.height/2&&(o.model.displayInd=f.model.displayInd,f.model.displayInd=l),e.dragCategoryDisplayInd=o.model.displayInd}if(null===e.dragCategoryDisplayInd||"freeform"===e.parcatsViewModel.arrangement){a.model.dragX=n.event.x;var d=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[i];void 0!==d&&a.model.dragXh.x&&(a.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=a.model.displayInd}j(e.parcatsViewModel),B(e.parcatsViewModel),z(e.parcatsViewModel),R(e.parcatsViewModel)}}function I(e){if("fixed"!==e.parcatsViewModel.arrangement&&null!==e.dragDimensionDisplayInd){n.select(this).selectAll("text").attr("font-weight","normal");var t={},r=D(e.parcatsViewModel),i=e.parcatsViewModel.model.dimensions.map((function(e){return e.displayInd})),o=e.initialDragDimensionDisplayInds.some((function(e,t){return e!==i[t]}));o&&i.forEach((function(r,n){var i=e.parcatsViewModel.model.dimensions[n].containerInd;t["dimensions["+i+"].displayindex"]=r}));var s=!1;if(null!==e.dragCategoryDisplayInd){var l=e.model.categories.map((function(e){return e.displayInd}));if(s=e.initialDragCategoryDisplayInds.some((function(e,t){return e!==l[t]}))){var u=e.model.categories.slice().sort((function(e,t){return e.displayInd-t.displayInd})),c=u.map((function(e){return e.categoryValue})),f=u.map((function(e){return e.categoryLabel}));t["dimensions["+e.model.containerInd+"].categoryarray"]=[c],t["dimensions["+e.model.containerInd+"].ticktext"]=[f],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}-1===e.parcatsViewModel.hoverinfoItems.indexOf("skip")&&!e.dragHasMoved&&e.potentialClickBand&&("color"===e.parcatsViewModel.hoveron?S(e.potentialClickBand,"plotly_click",n.event.sourceEvent):A(e.potentialClickBand,"plotly_click",n.event.sourceEvent)),e.model.dragX=null,null!==e.dragCategoryDisplayInd&&(e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd].model.dragY=null,e.dragCategoryDisplayInd=null),e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,j(e.parcatsViewModel),B(e.parcatsViewModel),n.transition().duration(300).ease("cubic-in-out").each((function(){z(e.parcatsViewModel,!0),R(e.parcatsViewModel,!0)})).each("end",(function(){(o||s)&&a.restyle(e.parcatsViewModel.graphDiv,t,[r])}))}}function D(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;s--)c+="C"+u[s]+","+(t[s+1]+n)+" "+l[s]+","+(t[s]+n)+" "+(e[s]+r[s])+","+(t[s]+n),c+="l-"+r[s]+",0 ";return c+="Z"}function B(e){var t=e.dimensions,r=e.model,n=t.map((function(e){return e.categories.map((function(e){return e.y}))})),i=e.model.dimensions.map((function(e){return e.categories.map((function(e){return e.displayInd}))})),a=e.model.dimensions.map((function(e){return e.displayInd})),o=e.dimensions.map((function(e){return e.model.dimensionInd})),s=t.map((function(e){return e.x})),l=t.map((function(e){return e.width})),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(e){var t=e.categoryInds.map((function(e,t){return i[t][e]}));return o.map((function(e){return t[e]}))}u.sort((function(t,r){var n=f(t),i=f(r);return"backward"===e.sortpaths&&(n.reverse(),i.reverse()),n.push(t.valueInds[0]),i.push(r.valueInds[0]),e.bundlecolors&&(n.unshift(t.rawColor),i.unshift(r.rawColor)),ni?1:0}));for(var d=new Array(u.length),h=t[0].model.count,p=t[0].categories.map((function(e){return e.height})).reduce((function(e,t){return e+t})),v=0;v0?p*(g.count/h):0;for(var y,x=new Array(n.length),b=0;b1?(e.width-80-16)/(n-1):0)*i;var a,o,s,l,u,c=[],f=e.model.maxCats,d=t.categories.length,h=t.count,p=e.height-8*(f-1),v=8*(f-d)/2,m=t.categories.map((function(e){return{displayInd:e.displayInd,categoryInd:e.categoryInd}}));for(m.sort((function(e,t){return e.displayInd-t.displayInd})),u=0;u0?o.count/h*p:0,s={key:o.valueInds[0],model:o,width:16,height:a,y:null!==o.dragY?o.dragY:v,bands:[],parcatsViewModel:e},v=v+a+8,c.push(s);return{key:t.dimensionInd,x:null!==t.dragX?t.dragX:r,y:0,width:16,model:t,categories:c,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}e.exports=function(e,t,r,n){d(r,e,n,t)}},45784:function(e,t,r){"use strict";var n=r(45460);e.exports=function(e,t,r,i){var a=e._fullLayout,o=a._paper,s=a._size;n(e,o,t,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},r,i)}},73362:function(e,t,r){"use strict";var n=r(50693),i=r(13838),a=r(41940),o=r(27670).Y,s=r(1426).extendFlat,l=r(44467).templatedArray;e.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"},n("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(e,t,r){"use strict";var n=r(25706),i=r(39898),a=r(28984).keyFun,o=r(28984).repeat,s=r(71828).sorterAsc,l=r(71828).strTranslate,u=n.bar.snapRatio;function c(e,t){return e*(1-u)+t*u}var f=n.bar.snapClose;function d(e,t){return e*(1-f)+t*f}function h(e,t,r,n){if(function(e,t){for(var r=0;r=t[r][0]&&e<=t[r][1])return!0;return!1}(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var l=t[a],u=l,f=a;i*ft){d=r;break}}if(a=c,isNaN(a)&&(a=isNaN(f)||isNaN(d)?isNaN(f)?d:f:t-u[f][1]e[1]+r||t=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}(p,t);v&&(o.interval=l[a],o.intervalPix=p,o.region=v)}}if(e.ordinal&&!o.region){var m=e.unitTickvals,y=e.unitToPaddedPx.invert(t);for(r=0;r=x[0]&&y<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function w(e,t){i.event.sourceEvent.stopPropagation();var r=t.height-i.mouse(e)[1]-2*n.verticalPadding,a=t.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[r-a.grabPoint,r+a.barLength-a.grabPoint].map(t.unitToPaddedPx.invert):a.newExtent=[a.startExtent,t.unitToPaddedPx.invert(r)].sort(s),t.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(t),b(e.parentNode)}function k(e,t){var r=_(t,t.height-i.mouse(e)[1]-2*n.verticalPadding),a="crosshair";r.clickableOrdinalRange?a="pointer":r.region&&(a=r.region+"-resize"),i.select(document.body).style("cursor",a)}function T(e){e.on("mousemove",(function(e){i.event.preventDefault(),e.parent.inBrushDrag||k(this,e)})).on("mouseleave",(function(e){e.parent.inBrushDrag||y()})).call(i.behavior.drag().on("dragstart",(function(e){!function(e,t){i.event.sourceEvent.stopPropagation();var r=t.height-i.mouse(e)[1]-2*n.verticalPadding,a=t.unitToPaddedPx.invert(r),o=t.brush,s=_(t,r),l=s.interval,u=o.svgBrush;if(u.wasDragged=!1,u.grabbingBar="ns"===s.region,u.grabbingBar){var c=l.map(t.unitToPaddedPx);u.grabPoint=r-c[0]-n.verticalPadding,u.barLength=c[1]-c[0]}u.clickableOrdinalRange=s.clickableOrdinalRange,u.stayingIntervals=t.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(u.stayingIntervals=u.stayingIntervals.filter((function(e){return e[0]!==l[0]&&e[1]!==l[1]}))),u.startExtent=s.region?l["s"===s.region?1:0]:a,t.parent.inBrushDrag=!0,u.brushStartCallback()}(this,e)})).on("drag",(function(e){w(this,e)})).on("dragend",(function(e){!function(e,t){var r=t.brush,n=r.filter,a=r.svgBrush;a._dragging||(k(e,t),w(e,t),t.brush.svgBrush.wasDragged=!1),a._dragging=!1,i.event.sourceEvent.stopPropagation();var o=a.grabbingBar;if(a.grabbingBar=!1,a.grabLocation=void 0,t.parent.inBrushDrag=!1,y(),!a.wasDragged)return a.wasDragged=void 0,a.clickableOrdinalRange?r.filterSpecified&&t.multiselect?a.extent.push(a.clickableOrdinalRange):(a.extent=[a.clickableOrdinalRange],r.filterSpecified=!0):o?(a.extent=a.stayingIntervals,0===a.extent.length&&A(r)):A(r),a.brushCallback(t),b(e.parentNode),void a.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var l=t.unitTickvals;l[l.length-1]a.newExtent[0];a.extent=a.stayingIntervals.concat(u?[a.newExtent]:[]),a.extent.length||A(r),a.brushCallback(t),u?b(e.parentNode,s):(s(),b(e.parentNode))}else s();a.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}(this,e)})))}function M(e,t){return e[0]-t[0]}function A(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function S(e){for(var t,r=e.slice(),n=[],i=r.shift();i;){for(t=i.slice();(i=r.shift())&&i[0]<=t[1];)t[1]=Math.max(t[1],i[1]);n.push(t)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}e.exports={makeBrush:function(e,t,r,n,i,a){var o,l=function(){var e,t,r=[];return{set:function(n){1===(r=n.map((function(e){return e.slice().sort(s)})).sort(M)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),e=S(r),t=r.reduce((function(e,t){return[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}),[1/0,-1/0])},get:function(){return r.slice()},getConsolidated:function(){return e},getBounds:function(){return t}}}();return l.set(r),{filter:l,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:(o=i,function(e){var t=e.brush,r=function(e){return e.svgBrush.extent.map((function(e){return e.slice()}))}(t),n=r.slice();t.filter.set(n),o()}),brushEndCallback:a}}},ensureAxisBrush:function(e,t,r){var i=e.selectAll("."+n.cn.axisBrush).data(o,a);i.enter().append("g").classed(n.cn.axisBrush,!0),function(e,t,r){var i=r._context.staticPlot,a=e.selectAll(".background").data(o);a.enter().append("rect").classed("background",!0).call(p).call(v).style("pointer-events",i?"none":"auto").attr("transform",l(0,n.verticalPadding)),a.call(T).attr("height",(function(e){return e.height-n.verticalPadding}));var s=e.selectAll(".highlight-shadow").data(o);s.enter().append("line").classed("highlight-shadow",!0).attr("x",-n.bar.width/2).attr("stroke-width",n.bar.width+n.bar.strokeWidth).attr("stroke",t).attr("opacity",n.bar.strokeOpacity).attr("stroke-linecap","butt"),s.attr("y1",(function(e){return e.height})).call(x);var u=e.selectAll(".highlight").data(o);u.enter().append("line").classed("highlight",!0).attr("x",-n.bar.width/2).attr("stroke-width",n.bar.width-n.bar.strokeWidth).attr("stroke",n.bar.fillColor).attr("opacity",n.bar.fillOpacity).attr("stroke-linecap","butt"),u.attr("y1",(function(e){return e.height})).call(x)}(i,t,r)},cleanRanges:function(e,t){if(Array.isArray(e[0])?(e=e.map((function(e){return e.sort(s)})),e=t.multiselect?S(e.sort(M)):[e[0]]):e=[e.sort(s)],t.tickvals){var r=t.tickvals.slice().sort(s);if(!(e=e.map((function(e){var t=[h(0,r,e[0],[]),h(1,r,e[1],[])];if(t[1]>t[0])return t})).filter((function(e){return e}))).length)return}return e.length>1?e:e[0]}}},71791:function(e,t,r){"use strict";e.exports={attributes:r(73362),supplyDefaults:r(3633),calc:r(24639),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:r(49351),categories:["gl","regl","noOpacity","noHover"],meta:{}}},49351:function(e,t,r){"use strict";var n=r(39898),i=r(27659).a0,a=r(21341),o=r(77922);t.name="parcoords",t.plot=function(e){var t=i(e.calcdata,"parcoords")[0];t.length&&a(e,t)},t.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())},t.toSVG=function(e){var t=e._fullLayout._glimages,r=n.select(e).selectAll(".svg-container");r.filter((function(e,t){return t===r.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var e=this,r=e.toDataURL("image/png");t.append("svg:image").attr({xmlns:o.svg,"xlink:href":r,preserveAspectRatio:"none",x:0,y:0,width:e.style.width,height:e.style.height})})),window.setTimeout((function(){n.selectAll("#filterBarPattern").attr("id","filterBarPattern")}),60)}},24639:function(e,t,r){"use strict";var n=r(71828).isArrayOrTypedArray,i=r(21081),a=r(28984).wrap;e.exports=function(e,t){var r,o;return i.hasColorscale(t,"line")&&n(t.line.color)?(r=t.line.color,o=i.extractOpts(t.line).colorscale,i.calc(e,t,{vals:r,containerStr:"line",cLetter:"c"})):(r=function(e){for(var t=new Array(e),r=0;rf&&(n.log("parcoords traces support up to "+f+" dimensions at the moment"),p.splice(f));var v=s(e,t,{name:"dimensions",layout:l,handleItemDefaults:h}),m=function(e,t,r,o,s){var l=s("line.color",r);if(i(e,"line")&&n.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(e,t,o,s,{prefix:"line.",cLetter:"c"}),l.length;t.line.color=r}return 1/0}(e,t,r,l,c);o(t,l,c),Array.isArray(v)&&v.length||(t.visible=!1),d(t,v,"values",m);var g={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};n.coerceFont(c,"labelfont",g),n.coerceFont(c,"tickfont",g),n.coerceFont(c,"rangefont",g),c("labelangle"),c("labelside"),c("unselected.line.color"),c("unselected.line.opacity")}},1602:function(e,t,r){"use strict";var n=r(71828).isTypedArray;t.convertTypedArray=function(e){return n(e)?Array.prototype.slice.call(e):e},t.isOrdinal=function(e){return!!e.tickvals},t.isVisible=function(e){return e.visible||!("visible"in e)}},67618:function(e,t,r){"use strict";var n=r(71791);n.plot=r(21341),e.exports=n},83398:function(e,t,r){"use strict";var n=r(56068),i=n(["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=n(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n gl_FragColor = fragColor;\n}\n"]),o=r(25706).maxDimensionCount,s=r(71828),l=1e-6,u=2048,c=new Uint8Array(4),f=new Uint8Array(4),d={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function h(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function p(e,t,r,n,i,a){var o=a.key;r.drawCompleted||(function(e){e.read({x:0,y:0,width:1,height:1,data:c})}(e),r.drawCompleted=!0),function s(l){var u=Math.min(n,i-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),r.clearOnly||(a.count=2*u,a.offset=2*l*n,t(a),l*n+u>>8*t)%256/255}function g(e,t,r){for(var n=new Array(8*t),i=0,a=0;af&&(f=e[i].dim1.canvasX,o=i);0===s&&h(M,0,0,r.canvasWidth,r.canvasHeight);var d=function(e){var t,r,n,i=[[],[]];for(n=0;n<64;n++){var a=!e&&no._length&&(S=S.slice(0,o._length));var C,L=o.tickvals;function P(e,t){return{val:e,text:C[t]}}function O(e,t){return e.val-t.val}if(Array.isArray(L)&&L.length){C=o.ticktext,Array.isArray(C)&&C.length?C.length>L.length?C=C.slice(0,L.length):L.length>C.length&&(L=L.slice(0,C.length)):C=L.map(a(o.tickformat));for(var I=1;I=r||l>=i)return;var u=e.lineLayer.readPixel(s,i-1-l),c=0!==u[3],f=c?u[2]+256*(u[1]+256*u[0]):null,d={x:s,y:l,clientX:t.clientX,clientY:t.clientY,dataIndex:e.model.key,curveNumber:f};f!==F&&(c?a.hover(d):a.unhover&&a.unhover(d),F=f)}})),z.style("opacity",(function(e){return e.pick?0:1})),h.style("background","rgba(255, 255, 255, 0)");var N=h.selectAll("."+y.cn.parcoords).data(S,p);N.exit().remove(),N.enter().append("g").classed(y.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),N.attr("transform",(function(e){return u(e.model.translateX,e.model.translateY)}));var B=N.selectAll("."+y.cn.parcoordsControlView).data(v,p);B.enter().append("g").classed(y.cn.parcoordsControlView,!0),B.attr("transform",(function(e){return u(e.model.pad.l,e.model.pad.t)}));var j=B.selectAll("."+y.cn.yAxis).data((function(e){return e.dimensions}),p);j.enter().append("g").classed(y.cn.yAxis,!0),B.each((function(e){I(j,e,k)})),z.each((function(e){if(e.viewModel){!e.lineLayer||a?e.lineLayer=b(this,e):e.lineLayer.update(e),(e.key||0===e.key)&&(e.viewModel[e.key]=e.lineLayer);var t=!e.context||a;e.lineLayer.render(e.viewModel.panels,t)}})),j.attr("transform",(function(e){return u(e.xScale(e.xIndex),0)})),j.call(n.behavior.drag().origin((function(e){return e})).on("drag",(function(e){var t=e.parent;A.linePickActive(!1),e.x=Math.max(-y.overdrag,Math.min(e.model.width+y.overdrag,n.event.x)),e.canvasX=e.x*e.model.canvasPixelRatio,j.sort((function(e,t){return e.x-t.x})).each((function(t,r){t.xIndex=r,t.x=e===t?t.x:t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio})),I(j,t,k),j.filter((function(t){return 0!==Math.abs(e.xIndex-t.xIndex)})).attr("transform",(function(e){return u(e.xScale(e.xIndex),0)})),n.select(this).attr("transform",u(e.x,0)),j.each((function(r,n,i){i===e.parent.key&&(t.dimensions[n]=r)})),t.contextLayer&&t.contextLayer.render(t.panels,!1,!E(t)),t.focusLayer.render&&t.focusLayer.render(t.panels)})).on("dragend",(function(e){var t=e.parent;e.x=e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio,I(j,t,k),n.select(this).attr("transform",(function(e){return u(e.x,0)})),t.contextLayer&&t.contextLayer.render(t.panels,!1,!E(t)),t.focusLayer&&t.focusLayer.render(t.panels),t.pickLayer&&t.pickLayer.render(t.panels,!0),A.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(t.key,t.dimensions.map((function(e){return e.crossfilterDimensionIndex})))}))),j.exit().remove();var U=j.selectAll("."+y.cn.axisOverlays).data(v,p);U.enter().append("g").classed(y.cn.axisOverlays,!0),U.selectAll("."+y.cn.axis).remove();var V=U.selectAll("."+y.cn.axis).data(v,p);V.enter().append("g").classed(y.cn.axis,!0),V.each((function(e){var t=e.model.height/e.model.tickDistance,r=e.domainScale,i=r.domain();n.select(this).call(n.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(t,e.tickFormat).tickValues(e.ordinal?i:null).tickFormat((function(t){return g.isOrdinal(e)?t:D(e.model.dimensions[e.visibleIndex],t)})).scale(r)),f.font(V.selectAll("text"),e.model.tickFont)})),V.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),V.selectAll("text").style("text-shadow",c.makeTextShadow(M)).style("cursor","default");var H=U.selectAll("."+y.cn.axisHeading).data(v,p);H.enter().append("g").classed(y.cn.axisHeading,!0);var q=H.selectAll("."+y.cn.axisTitle).data(v,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(e){return e.label})).each((function(t){var r=n.select(this);f.font(r,t.model.labelFont),c.convertToTspans(r,e)})).attr("transform",(function(e){var t=O(e.model.labelAngle,e.model.labelSide),r=y.axisTitleOffset;return(t.dir>0?"":u(0,2*r+e.model.height))+l(t.degrees)+u(-r*t.dx,-r*t.dy)})).attr("text-anchor",(function(e){var t=O(e.model.labelAngle,e.model.labelSide);return 2*Math.abs(t.dx)>Math.abs(t.dy)?t.dir*t.dx<0?"start":"end":"middle"}));var W=U.selectAll("."+y.cn.axisExtent).data(v,p);W.enter().append("g").classed(y.cn.axisExtent,!0);var G=W.selectAll("."+y.cn.axisExtentTop).data(v,p);G.enter().append("g").classed(y.cn.axisExtentTop,!0),G.attr("transform",u(0,-y.axisExtentOffset));var Y=G.selectAll("."+y.cn.axisExtentTopText).data(v,p);Y.enter().append("text").classed(y.cn.axisExtentTopText,!0).call(P),Y.text((function(e){return R(e,!0)})).each((function(e){f.font(n.select(this),e.model.rangeFont)}));var Z=W.selectAll("."+y.cn.axisExtentBottom).data(v,p);Z.enter().append("g").classed(y.cn.axisExtentBottom,!0),Z.attr("transform",(function(e){return u(0,e.model.height+y.axisExtentOffset)}));var X=Z.selectAll("."+y.cn.axisExtentBottomText).data(v,p);X.enter().append("text").classed(y.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(P),X.text((function(e){return R(e,!1)})).each((function(e){f.font(n.select(this),e.model.rangeFont)})),x.ensureAxisBrush(U,M,e)}},21341:function(e,t,r){"use strict";var n=r(17171),i=r(79749),a=r(1602).isVisible,o={};function s(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return-1===i&&(i+=t.length),i}(e.exports=function(e,t){var r=e._fullLayout;if(i(e,[],o)){var l={},u={},c={},f={},d=r._size;t.forEach((function(t,r){var n=t[0].trace;c[r]=n.index;var i=f[r]=n._fullInput.index;l[r]=e.data[i].dimensions,u[r]=e.data[i].dimensions.slice()})),n(e,t,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{filterChanged:function(t,n,i){var a=u[t][n],o=i.map((function(e){return e.slice()})),s="dimensions["+n+"].constraintrange",l=r._tracePreGUI[e._fullData[c[t]]._fullInput.uid];if(void 0===l[s]){var d=a.constraintrange;l[s]=d||null}var h=e._fullData[c[t]].dimensions[n];o.length?(1===o.length&&(o=o[0]),a.constraintrange=o,h.constraintrange=o.slice(),o=[o]):(delete a.constraintrange,delete h.constraintrange,o=null);var p={};p[s]=o,e.emit("plotly_restyle",[p,[f[t]]])},hover:function(t){e.emit("plotly_hover",t)},unhover:function(t){e.emit("plotly_unhover",t)},axesMoved:function(t,r){var n=function(e,t){return function(r,n){return s(e,t,r)-s(e,t,n)}}(r,u[t].filter(a));l[t].sort(n),u[t].filter((function(e){return!a(e)})).sort((function(e){return u[t].indexOf(e)})).forEach((function(e){l[t].splice(l[t].indexOf(e),1),l[t].splice(u[t].indexOf(e),0,e)})),e.emit("plotly_restyle",[{dimensions:[l[t]]},[f[t]]])}})}}).reglPrecompiled=o},34e3:function(e,t,r){"use strict";var n=r(9012),i=r(27670).Y,a=r(41940),o=r(22399),s=r(5386).fF,l=r(5386).si,u=r(1426).extendFlat,c=a({editType:"plot",arrayOk:!0,colorEditType:"plot"});e.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:u({},n.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:u({},c,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:u({},c,{}),outsidetextfont:u({},c,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:u({},c,{}),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:u({},c,{}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc"}}}},13584:function(e,t,r){"use strict";var n=r(74875);t.name="pie",t.plot=function(e,r,i,a){n.plotBasePlot(t.name,e,r,i,a)},t.clean=function(e,r,i,a){n.cleanBasePlot(t.name,e,r,i,a)}},32354:function(e,t,r){"use strict";var n=r(92770),i=r(84267),a=r(7901),o={};function s(e){return function(t,r){return!!t&&!!(t=i(t)).isValid()&&(t=a.addOpacity(t,t.getAlpha()),e[r]||(e[r]=t),t)}}function l(e,t){var r,n=JSON.stringify(e),a=t[n];if(!a){for(a=e.slice(),r=0;r=0})),("funnelarea"===t.type?g:t.sort)&&a.sort((function(e,t){return t.v-e.v})),a[0]&&(a[0].vTotal=m),a},crossTraceCalc:function(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],s=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=l(a,o));for(var u=0,c=0;c0){s=!0;break}}s||(o=0)}return{hasLabels:r,hasValues:a,len:o}}e.exports={handleLabelsAndValues:l,supplyDefaults:function(e,t,r,n){function u(r,n){return i.coerce(e,t,a,r,n)}var c=l(u("labels"),u("values")),f=c.len;if(t._hasLabels=c.hasLabels,t._hasValues=c.hasValues,!t._hasLabels&&t._hasValues&&(u("label0"),u("dlabel")),f){t._length=f,u("marker.line.width")&&u("marker.line.color"),u("marker.colors"),u("scalegroup");var d,h=u("text"),p=u("texttemplate");if(p||(d=u("textinfo",Array.isArray(h)?"text+percent":"percent")),u("hovertext"),u("hovertemplate"),p||d&&"none"!==d){var v=u("textposition");s(e,t,n,u,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(v)||"auto"===v||"outside"===v)&&u("automargin"),("inside"===v||"auto"===v||Array.isArray(v))&&u("insidetextorientation")}o(t,n,u);var m=u("hole");if(u("title.text")){var g=u("title.position",m?"middle center":"top center");m||"middle center"!==g||(t.title.position="top center"),i.coerceFont(u,"title.font",n.font)}u("sort"),u("direction"),u("rotation"),u("pull")}else t.visible=!1}}},20007:function(e,t,r){"use strict";var n=r(23469).appendArrayMultiPointValues;e.exports=function(e,t){var r={curveNumber:t.index,pointNumbers:e.pts,data:t._input,fullData:t,label:e.label,color:e.color,value:e.v,percent:e.percent,text:e.text,bbox:e.bbox,v:e.v};return 1===e.pts.length&&(r.pointNumber=r.i=e.pts[0]),n(r,t,e.pts),"funnelarea"===t.type&&(delete r.v,delete r.i),r}},53581:function(e,t,r){"use strict";var n=r(71828);function i(e){return-1!==e.indexOf("e")?e.replace(/[.]?0+e/,"e"):-1!==e.indexOf(".")?e.replace(/[.]?0+$/,""):e}t.formatPiePercent=function(e,t){var r=i((100*e).toPrecision(3));return n.numSeparate(r,t)+"%"},t.formatPieValue=function(e,t){var r=i(e.toPrecision(10));return n.numSeparate(r,t)},t.getFirstFilled=function(e,t){if(Array.isArray(e))for(var r=0;r"),name:f.hovertemplate||-1!==d.indexOf("name")?f.name:void 0,idealAlign:e.pxmid[0]<0?"left":"right",color:m.castOption(_.bgcolor,e.pts)||e.color,borderColor:m.castOption(_.bordercolor,e.pts),fontFamily:m.castOption(w.family,e.pts),fontSize:m.castOption(w.size,e.pts),fontColor:m.castOption(w.color,e.pts),nameLength:m.castOption(_.namelength,e.pts),textAlign:m.castOption(_.align,e.pts),hovertemplate:m.castOption(f.hovertemplate,e.pts),hovertemplateLabels:e,eventData:[g(e,f)]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t,inOut_bbox:k}),e.bbox=k[0],u._hasHoverLabel=!0}u._hasHoverEvent=!0,t.emit("plotly_hover",{points:[g(e,f)],event:n.event})}})),e.on("mouseout",(function(e){var r=t._fullLayout,i=t._fullData[u.index],o=n.select(this).datum();u._hasHoverEvent&&(e.originalEvent=n.event,t.emit("plotly_unhover",{points:[g(o,i)],event:n.event}),u._hasHoverEvent=!1),u._hasHoverLabel&&(a.loneUnhover(r._hoverlayer.node()),u._hasHoverLabel=!1)})),e.on("click",(function(e){var r=t._fullLayout,i=t._fullData[u.index];t._dragging||!1===r.hovermode||(t._hoverdata=[g(e,i)],a.click(t,n.event))}))}function b(e,t,r){var n=m.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=m.castOption(e._input.textfont.color,t.pts));var i=m.castOption(e.insidetextfont.family,t.pts)||m.castOption(e.textfont.family,t.pts)||r.family,a=m.castOption(e.insidetextfont.size,t.pts)||m.castOption(e.textfont.size,t.pts)||r.size;return{color:n||o.contrast(t.color),family:i,size:a}}function _(e,t){for(var r,n,i=0;it&&t>n||r=-4;m-=2)g(Math.PI*m,"tan");for(m=4;m>=-4;m-=2)g(Math.PI*(m+1),"tan")}if(f||h){for(m=4;m>=-4;m-=2)g(Math.PI*(m+1.5),"rad");for(m=4;m>=-4;m-=2)g(Math.PI*(m+.5),"rad")}}if(s||p||f){var y=Math.sqrt(e.width*e.width+e.height*e.height);if((a={scale:i*n*2/y,rCenter:1-i,rotate:0}).textPosAngle=(t.startangle+t.stopangle)/2,a.scale>=1)return a;v.push(a)}(p||h)&&((a=k(e,n,o,l,u)).textPosAngle=(t.startangle+t.stopangle)/2,v.push(a)),(p||d)&&((a=T(e,n,o,l,u)).textPosAngle=(t.startangle+t.stopangle)/2,v.push(a));for(var x=0,b=0,_=0;_=1)break}return v[x]}function k(e,t,r,n,i){t=Math.max(0,t-2*v);var a=e.width/e.height,o=S(a,n,t,r);return{scale:2*o/e.height,rCenter:M(a,o/t),rotate:A(i)}}function T(e,t,r,n,i){t=Math.max(0,t-2*v);var a=e.height/e.width,o=S(a,n,t,r);return{scale:2*o/e.width,rCenter:M(a,o/t),rotate:A(i+Math.PI/2)}}function M(e,t){return Math.cos(t)-e*t}function A(e){return(180/Math.PI*e+720)%180-90}function S(e,t,r,n){var i=e+1/(2*Math.tan(t));return r*Math.min(1/(Math.sqrt(i*i+.5)+i),n/(Math.sqrt(e*e+n/2)+e))}function E(e,t){return e.v!==t.vTotal||t.trace.hole?Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2):1}function C(e,t){var r=t.pxmid[0],n=t.pxmid[1],i=e.width/2,a=e.height/2;return r<0&&(i*=-1),n<0&&(a*=-1),{scale:1,rCenter:1,rotate:0,x:i+Math.abs(a)*(i>0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function L(e,t){var r,n,i,a=e.trace,o={x:e.cx,y:e.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)*e.r,s.ty-=e.titleBox.height):-1!==a.title.position.indexOf("bottom")&&(o.y+=(1+i)*e.r);var l,u,c=(l=e.r,u=e.trace.aspectratio,l/(void 0===u?1:u)),f=t.w*(a.domain.x[1]-a.domain.x[0])/2;return-1!==a.title.position.indexOf("left")?(f+=c,o.x-=(1+i)*c,s.tx+=e.titleBox.width/2):-1!==a.title.position.indexOf("center")?f*=2:-1!==a.title.position.indexOf("right")&&(f+=c,o.x+=(1+i)*c,s.tx-=e.titleBox.width/2),r=f/e.titleBox.width,n=P(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function P(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function O(e){var t,r=e.pull;if(!r)return 0;if(Array.isArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function I(e,t){for(var r=[],n=0;n1?c=(u=r.r)/i.aspectratio:u=(c=r.r)*i.aspectratio,l=(u*=(1+i.baseratio)/2)*c}o=Math.min(o,l/r.vTotal)}for(n=0;n")}if(a){var x=l.castOption(i,t.i,"texttemplate");if(x){var b=function(e){return{label:e.label,value:e.v,valueLabel:m.formatPieValue(e.v,n.separators),percent:e.v/r.vTotal,percentLabel:m.formatPiePercent(e.v/r.vTotal,n.separators),color:e.color,text:e.text,customdata:l.castOption(i,e.i,"customdata")}}(t),_=m.getFirstFilled(i.text,t.pts);(y(_)||""===_)&&(b.text=_),t.text=l.texttemplateString(x,b,e._fullLayout._d3locale,b,i._meta||{})}else t.text=""}}function z(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}e.exports={plot:function(e,t){var r=e._context.staticPlot,a=e._fullLayout,d=a._size;p("pie",a),_(t,e),I(t,d);var v=l.makeTraceGroups(a._pielayer,t,"trace").each((function(t){var p=n.select(this),v=t[0],g=v.trace;!function(e){var t,r,n,i=e[0],a=i.r,o=i.trace,s=m.getRotationAngle(o.rotation),l=2*Math.PI/i.vTotal,u="px0",c="px1";if("counterclockwise"===o.direction){for(t=0;ti.vTotal/2?1:0,r.halfangle=Math.PI*Math.min(r.v/i.vTotal,.5),r.ring=1-o.hole,r.rInscribed=E(r,i))}(t),p.attr("stroke-linejoin","round"),p.each((function(){var y=n.select(this).selectAll("g.slice").data(t);y.enter().append("g").classed("slice",!0),y.exit().remove();var _=[[[],[]],[[],[]]],k=!1;y.each((function(i,o){if(i.hidden)n.select(this).selectAll("path,g").remove();else{i.pointNumber=i.i,i.curveNumber=g.index,_[i.pxmid[1]<0?0:1][i.pxmid[0]<0?0:1].push(i);var u=v.cx,c=v.cy,d=n.select(this),p=d.selectAll("path.surface").data([i]);if(p.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),d.call(x,e,t),g.pull){var y=+m.castOption(g.pull,i.pts)||0;y>0&&(u+=y*i.pxmid[0],c+=y*i.pxmid[1])}i.cxFinal=u,i.cyFinal=c;var T=g.hole;if(i.v===v.vTotal){var M="M"+(u+i.px0[0])+","+(c+i.px0[1])+P(i.px0,i.pxmid,!0,1)+P(i.pxmid,i.px0,!0,1)+"Z";T?p.attr("d","M"+(u+T*i.px0[0])+","+(c+T*i.px0[1])+P(i.px0,i.pxmid,!1,T)+P(i.pxmid,i.px0,!1,T)+"Z"+M):p.attr("d",M)}else{var A=P(i.px0,i.px1,!0,1);if(T){var S=1-T;p.attr("d","M"+(u+T*i.px1[0])+","+(c+T*i.px1[1])+P(i.px1,i.px0,!1,T)+"l"+S*i.px0[0]+","+S*i.px0[1]+A+"Z")}else p.attr("d","M"+u+","+c+"l"+i.px0[0]+","+i.px0[1]+A+"Z")}R(e,i,v);var E=m.castOption(g.textposition,i.pts),L=d.selectAll("g.slicetext").data(i.text&&"none"!==E?[0]:[]);L.enter().append("g").classed("slicetext",!0),L.exit().remove(),L.each((function(){var r=l.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),d=l.ensureUniformFontSize(e,"outside"===E?function(e,t,r){var n=m.castOption(e.outsidetextfont.color,t.pts)||m.castOption(e.textfont.color,t.pts)||r.color,i=m.castOption(e.outsidetextfont.family,t.pts)||m.castOption(e.textfont.family,t.pts)||r.family,a=m.castOption(e.outsidetextfont.size,t.pts)||m.castOption(e.textfont.size,t.pts)||r.size;return{color:n,family:i,size:a}}(g,i,a.font):b(g,i,a.font));r.text(i.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(s.font,d).call(f.convertToTspans,e);var p,y=s.bBox(r.node());if("outside"===E)p=C(y,i);else if(p=w(y,i,v),"auto"===E&&p.scale<1){var x=l.ensureUniformFontSize(e,g.outsidetextfont);r.call(s.font,x),p=C(y=s.bBox(r.node()),i)}var _=p.textPosAngle,T=void 0===_?i.pxmid:D(v.r,_);if(p.targetX=u+T[0]*p.rCenter+(p.x||0),p.targetY=c+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=d.size,h(g.type,p,a),t[o].transform=p,l.setTransormAndDisplay(r,p)}))}function P(e,t,r,n){var a=n*(t[0]-e[0]),o=n*(t[1]-e[1]);return"a"+n*v.r+","+n*v.r+" 0 "+i.largeArc+(r?" 1 ":" 0 ")+a+","+o}}));var T=n.select(this).selectAll("g.titletext").data(g.title.text?[0]:[]);if(T.enter().append("g").classed("titletext",!0),T.exit().remove(),T.each((function(){var t,r=l.ensureSingle(n.select(this),"text","",(function(e){e.attr("data-notex",1)})),i=g.title.text;g._meta&&(i=l.templateString(i,g._meta)),r.text(i).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(s.font,g.title.font).call(f.convertToTspans,e),t="middle center"===g.title.position?function(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}(v):L(v,d),r.attr("transform",c(t.x,t.y)+u(Math.min(1,t.scale))+c(t.tx,t.ty))})),k&&function(e,t){var r,n,i,a,o,s,l,u,c,f,d,h,p;function v(e,t){return e.pxmid[1]-t.pxmid[1]}function g(e,t){return t.pxmid[1]-e.pxmid[1]}function y(e,r){r||(r={});var i,u,c,d,h=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),p=n?e.yLabelMin:e.yLabelMax,v=n?e.yLabelMax:e.yLabelMin,g=e.cyFinal+o(e.px0[1],e.px1[1]),y=h-p;if(y*l>0&&(e.labelExtraY=y),Array.isArray(t.pull))for(u=0;u=(m.castOption(t.pull,c.pts)||0)||((e.pxmid[1]-c.pxmid[1])*l>0?(y=c.cyFinal+o(c.px0[1],c.px1[1])-p-e.labelExtraY)*l>0&&(e.labelExtraY+=y):(v+e.labelExtraY-g)*l>0&&(i=3*s*Math.abs(u-f.indexOf(e)),(d=c.cxFinal+a(c.px0[0],c.px1[0])+i-(e.cxFinal+e.pxmid[0])-e.labelExtraX)*s>0&&(e.labelExtraX+=d)))}for(n=0;n<2;n++)for(i=n?v:g,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,(u=e[n][r]).sort(i),c=e[1-n][r],f=c.concat(u),h=[],d=0;dMath.abs(f)?s+="l"+f*e.pxmid[0]/e.pxmid[1]+","+f+"H"+(a+e.labelExtraX+u):s+="l"+e.labelExtraX+","+c+"v"+(f-c)+"h"+u}else s+="V"+(e.yLabelMid+e.labelExtraY)+"h"+u;l.ensureSingle(r,"path","textline").call(o.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})}else r.select("path.textline").remove()}))}(y,g),k&&g.automargin){var M=s.bBox(p.node()),A=g.domain,S=d.w*(A.x[1]-A.x[0]),E=d.h*(A.y[1]-A.y[0]),P=(.5*S-v.r)/d.w,O=(.5*E-v.r)/d.h;i.autoMargin(e,"pie."+g.uid+".automargin",{xl:A.x[0]-P,xr:A.x[1]+P,yb:A.y[0]-O,yt:A.y[1]+O,l:Math.max(v.cx-v.r-M.left,0),r:Math.max(M.right-(v.cx+v.r),0),b:Math.max(M.bottom-(v.cy+v.r),0),t:Math.max(v.cy-v.r-M.top,0),pad:5})}}))}));setTimeout((function(){v.selectAll("tspan").each((function(){var e=n.select(this);e.attr("dy")&&e.attr("dy",e.attr("dy"))}))}),0)},formatSliceLabel:R,transformInsideText:w,determineInsideTextFont:b,positionTitleOutside:L,prerenderTitles:_,layoutAreas:I,attachFxHandlers:x,computeTransform:z}},68357:function(e,t,r){"use strict";var n=r(39898),i=r(63463),a=r(72597).resizeText;e.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");a(e,t,"pie"),t.each((function(e){var t=e[0].trace,r=n.select(this);r.style({opacity:t.opacity}),r.selectAll("path.surface").each((function(e){n.select(this).call(i,e,t)}))}))}},63463:function(e,t,r){"use strict";var n=r(7901),i=r(53581).castOption;e.exports=function(e,t,r){var a=r.marker.line,o=i(a.color,t.pts)||n.defaultLine,s=i(a.width,t.pts)||0;e.style("stroke-width",s).call(n.fill,t.color).call(n.stroke,o)}},10959:function(e,t,r){"use strict";var n=r(82196);e.exports={x:n.x,y:n.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:n.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(e,t,r){"use strict";var n=r(9330).gl_pointcloud2d,i=r(78614),a=r(71739).findExtremes,o=r(34603);function s(e,t){this.scene=e,this.uid=t,this.type="pointcloud",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color="rgb(0, 0, 0)",this.name="",this.hoverinfo="all",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=n(e.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(e){var t=this.idToIndex[e.pointId];return{trace:this,dataCoord:e.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*t],this.pickXYData[2*t+1]]:[this.pickXData[t],this.pickYData[t]],textLabel:Array.isArray(this.textLabels)?this.textLabels[t]:this.textLabels,color:this.color,name:this.name,pointIndex:t,hoverinfo:this.hoverinfo}},l.update=function(e){this.index=e.index,this.textLabels=e.text,this.name=e.name,this.hoverinfo=e.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(e),this.color=o(e,{})},l.updateFast=function(e){var t,r,n,o,s,l,u=this.xData=this.pickXData=e.x,c=this.yData=this.pickYData=e.y,f=this.pickXYData=e.xy,d=e.xbounds&&e.ybounds,h=e.indices,p=this.bounds;if(f){if(n=f,t=f.length>>>1,d)p[0]=e.xbounds[0],p[2]=e.xbounds[1],p[1]=e.ybounds[0],p[3]=e.ybounds[1];else for(l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);if(h)r=h;else for(r=new Int32Array(t),l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);this.idToIndex=r,this.pointcloudOptions.idToIndex=r,this.pointcloudOptions.positions=n;var v=i(e.marker.color),m=i(e.marker.border.color),g=e.opacity*e.marker.opacity;v[3]*=g,this.pointcloudOptions.color=v;var y=e.marker.blend;null===y&&(y=u.length<100||c.length<100),this.pointcloudOptions.blend=y,m[3]*=g,this.pointcloudOptions.borderColor=m;var x=e.marker.sizemin,b=Math.max(e.marker.sizemax,e.marker.sizemin);this.pointcloudOptions.sizeMin=x,this.pointcloudOptions.sizeMax=b,this.pointcloudOptions.areaRatio=e.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var _=this.scene.xaxis,w=this.scene.yaxis,k=b/2||.5;e._extremes[_._id]=a(_,[p[0],p[2]],{ppad:k}),e._extremes[w._id]=a(w,[p[1],p[3]],{ppad:k})},l.dispose=function(){this.pointcloud.dispose()},e.exports=function(e,t){var r=new s(e,t.uid);return r.update(t),r}},33876:function(e,t,r){"use strict";var n=r(71828),i=r(10959);e.exports=function(e,t,r){function a(r,a){return n.coerce(e,t,i,r,a)}a("x"),a("y"),a("xbounds"),a("ybounds"),e.xy&&e.xy instanceof Float32Array&&(t.xy=e.xy),e.indices&&e.indices instanceof Int32Array&&(t.indices=e.indices),a("text"),a("marker.color",r),a("marker.opacity"),a("marker.blend"),a("marker.sizemin"),a("marker.sizemax"),a("marker.border.color",r),a("marker.border.arearatio"),t._length=null}},20593:function(e,t,r){"use strict";["*pointcloud* trace is deprecated!","Please consider switching to the *scattergl* trace type."].join(" "),e.exports={attributes:r(10959),supplyDefaults:r(33876),calc:r(36563),plot:r(42743),moduleType:"trace",name:"pointcloud",basePlotModule:r(4796),categories:["gl","gl2d","showLegend"],meta:{}}},39953:function(e,t,r){"use strict";var n=r(41940),i=r(9012),a=r(22399),o=r(77914),s=r(27670).Y,l=r(5386).fF,u=r(50693),c=r(44467).templatedArray,f=r(12663).descriptionOnlyNumbers,d=r(1426).extendFlat,h=r(30962).overrideAll;(e.exports=h({hoverinfo:d({},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:n({}),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:c("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:d(u().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")).transforms=void 0},75536:function(e,t,r){"use strict";var n=r(30962).overrideAll,i=r(27659).a0,a=r(60436),o=r(528),s=r(6964),l=r(28569),u=r(47322).prepSelect,c=r(71828),f=r(73972),d="sankey";function h(e,t){var r=e._fullData[t],n=e._fullLayout,i=n.dragmode,a="pan"===n.dragmode?"move":"crosshair",o=r._bgRect;if(o&&"pan"!==i&&"zoom"!==i){s(o,a);var d={_id:"x",c2p:c.identity,_offset:r._sankey.translateX,_length:r._sankey.width},h={_id:"y",c2p:c.identity,_offset:r._sankey.translateY,_length:r._sankey.height},p={gd:e,element:o.node(),plotinfo:{id:t,xaxis:d,yaxis:h,fillRangeItems:c.noop},subplot:t,xaxes:[d],yaxes:[h],doneFnCompleted:function(r){var n,i=e._fullData[t],a=i.node.groups.slice(),o=[];function s(e){for(var t=i._sankey.graph.nodes,r=0;ry&&(y=a.source[t]),a.target[t]>y&&(y=a.target[t]);var x,b=y+1;e.node._count=b;var _=e.node.groups,w={};for(t=0;t<_.length;t++){var k=_[t];for(x=0;x0&&s(E,b)&&s(C,b)&&(!w.hasOwnProperty(E)||!w.hasOwnProperty(C)||w[E]!==w[C])){w.hasOwnProperty(C)&&(C=w[C]),w.hasOwnProperty(E)&&(E=w[E]),C=+C,d[E=+E]=d[C]=!0;var L="";a.label&&a.label[t]&&(L=a.label[t]);var P=null;L&&h.hasOwnProperty(L)&&(P=h[L]),u.push({pointNumber:t,label:L,color:c?a.color[t]:a.color,customdata:f?a.customdata[t]:a.customdata,concentrationscale:P,source:E,target:C,value:+S}),A.source.push(E),A.target.push(C)}}var O=b+_.length,I=o(r.color),D=o(r.customdata),R=[];for(t=0;tb-1,childrenNodes:[],pointNumber:t,label:z,color:I?r.color[t]:r.color,customdata:D?r.customdata[t]:r.customdata})}var F=!1;return function(e,t,r){for(var a=i.init2dArray(e,0),o=0;o1}))}(O,A.source,A.target)&&(F=!0),{circular:F,links:u,nodes:R,groups:_,groupLookup:w}}e.exports=function(e,t){var r=u(t);return a({circular:r.circular,_nodes:r.nodes,_links:r.links,_groups:r.groups,_groupLookup:r.groupLookup})}},85247:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(39953),a=r(7901),o=r(84267),s=r(27670).c,l=r(38048),u=r(44467),c=r(85501);function f(e,t){function r(r,a){return n.coerce(e,t,i.link.colorscales,r,a)}r("label"),r("cmin"),r("cmax"),r("colorscale")}e.exports=function(e,t,r,d){function h(r,a){return n.coerce(e,t,i,r,a)}var p=n.extendDeep(d.hoverlabel,e.hoverlabel),v=e.node,m=u.newContainer(t,"node");function g(e,t){return n.coerce(v,m,i.node,e,t)}g("label"),g("groups"),g("x"),g("y"),g("pad"),g("thickness"),g("line.color"),g("line.width"),g("hoverinfo",e.hoverinfo),l(v,m,g,p),g("hovertemplate");var y=d.colorway;g("color",m.label.map((function(e,t){return a.addOpacity(function(e){return y[e%y.length]}(t),.8)}))),g("customdata");var x=e.link||{},b=u.newContainer(t,"link");function _(e,t){return n.coerce(x,b,i.link,e,t)}_("label"),_("arrowlen"),_("source"),_("target"),_("value"),_("line.color"),_("line.width"),_("hoverinfo",e.hoverinfo),l(x,b,_,p),_("hovertemplate");var w,k=o(d.paper_bgcolor).getLuminance()<.333?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)";_("color",n.repeat(k,b.value.length)),_("customdata"),c(x,b,{name:"colorscales",handleItemDefaults:f}),s(t,d,h),h("orientation"),h("valueformat"),h("valuesuffix"),m.x.length&&m.y.length&&(w="freeform"),h("arrangement",w),n.coerceFont(h,"textfont",n.extendFlat({},d.font)),t._length=null}},29396:function(e,t,r){"use strict";e.exports={attributes:r(39953),supplyDefaults:r(26857),calc:r(92930),plot:r(60436),moduleType:"trace",name:"sankey",basePlotModule:r(75536),selectPoints:r(84564),categories:["noOpacity"],meta:{}}},60436:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=i.numberFormat,o=r(3393),s=r(30211),l=r(7901),u=r(85247).cn,c=i._;function f(e){return""!==e}function d(e,t){return e.filter((function(e){return e.key===t.traceId}))}function h(e,t){n.select(e).select("path").style("fill-opacity",t),n.select(e).select("rect").style("fill-opacity",t)}function p(e){n.select(e).select("text.name").style("fill","black")}function v(e){return function(t){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function m(e){return function(t){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function g(e,t,r){t&&r&&d(r,t).selectAll("."+u.sankeyLink).filter(v(t)).call(x.bind(0,t,r,!1))}function y(e,t,r){t&&r&&d(r,t).selectAll("."+u.sankeyLink).filter(v(t)).call(b.bind(0,t,r,!1))}function x(e,t,r,n){var i=n.datum().link.label;n.style("fill-opacity",(function(e){if(!e.link.concentrationscale)return.4})),i&&d(t,e).selectAll("."+u.sankeyLink).filter((function(e){return e.link.label===i})).style("fill-opacity",(function(e){if(!e.link.concentrationscale)return.4})),r&&d(t,e).selectAll("."+u.sankeyNode).filter(m(e)).call(g)}function b(e,t,r,n){var i=n.datum().link.label;n.style("fill-opacity",(function(e){return e.tinyColorAlpha})),i&&d(t,e).selectAll("."+u.sankeyLink).filter((function(e){return e.link.label===i})).style("fill-opacity",(function(e){return e.tinyColorAlpha})),r&&d(t,e).selectAll(u.sankeyNode).filter(m(e)).call(y)}function _(e,t){var r=e.hoverlabel||{},n=i.nestedProperty(r,t).get();return!Array.isArray(n)&&n}e.exports=function(e,t){for(var r=e._fullLayout,i=r._paper,d=r._size,v=0;v"),color:_(o,"bgcolor")||l.addOpacity(v.color,1),borderColor:_(o,"bordercolor"),fontFamily:_(o,"font.family"),fontSize:_(o,"font.size"),fontColor:_(o,"font.color"),nameLength:_(o,"namelength"),textAlign:_(o,"align"),idealAlign:n.event.x"),color:_(o,"bgcolor")||i.tinyColorHue,borderColor:_(o,"bordercolor"),fontFamily:_(o,"font.family"),fontSize:_(o,"font.size"),fontColor:_(o,"font.color"),nameLength:_(o,"namelength"),textAlign:_(o,"align"),idealAlign:"left",hovertemplate:o.hovertemplate,hovertemplateLabels:y,eventData:[i.node]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:e});h(w,.85),p(w)}}},unhover:function(t,i,a){!1!==e._fullLayout.hovermode&&(n.select(t).call(y,i,a),"skip"!==i.node.trace.node.hoverinfo&&(i.node.fullData=i.node.trace,e.emit("plotly_unhover",{event:n.event,points:[i.node]})),s.loneUnhover(r._hoverlayer.node()))},select:function(t,r,i){var a=r.node;a.originalEvent=n.event,e._hoverdata=[a],n.select(t).call(y,r,i),s.click(e,{target:!0})}}})}},3393:function(e,t,r){"use strict";var n=r(49887),i=r(81684).k4,a=r(39898),o=r(30838),s=r(86781),l=r(85247),u=r(84267),c=r(7901),f=r(91424),d=r(71828),h=d.strTranslate,p=d.strRotate,v=r(28984),m=v.keyFun,g=v.repeat,y=v.unwrap,x=r(63893),b=r(73972),_=r(18783),w=_.CAP_SHIFT,k=_.LINE_SPACING;function T(e,t,r){var n,i=y(t),a=i.trace,c=a.domain,f="h"===a.orientation,h=a.node.pad,p=a.node.thickness,v=e.width*(c.x[1]-c.x[0]),m=e.height*(c.y[1]-c.y[0]),g=i._nodes,x=i._links,b=i.circular;(n=b?s.sankeyCircular().circularLinkGap(0):o.sankey()).iterations(l.sankeyIterations).size(f?[v,m]:[m,v]).nodeWidth(p).nodePadding(h).nodeId((function(e){return e.pointNumber})).nodes(g).links(x);var _,w,k,T=n();for(var M in n.nodePadding()=i||(r=i-t.y0)>1e-6&&(t.y0+=r,t.y1+=r),i=t.y1+h}))}(function(e){var t,r,n=e.map((function(e,t){return{x0:e.x0,index:t}})).sort((function(e,t){return e.x0-t.x0})),i=[],a=-1,o=-1/0;for(_=0;_o+p&&(a+=1,t=s.x0),o=s.x0,i[a]||(i[a]=[]),i[a].push(s),r=t-s.x0,s.x0+=r,s.x1+=r}return i}(g=T.nodes)),n.update(T)}return{circular:b,key:r,trace:a,guid:d.randstr(),horizontal:f,width:v,height:m,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:c.x[0]*e.width+e.margin.l,translateY:e.height-c.y[1]*e.height+e.margin.t,dragParallel:f?m:v,dragPerpendicular:f?v:m,arrangement:a.arrangement,sankey:n,graph:T,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function M(e,t,r){var n=u(t.color),i=t.source.label+"|"+t.target.label+"__"+r;return t.trace=e.trace,t.curveNumber=e.trace.index,{circular:e.circular,key:i,traceId:e.key,pointNumber:t.pointNumber,link:t,tinyColorHue:c.tinyRGB(n),tinyColorAlpha:n.getAlpha(),linkPath:A,linkLineColor:e.linkLineColor,linkLineWidth:e.linkLineWidth,linkArrowLength:e.linkArrowLength,valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,parent:e,interactionState:e.interactionState,flow:t.flow}}function A(){return function(e){var t=e.linkArrowLength;if(e.link.circular)return function(e,t){var r=e.width/2,n=e.circularPathData;return"top"===e.circularLinkType?"M "+(n.targetX-t)+" "+(n.targetY+r)+" L"+(n.rightInnerExtent-t)+" "+(n.targetY+r)+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightSmallArcRadius+r)+" 0 0 1 "+(n.rightFullExtent-r-t)+" "+(n.targetY-n.rightSmallArcRadius)+"L"+(n.rightFullExtent-r-t)+" "+n.verticalRightInnerExtent+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightLargeArcRadius+r)+" 0 0 1 "+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent-r)+"L"+n.leftInnerExtent+" "+(n.verticalFullExtent-r)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftLargeArcRadius+r)+" 0 0 1 "+(n.leftFullExtent+r)+" "+n.verticalLeftInnerExtent+"L"+(n.leftFullExtent+r)+" "+(n.sourceY-n.leftSmallArcRadius)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftSmallArcRadius+r)+" 0 0 1 "+n.leftInnerExtent+" "+(n.sourceY+r)+"L"+n.sourceX+" "+(n.sourceY+r)+"L"+n.sourceX+" "+(n.sourceY-r)+"L"+n.leftInnerExtent+" "+(n.sourceY-r)+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftSmallArcRadius-r)+" 0 0 0 "+(n.leftFullExtent-r)+" "+(n.sourceY-n.leftSmallArcRadius)+"L"+(n.leftFullExtent-r)+" "+n.verticalLeftInnerExtent+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftLargeArcRadius-r)+" 0 0 0 "+n.leftInnerExtent+" "+(n.verticalFullExtent+r)+"L"+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent+r)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightLargeArcRadius-r)+" 0 0 0 "+(n.rightFullExtent+r-t)+" "+n.verticalRightInnerExtent+"L"+(n.rightFullExtent+r-t)+" "+(n.targetY-n.rightSmallArcRadius)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightSmallArcRadius-r)+" 0 0 0 "+(n.rightInnerExtent-t)+" "+(n.targetY-r)+"L"+(n.targetX-t)+" "+(n.targetY-r)+(t>0?"L"+n.targetX+" "+n.targetY:"")+"Z":"M "+(n.targetX-t)+" "+(n.targetY-r)+" L"+(n.rightInnerExtent-t)+" "+(n.targetY-r)+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightSmallArcRadius+r)+" 0 0 0 "+(n.rightFullExtent-r-t)+" "+(n.targetY+n.rightSmallArcRadius)+"L"+(n.rightFullExtent-r-t)+" "+n.verticalRightInnerExtent+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightLargeArcRadius+r)+" 0 0 0 "+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent+r)+"L"+n.leftInnerExtent+" "+(n.verticalFullExtent+r)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftLargeArcRadius+r)+" 0 0 0 "+(n.leftFullExtent+r)+" "+n.verticalLeftInnerExtent+"L"+(n.leftFullExtent+r)+" "+(n.sourceY+n.leftSmallArcRadius)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftSmallArcRadius+r)+" 0 0 0 "+n.leftInnerExtent+" "+(n.sourceY-r)+"L"+n.sourceX+" "+(n.sourceY-r)+"L"+n.sourceX+" "+(n.sourceY+r)+"L"+n.leftInnerExtent+" "+(n.sourceY+r)+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftSmallArcRadius-r)+" 0 0 1 "+(n.leftFullExtent-r)+" "+(n.sourceY+n.leftSmallArcRadius)+"L"+(n.leftFullExtent-r)+" "+n.verticalLeftInnerExtent+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftLargeArcRadius-r)+" 0 0 1 "+n.leftInnerExtent+" "+(n.verticalFullExtent-r)+"L"+(n.rightInnerExtent-t)+" "+(n.verticalFullExtent-r)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightLargeArcRadius-r)+" 0 0 1 "+(n.rightFullExtent+r-t)+" "+n.verticalRightInnerExtent+"L"+(n.rightFullExtent+r-t)+" "+(n.targetY+n.rightSmallArcRadius)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightSmallArcRadius-r)+" 0 0 1 "+(n.rightInnerExtent-t)+" "+(n.targetY+r)+"L"+(n.targetX-t)+" "+(n.targetY+r)+(t>0?"L"+n.targetX+" "+n.targetY:"")+"Z"}(e.link,t);var r=Math.abs((e.link.target.x0-e.link.source.x1)/2);t>r&&(t=r);var n=e.link.source.x1,a=e.link.target.x0-t,o=i(n,a),s=o(.5),l=o(.5),u=e.link.y0-e.link.width/2,c=e.link.y0+e.link.width/2,f=e.link.y1-e.link.width/2,d=e.link.y1+e.link.width/2,h="M"+n+","+u,p="C"+s+","+u+" "+l+","+f+" "+a+","+f,v="C"+l+","+d+" "+s+","+c+" "+n+","+c,m=t>0?"L"+(a+t)+","+(f+e.link.width/2):"";return h+p+(m+="L"+a+","+d)+v+"Z"}}function S(e,t){var r=u(t.color),n=l.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=d.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:1===t.originalLayer,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:c.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function E(e){e.attr("transform",(function(e){return h(e.node.x0.toFixed(3),e.node.y0.toFixed(3))}))}function C(e){e.call(E)}function L(e,t){e.call(C),t.attr("d",A())}function P(e){e.attr("width",(function(e){return e.node.x1-e.node.x0})).attr("height",(function(e){return e.visibleHeight}))}function O(e){return e.link.width>1||e.linkLineWidth>0}function I(e){return h(e.translateX,e.translateY)+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function D(e,t,r){e.on(".basic",null).on("mouseover.basic",(function(e){e.interactionState.dragInProgress||e.partOfGroup||(r.hover(this,e,t),e.interactionState.hovered=[this,e])})).on("mousemove.basic",(function(e){e.interactionState.dragInProgress||e.partOfGroup||(r.follow(this,e),e.interactionState.hovered=[this,e])})).on("mouseout.basic",(function(e){e.interactionState.dragInProgress||e.partOfGroup||(r.unhover(this,e,t),e.interactionState.hovered=!1)})).on("click.basic",(function(e){e.interactionState.hovered&&(r.unhover(this,e,t),e.interactionState.hovered=!1),e.interactionState.dragInProgress||e.partOfGroup||r.select(this,e,t)}))}function R(e,t,r,i){var o=a.behavior.drag().origin((function(e){return{x:e.node.x0+e.visibleWidth/2,y:e.node.y0+e.visibleHeight/2}})).on("dragstart",(function(a){if("fixed"!==a.arrangement&&(d.ensureSingle(i._fullLayout._infolayer,"g","dragcover",(function(e){i._fullLayout._dragCover=e})),d.raiseToTop(this),a.interactionState.dragInProgress=a.node,F(a.node),a.interactionState.hovered&&(r.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(e,t,r,i){!function(e){for(var t=0;t0&&n.forceLayouts[t].alpha(0)}}(0,t,a,r)).stop()}(0,o,a),function(e,t,r,n,i){window.requestAnimationFrame((function a(){var o;for(o=0;o0)window.requestAnimationFrame(a);else{var s=r.node.originalX;r.node.x0=s-r.visibleWidth/2,r.node.x1=s+r.visibleWidth/2,z(r,i)}}))}(e,t,a,o,i)}})).on("drag",(function(r){if("fixed"!==r.arrangement){var n=a.event.x,i=a.event.y;"snap"===r.arrangement?(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2,r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2):("freeform"===r.arrangement&&(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2),i=Math.max(0,Math.min(r.size-r.visibleHeight/2,i)),r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2),F(r.node),"snap"!==r.arrangement&&(r.sankey.update(r.graph),L(e.filter(N(r)),t))}})).on("dragend",(function(e){if("fixed"!==e.arrangement){e.interactionState.dragInProgress=!1;for(var t=0;tl&&L[g].gap;)g--;for(x=L[g].s,v=L.length-1;v>g;v--)L[v].s=x;for(;lS[f]&&f=0;f--){var d=e[f];if("scatter"===d.type&&d.xaxis===u.xaxis&&d.yaxis===u.yaxis){d.opacity=void 0;break}}}}}},17438:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(82196),o=r(47581),s=r(34098),l=r(67513),u=r(73927),c=r(565),f=r(49508),d=r(11058),h=r(94039),p=r(82410),v=r(28908),m=r(71828).coercePattern;e.exports=function(e,t,r,g){function y(r,i){return n.coerce(e,t,a,r,i)}var x=l(e,t,g,y);if(x||(t.visible=!1),t.visible){u(e,t,g,y),y("xhoverformat"),y("yhoverformat");var b=c(e,t,g,y);"group"===g.scattermode&&void 0===t.orientation&&y("orientation","v");var _=!b&&x=Math.min(t,r)&&p<=Math.max(t,r)?0:1/0}var n=Math.max(3,e.mrc||0),i=1-1/n,a=Math.abs(d.c2p(e.x)-p);return a=Math.min(t,r)&&v<=Math.max(t,r)?0:1/0}var n=Math.max(3,e.mrc||0),i=1-1/n,a=Math.abs(h.c2p(e.y)-v);return aY!==(B=D[O][1])>=Y&&(z=D[O-1][0],F=D[O][0],B-N&&(R=z+(F-z)*(Y-N)/(B-N),H=Math.min(H,R),q=Math.max(q,R)));H=Math.max(H,0),q=Math.min(q,d._length);var Z=s.defaultLine;return s.opacity(f.fillcolor)?Z=f.fillcolor:s.opacity((f.line||{}).color)&&(Z=f.line.color),n.extendFlat(e,{distance:e.maxHoverDistance,x0:H,x1:q,y0:Y,y1:Y,color:Z,hovertemplate:!1}),delete e.index,f.text&&!Array.isArray(f.text)?e.text=String(f.text):e.text=f.name,[e]}}}},67368:function(e,t,r){"use strict";var n=r(34098);e.exports={hasLines:n.hasLines,hasMarkers:n.hasMarkers,hasText:n.hasText,isBubble:n.isBubble,attributes:r(82196),layoutAttributes:r(21479),supplyDefaults:r(17438),crossTraceDefaults:r(34936),supplyLayoutDefaults:r(79334),calc:r(47761).calc,crossTraceCalc:r(72626),arraysToCalcdata:r(75225),plot:r(32663),colorbar:r(4898),formatLabels:r(8225),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(33720),selectPoints:r(98002),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:r(93612),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}},21479:function(e){"use strict";e.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}},79334:function(e,t,r){"use strict";var n=r(71828),i=r(21479);e.exports=function(e,t){var r,a,o="group"===t.barmode;"group"===t.scattermode&&(r="scattergap",a=o?t.bargap:.2,n.coerce(e,t,i,r,a))}},11058:function(e,t,r){"use strict";var n=r(71828).isArrayOrTypedArray,i=r(52075).hasColorscale,a=r(1586);e.exports=function(e,t,r,o,s,l){l||(l={});var u=(e.marker||{}).color;s("line.color",r),i(e,"line")?a(e,t,o,s,{prefix:"line.",cLetter:"c"}):s("line.color",!n(u)&&u||r),s("line.width"),l.noDash||s("line.dash"),l.backoff&&s("line.backoff")}},34621:function(e,t,r){"use strict";var n=r(91424),i=r(50606),a=i.BADNUM,o=i.LOG_CLIP,s=o+.5,l=o-.5,u=r(71828),c=u.segmentsIntersect,f=u.constrain,d=r(47581);e.exports=function(e,t){var r,i,o,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S,E=t.trace||{},C=t.xaxis,L=t.yaxis,P="log"===C.type,O="log"===L.type,I=C._length,D=L._length,R=t.backoff,z=E.marker,F=t.connectGaps,N=t.baseTolerance,B=t.shape,j="linear"===B,U=E.fill&&"none"!==E.fill,V=[],H=d.minTolerance,q=e.length,W=new Array(q),G=0;function Y(r){var n=e[r];if(!n)return!1;var i=t.linearized?C.l2p(n.x):C.c2p(n.x),o=t.linearized?L.l2p(n.y):L.c2p(n.y);if(i===a){if(P&&(i=C.c2p(n.x,!0)),i===a)return!1;O&&o===a&&(i*=Math.abs(C._m*D*(C._m>0?s:l)/(L._m*I*(L._m>0?s:l)))),i*=1e3}if(o===a){if(O&&(o=L.c2p(n.y,!0)),o===a)return!1;o*=1e3}return[i,o]}function Z(e,t,r,n){var i=r-e,a=n-t,o=.5-e,s=.5-t,l=i*i+a*a,u=i*o+a*s;if(u>0&&uoe||e[1]le)return[f(e[0],ae,oe),f(e[1],se,le)]}function fe(e,t){return e[0]===t[0]&&(e[0]===ae||e[0]===oe)||e[1]===t[1]&&(e[1]===se||e[1]===le)||void 0}function de(e,t,r){return function(n,i){var a=ce(n),o=ce(i),s=[];if(a&&o&&fe(a,o))return s;a&&s.push(a),o&&s.push(o);var l=2*u.constrain((n[e]+i[e])/2,t,r)-((a||n)[e]+(o||i)[e]);return l&&((a&&o?l>0===a[e]>o[e]?a:o:a||o)[e]+=l),s}}function he(e){var t=e[0],r=e[1],n=t===W[G-1][0],i=r===W[G-1][1];if(!n||!i)if(G>1){var a=t===W[G-2][0],o=r===W[G-2][1];n&&(t===ae||t===oe)&&a?o?G--:W[G-1]=e:i&&(r===se||r===le)&&o?a?G--:W[G-1]=e:W[G++]=e}else W[G++]=e}function pe(e){W[G-1][0]!==e[0]&&W[G-1][1]!==e[1]&&he([Q,ee]),he(e),te=null,Q=ee=0}"linear"===B||"spline"===B?ne=function(e,t){for(var r=[],n=0,i=0;i<4;i++){var a=ue[i],o=c(e[0],e[1],t[0],t[1],a[0],a[1],a[2],a[3]);o&&(!n||Math.abs(o.x-r[0][0])>1||Math.abs(o.y-r[0][1])>1)&&(o=[o.x,o.y],n&&K(o,e)oe?oe:0,J=t[1]le?le:0,$||J){if(G)if(te){var n=ne(te,t);n.length>1&&(pe(n[0]),W[G++]=n[1])}else re=ne(W[G-1],t)[0],W[G++]=re;else W[G++]=[$||t[0],J||t[1]];var i=W[G-1];$&&J&&(i[0]!==$||i[1]!==J)?(te&&(Q!==$&&ee!==J?he(Q&&ee?function(e,t){var r=t[0]-e[0],n=(t[1]-e[1])/r;return(e[1]*t[0]-t[1]*e[0])/r>0?[n>0?ae:oe,le]:[n>0?oe:ae,se]}(te,t):[Q||$,ee||J]):Q&&ee&&he([Q,ee])),he([$,J])):Q-$&&ee-J&&he([$||Q,J||ee]),te=t,Q=$,ee=J}else te&&pe(ne(te,t)[0]),W[G++]=t}for(r=0;rX(v,ge))break;o=v,(w=y[0]*g[0]+y[1]*g[1])>b?(b=w,h=v,m=!1):w<_&&(_=w,p=v,m=!0)}if(m?(me(h),o!==p&&me(p)):(p!==i&&me(p),o!==h&&me(h)),me(o),r>=e.length||!v)break;me(v),i=v}}else me(h)}te&&he([Q||te[0],ee||te[1]]),V.push(W.slice(0,G))}var ye=B.slice(B.length-1);if(R&&"h"!==ye&&"v"!==ye){for(var xe=!1,be=-1,_e=[],we=0;we=0?l=h:(l=h=d,d++),l0?Math.max(r,a):0}}},4898:function(e){"use strict";e.exports={container:"marker",min:"cmin",max:"cmax"}},49508:function(e,t,r){"use strict";var n=r(7901),i=r(52075).hasColorscale,a=r(1586),o=r(34098);e.exports=function(e,t,r,s,l,u){var c=o.isBubble(e),f=(e.line||{}).color;u=u||{},f&&(r=f),l("marker.symbol"),l("marker.opacity",c?.7:1),l("marker.size"),u.noAngle||(l("marker.angle"),u.noAngleRef||l("marker.angleref"),u.noStandOff||l("marker.standoff")),l("marker.color",r),i(e,"marker")&&a(e,t,s,l,{prefix:"marker.",cLetter:"c"}),u.noSelect||(l("selected.marker.color"),l("unselected.marker.color"),l("selected.marker.size"),l("unselected.marker.size")),u.noLine||(l("marker.line.color",f&&!Array.isArray(f)&&t.marker.color!==f?f:c?n.background:n.defaultLine),i(e,"marker.line")&&a(e,t,s,l,{prefix:"marker.line.",cLetter:"c"}),l("marker.line.width",c?1:0)),c&&(l("marker.sizeref"),l("marker.sizemin"),l("marker.sizemode")),u.gradient&&"none"!==l("marker.gradient.type")&&l("marker.gradient.color")}},73927:function(e,t,r){"use strict";var n=r(71828).dateTick0,i=r(50606).ONEWEEK;function a(e,t){return n(t,e%i===0?1:0)}e.exports=function(e,t,r,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n("xperiod");o&&(n("xperiod0",a(o,t.xcalendar)),n("xperiodalignment"))}if(i.y){var s=n("yperiod");s&&(n("yperiod0",a(s,t.ycalendar)),n("yperiodalignment"))}}},32663:function(e,t,r){"use strict";var n=r(39898),i=r(73972),a=r(71828),o=a.ensureSingle,s=a.identity,l=r(91424),u=r(34098),c=r(34621),f=r(68687),d=r(61082).tester;function h(e,t,r,f,h,p,v){var m,g=e._context.staticPlot;!function(e,t,r,i,o){var s=r.xaxis,l=r.yaxis,c=n.extent(a.simpleMap(s.range,s.r2c)),f=n.extent(a.simpleMap(l.range,l.r2c)),d=i[0].trace;if(u.hasMarkers(d)){var h=d.marker.maxdisplayed;if(0!==h){var p=i.filter((function(e){return e.x>=c[0]&&e.x<=c[1]&&e.y>=f[0]&&e.y<=f[1]})),v=Math.ceil(p.length/h),m=0;o.forEach((function(e,r){var n=e[0].trace;u.hasMarkers(n)&&n.marker.maxdisplayed>0&&r0;function x(e){return y?e.transition():e}var b=r.xaxis,_=r.yaxis,w=f[0].trace,k=w.line,T=n.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")(e,M,r,v),!0===w.visible){var C,L;x(T).style("opacity",w.opacity);var P=w.fill.charAt(w.fill.length-1);"x"!==P&&"y"!==P&&(P=""),f[0][r.isRangePlot?"nodeRangePlot3":"node3"]=T;var O,I,D="",R=[],z=w._prevtrace;z&&(D=z._prevRevpath||"",L=z._nextFill,R=z._polygons);var F,N,B,j,U,V,H,q="",W="",G=[],Y=a.noop;if(C=w._ownFill,u.hasLines(w)||"none"!==w.fill){for(L&&L.datum(f),-1!==["hv","vh","hvh","vhv"].indexOf(k.shape)?(F=l.steps(k.shape),N=l.steps(k.shape.split("").reverse().join(""))):F=N="spline"===k.shape?function(e){var t=e[e.length-1];return e.length>1&&e[0][0]===t[0]&&e[0][1]===t[1]?l.smoothclosed(e.slice(1),k.smoothing):l.smoothopen(e,k.smoothing)}:function(e){return"M"+e.join("L")},B=function(e){return N(e.reverse())},G=c(f,{xaxis:b,yaxis:_,trace:w,connectGaps:w.connectgaps,baseTolerance:Math.max(k.width||1,3)/4,shape:k.shape,backoff:k.backoff,simplify:k.simplify,fill:w.fill}),H=w._polygons=new Array(G.length),m=0;m0,m=f(e,t,r);(c=i.selectAll("g.trace").data(m,(function(e){return e[0].trace.uid}))).enter().append("g").attr("class",(function(e){return"trace scatter trace"+e[0].trace.uid})).style("stroke-miterlimit",2),c.order(),function(e,t,r){t.each((function(t){var i=o(n.select(this),"g","fills");l.setClipUrl(i,r.layerClipId,e);var a=t[0].trace,u=[];a._ownfill&&u.push("_ownFill"),a._nexttrace&&u.push("_nextFill");var c=i.selectAll("g").data(u,s);c.enter().append("g"),c.exit().each((function(e){a[e]=null})).remove(),c.order().each((function(e){a[e]=o(n.select(this),"path","js-fill")}))}))}(e,c,t),v?(u&&(d=u()),n.transition().duration(a.duration).ease(a.easing).each("end",(function(){d&&d()})).each("interrupt",(function(){d&&d()})).each((function(){i.selectAll("g.trace").each((function(r,n){h(e,n,t,r,m,this,a)}))}))):c.each((function(r,n){h(e,n,t,r,m,this,a)})),p&&c.exit().remove(),i.selectAll("path:not([d])").remove()}},98002:function(e,t,r){"use strict";var n=r(34098);e.exports=function(e,t){var r,i,a,o,s=e.cd,l=e.xaxis,u=e.yaxis,c=[],f=s[0].trace;if(!n.hasMarkers(f)&&!n.hasText(f))return[];if(!1===t)for(r=0;r0){var d=i.c2l(c);i._lowerLogErrorBound||(i._lowerLogErrorBound=d),i._lowerErrorBound=Math.min(i._lowerLogErrorBound,d)}}else o[s]=[-l[0]*r,l[1]*r]}return o}e.exports=function(e,t,r){var n=[i(e.x,e.error_x,t[0],r.xaxis),i(e.y,e.error_y,t[1],r.yaxis),i(e.z,e.error_z,t[2],r.zaxis)],a=function(e){for(var t=0;t-1?-1:e.indexOf("right")>-1?1:0}function b(e){return null===e||void 0===e?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function _(e,t){return t(4*e)}function w(e){return h[e]}function k(e,t,r,n,i){var a=null;if(l.isArrayOrTypedArray(e)){a=[];for(var o=0;o=0){var v=function(e,t,r){var n,i=(r+1)%3,a=(r+2)%3,o=[],l=[];for(n=0;n=0&&f("surfacecolor",h||p);for(var v=["x","y","z"],m=0;m<3;++m){var g="projection."+v[m];f(g+".show")&&(f(g+".opacity"),f(g+".scale"))}var y=n.getComponentMethod("errorbars","supplyDefaults");y(e,t,h||p||r,{axis:"z"}),y(e,t,h||p||r,{axis:"y",inherit:"z"}),y(e,t,h||p||r,{axis:"x",inherit:"z"})}else t.visible=!1}},13551:function(e,t,r){"use strict";e.exports={plot:r(58925),attributes:r(44542),markerSymbols:r(87381),supplyDefaults:r(21428),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:r(36563),moduleType:"trace",name:"scatter3d",basePlotModule:r(58547),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}},97001:function(e,t,r){"use strict";var n=r(82196),i=r(9012),a=r(5386).fF,o=r(5386).si,s=r(50693),l=r(1426).extendFlat,u=n.marker,c=n.line,f=u.line;e.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:l({},n.mode,{dflt:"markers"}),text:l({},n.text,{}),texttemplate:o({editType:"plot"},{keys:["a","b","text"]}),hovertext:l({},n.hovertext,{}),line:{color:c.color,width:c.width,dash:c.dash,backoff:c.backoff,shape:l({},c.shape,{values:["linear","spline"]}),smoothing:c.smoothing,editType:"calc"},connectgaps:n.connectgaps,fill:l({},n.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:n.fillcolor,marker:l({symbol:u.symbol,opacity:u.opacity,maxdisplayed:u.maxdisplayed,angle:u.angle,angleref:u.angleref,standoff:u.standoff,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,line:l({width:f.width,editType:"calc"},s("marker.line")),gradient:u.gradient,editType:"calc"},s("marker")),textfont:n.textfont,textposition:n.textposition,selected:n.selected,unselected:n.unselected,hoverinfo:l({},i.hoverinfo,{flags:["a","b","text","name"]}),hoveron:n.hoveron,hovertemplate:a()}},34618:function(e,t,r){"use strict";var n=r(92770),i=r(36922),a=r(75225),o=r(66279),s=r(47761).calcMarkerSize,l=r(22882);e.exports=function(e,t){var r=t._carpetTrace=l(e,t);if(r&&r.visible&&"legendonly"!==r.visible){var u;t.xaxis=r.xaxis,t.yaxis=r.yaxis;var c,f,d=t._length,h=new Array(d),p=!1;for(u=0;u")}return o}function y(e,t){var r;r=e.labelprefix&&e.labelprefix.length>0?e.labelprefix.replace(/ = $/,""):e._hovertitle,m.push(r+": "+t.toFixed(3)+e.labelsuffix)}}},46858:function(e,t,r){"use strict";e.exports={attributes:r(97001),supplyDefaults:r(98965),colorbar:r(4898),formatLabels:r(48953),calc:r(34618),plot:r(1913),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(22931),selectPoints:r(98002),eventData:r(16165),moduleType:"trace",name:"scattercarpet",basePlotModule:r(93612),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}},1913:function(e,t,r){"use strict";var n=r(32663),i=r(89298),a=r(91424);e.exports=function(e,t,r,o){var s,l,u,c=r[0][0].carpet,f=i.getFromId(e,c.xaxis||"x"),d=i.getFromId(e,c.yaxis||"y"),h={xaxis:f,yaxis:d,plot:t.plot};for(s=0;s")}function h(e){return e+"\xb0"}}(u,v,e,l[0].t.labels),e.hovertemplate=u.hovertemplate,[e]}}},17988:function(e,t,r){"use strict";e.exports={attributes:r(19316),supplyDefaults:r(10659),colorbar:r(4898),formatLabels:r(82719),calc:r(84622),calcGeoJSON:r(89171).calcGeoJSON,plot:r(89171).plot,style:r(33095),styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(14977),eventData:r(84084),selectPoints:r(20548),moduleType:"trace",name:"scattergeo",basePlotModule:r(44622),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}},89171:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(90973).getTopojsonFeatures,o=r(18214),s=r(41327),l=r(71739).findExtremes,u=r(50606).BADNUM,c=r(47761).calcMarkerSize,f=r(34098),d=r(33095);e.exports={calcGeoJSON:function(e,t){var r,n,i=e[0].trace,o=t[i.geo],f=o._subplot,d=i._length;if(Array.isArray(i.locations)){var h=i.locationmode,p="geojson-id"===h?s.extractTraceFeature(e):a(i,f.topojson);for(r=0;r=m,w=2*b,k={},T=l.makeCalcdata(t,"x"),M=y.makeCalcdata(t,"y"),A=s(t,l,"x",T),S=s(t,y,"y",M),E=A.vals,C=S.vals;t._x=E,t._y=C,t.xperiodalignment&&(t._origX=T,t._xStarts=A.starts,t._xEnds=A.ends),t.yperiodalignment&&(t._origY=M,t._yStarts=S.starts,t._yEnds=S.ends);var L=new Array(w),P=new Array(b);for(r=0;r1&&i.extendFlat(s.line,h.linePositions(e,r,n)),s.errorX||s.errorY){var l=h.errorBarPositions(e,r,n,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:n},h.textPosition(e,r,s.text,s.marker)),i.extendFlat(s.textSel,{positions:n},h.textPosition(e,r,s.text,s.markerSel)),i.extendFlat(s.textUnsel,{positions:n},h.textPosition(e,r,s.text,s.markerUnsel))),s}(e,0,t,L,E,C),D=p(e,x);return f(o,t),_?I.marker&&(O=I.marker.sizeAvg||Math.max(I.marker.size,3)):O=u(t,b),c(e,t,l,y,E,C,O),I.errorX&&g(t,l,I.errorX),I.errorY&&g(t,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=b),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=L,D.count++,[{x:!1,y:!1,t:k,trace:t}]}},78232:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(92770),i=r(82019),a=r(25075),o=r(73972),s=r(71828),l=r(91424),u=r(41675),c=r(81697).formatColor,f=r(34098),d=r(39984),h=r(68645),p=r(78232),v=r(37822).DESELECTDIM,m={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},g=r(23469).appendArrayPointValue;function y(e,t){var r,i=e._fullLayout,a=t._length,o=t.textfont,l=t.textposition,u=Array.isArray(l)?l:[l],c=o.color,f=o.size,d=o.family,h={},p=e._context.plotGlPixelRatio,v=t.texttemplate;if(v){h.text=[];var m=i._d3locale,y=Array.isArray(v),x=y?Math.min(v.length,a):a,b=y?function(e){return v[e]}:function(){return v};for(r=0;rp.TOO_MANY_POINTS||f.hasMarkers(t)?"rect":"round";if(u&&t.connectgaps){var d=n[0],h=n[1];for(i=0;i1?l[i]:l[0]:l,p=Array.isArray(u)?u.length>1?u[i]:u[0]:u,v=m[h],g=m[p],y=c?c/.8+1:0,x=-g*y-.5*g;o.offset[i]=[v*y/d,x/d]}}return o}}},47148:function(e,t,r){"use strict";var n=r(71828),i=r(73972),a=r(68645),o=r(42341),s=r(47581),l=r(34098),u=r(67513),c=r(73927),f=r(49508),d=r(11058),h=r(28908),p=r(82410);e.exports=function(e,t,r,v){function m(r,i){return n.coerce(e,t,o,r,i)}var g=!!e.marker&&a.isOpenSymbol(e.marker.symbol),y=l.isBubble(e),x=u(e,t,v,m);if(x){c(e,t,v,m),m("xhoverformat"),m("yhoverformat");var b=x100},t.isDotSymbol=function(e){return"string"===typeof e?n.DOT_RE.test(e):e>200}},20794:function(e,t,r){"use strict";var n=r(73972),i=r(71828),a=r(34603);function o(e,t,r,o){var s=e.xa,l=e.ya,u=e.distance,c=e.dxy,f=e.index,d={pointNumber:f,x:t[f],y:r[f]};d.tx=Array.isArray(o.text)?o.text[f]:o.text,d.htx=Array.isArray(o.hovertext)?o.hovertext[f]:o.hovertext,d.data=Array.isArray(o.customdata)?o.customdata[f]:o.customdata,d.tp=Array.isArray(o.textposition)?o.textposition[f]:o.textposition;var h=o.textfont;h&&(d.ts=i.isArrayOrTypedArray(h.size)?h.size[f]:h.size,d.tc=Array.isArray(h.color)?h.color[f]:h.color,d.tf=Array.isArray(h.family)?h.family[f]:h.family);var p=o.marker;p&&(d.ms=i.isArrayOrTypedArray(p.size)?p.size[f]:p.size,d.mo=i.isArrayOrTypedArray(p.opacity)?p.opacity[f]:p.opacity,d.mx=i.isArrayOrTypedArray(p.symbol)?p.symbol[f]:p.symbol,d.ma=i.isArrayOrTypedArray(p.angle)?p.angle[f]:p.angle,d.mc=i.isArrayOrTypedArray(p.color)?p.color[f]:p.color);var v=p&&p.line;v&&(d.mlc=Array.isArray(v.color)?v.color[f]:v.color,d.mlw=i.isArrayOrTypedArray(v.width)?v.width[f]:v.width);var m=p&&p.gradient;m&&"none"!==m.type&&(d.mgt=Array.isArray(m.type)?m.type[f]:m.type,d.mgc=Array.isArray(m.color)?m.color[f]:m.color);var g=s.c2p(d.x,!0),y=l.c2p(d.y,!0),x=d.mrc||1,b=o.hoverlabel;b&&(d.hbg=Array.isArray(b.bgcolor)?b.bgcolor[f]:b.bgcolor,d.hbc=Array.isArray(b.bordercolor)?b.bordercolor[f]:b.bordercolor,d.hts=i.isArrayOrTypedArray(b.font.size)?b.font.size[f]:b.font.size,d.htc=Array.isArray(b.font.color)?b.font.color[f]:b.font.color,d.htf=Array.isArray(b.font.family)?b.font.family[f]:b.font.family,d.hnl=i.isArrayOrTypedArray(b.namelength)?b.namelength[f]:b.namelength);var _=o.hoverinfo;_&&(d.hi=Array.isArray(_)?_[f]:_);var w=o.hovertemplate;w&&(d.ht=Array.isArray(w)?w[f]:w);var k={};k[e.index]=d;var T=o._origX,M=o._origY,A=i.extendFlat({},e,{color:a(o,d),x0:g-x,x1:g+x,xLabelVal:T?T[f]:d.x,y0:y-x,y1:y+x,yLabelVal:M?M[f]:d.y,cd:k,distance:u,spikeDistance:c,hovertemplate:d.ht});return d.htx?A.text=d.htx:d.tx?A.text=d.tx:o.text&&(A.text=o.text),i.fillText(d,o,A),n.getComponentMethod("errorbars","hoverInfo")(d,o,A),A}e.exports={hoverPoints:function(e,t,r,n){var i,a,s,l,u,c,f,d,h,p,v=e.cd,m=v[0].t,g=v[0].trace,y=e.xa,x=e.ya,b=m.x,_=m.y,w=y.c2p(t),k=x.c2p(r),T=e.distance;if(m.tree){var M=y.p2c(w-T),A=y.p2c(w+T),S=x.p2c(k-T),E=x.p2c(k+T);i="x"===n?m.tree.range(Math.min(M,A),Math.min(x._rl[0],x._rl[1]),Math.max(M,A),Math.max(x._rl[0],x._rl[1])):m.tree.range(Math.min(M,A),Math.min(S,E),Math.max(M,A),Math.max(S,E))}else i=m.ids;var C=T;if("x"===n){var L=!!g.xperiodalignment,P=!!g.yperiodalignment;for(c=0;c=Math.min(O,I)&&w<=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+d*d),s=i[c]}}}else for(c=i.length-1;c>-1;c--)l=b[a=i[c]],u=_[a],f=y.c2p(l)-w,d=x.c2p(u)-k,(h=Math.sqrt(f*f+d*d))y.glText.length){var k=_-y.glText.length;for(v=0;vr&&(isNaN(t[n])||isNaN(t[n+1]));)n-=2;e.positions=t.slice(r,n+2)}return e})),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,_),y.fill2d&&(y.fillOptions=y.fillOptions.map((function(e,t){var n=r[t];if(e&&n&&n[0]&&n[0].trace){var i,a,o=n[0],s=o.trace,l=o.t,u=y.lineOptions[t],c=[];s._ownfill&&c.push(t),s._nexttrace&&c.push(t+1),c.length&&(y.fillOrder[t]=c);var f,d,h=[],p=u&&u.positions||l.positions;if("tozeroy"===s.fill){for(f=0;ff&&isNaN(p[d+1]);)d-=2;0!==p[f+1]&&(h=[p[f],0]),h=h.concat(p.slice(f,d+2)),0!==p[d+1]&&(h=h.concat([p[d],0]))}else if("tozerox"===s.fill){for(f=0;ff&&isNaN(p[d]);)d-=2;0!==p[f]&&(h=[0,p[f+1]]),h=h.concat(p.slice(f,d+2)),0!==p[d]&&(h=h.concat([0,p[d+1]]))}else if("toself"===s.fill||"tonext"===s.fill){for(h=[],i=0,e.splitNull=!0,a=0;a-1;for(v=0;v<_;v++){var C=r[v][0],L=C.trace,P=C.t,O=P.index,I=L._length,D=P.x,R=P.y;if(L.selectedpoints||S||E){if(S||(S=!0),L.selectedpoints){var z=y.selectBatch[O]=s.selIndices2selPoints(L),F={};for(m=0;m")}function c(e){return e+"\xb0"}}e.exports={hoverPoints:function(e,t,r){var o=e.cd,c=o[0].trace,f=e.xa,d=e.ya,h=e.subplot,p=[],v=l+c.uid+"-circle",m=c.cluster&&c.cluster.enabled;if(m){var g=h.map.queryRenderedFeatures(null,{layers:[v]});p=g.map((function(e){return e.id}))}var y=360*(t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360)),x=t-y;if(n.getClosest(o,(function(e){var t=e.lonlat;if(t[0]===s)return 1/0;if(m&&-1===p.indexOf(e.i+1))return 1/0;var n=i.modHalf(t[0],360),a=t[1],o=h.project([n,a]),l=o.x-f.c2p([x,a]),u=o.y-d.c2p([n,r]),c=Math.max(3,e.mrc||0);return Math.max(Math.sqrt(l*l+u*u)-c,1-3/c)}),e),!1!==e.index){var b=o[e.index],_=b.lonlat,w=[i.modHalf(_[0],360)+y,_[1]],k=f.c2p(w),T=d.c2p(w),M=b.mrc||1;e.x0=k-M,e.x1=k+M,e.y0=T-M,e.y1=T+M;var A={};A[c.subplot]={_subplot:h};var S=c._module.formatLabels(b,c,A);return e.lonLabel=S.lonLabel,e.latLabel=S.latLabel,e.color=a(c,b),e.extraText=u(c,b,o[0].t.labels),e.hovertemplate=c.hovertemplate,[e]}},getExtraText:u}},20467:function(e,t,r){"use strict";e.exports={attributes:r(99181),supplyDefaults:r(76645),colorbar:r(4898),formatLabels:r(15636),calc:r(84622),plot:r(86951),hoverPoints:r(28178).hoverPoints,eventData:r(53353),selectPoints:r(86387),styleOnSelect:function(e,t){t&&t[0].trace._glTrace.update(t)},moduleType:"trace",name:"scattermapbox",basePlotModule:r(50101),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}},86951:function(e,t,r){"use strict";var n=r(71828),i=r(15790),a=r(77734).traceLayerPrefix,o={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function s(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:a+t+"-fill",line:a+t+"-line",circle:a+t+"-circle",symbol:a+t+"-symbol",cluster:a+t+"-cluster",clusterCount:a+t+"-cluster-count"},this.below=null}var l=s.prototype;l.addSource=function(e,t,r){var i={type:"geojson",data:t.geojson};r&&r.enabled&&n.extendFlat(i,{cluster:!0,clusterMaxZoom:r.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[e]);a?a.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],i)},l.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)},l.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i,a=this.layerIds[e],o=this.subplot.getMapLayers(),s=0;s=0;r--){var i=t[r];n.removeLayer(c.layerIds[i])}e||n.removeSource(c.sourceIds.circle)}(e):function(e){for(var t=o.nonCluster,r=t.length-1;r>=0;r--){var i=t[r];n.removeLayer(c.layerIds[i]),e||n.removeSource(c.sourceIds[i])}}(e)}function d(e){l?function(e){e||c.addSource("circle",a.circle,t.cluster);for(var r=o.cluster,n=0;n=0;r--){var n=t[r];e.removeLayer(this.layerIds[n]),e.removeSource(this.sourceIds[n])}},e.exports=function(e,t){var r,n,a,l=t[0].trace,u=l.cluster&&l.cluster.enabled,c=!0!==l.visible,f=new s(e,l.uid,u,c),d=i(e.gd,t),h=f.below=e.belowLookup["trace-"+l.uid];if(u)for(f.addSource("circle",d.circle,l.cluster),r=0;r")}}e.exports={hoverPoints:function(e,t,r,a){var o=n(e,t,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=e.subplot,u=s.cd[s.index],c=s.trace;if(l.isPtInside(u))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(u,c,l,s),s.hovertemplate=c.hovertemplate,o}},makeHoverPointText:i}},91271:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:r(23580),categories:["polar","symbols","showLegend","scatter-like"],attributes:r(81245),supplyDefaults:r(22184).supplyDefaults,colorbar:r(4898),formatLabels:r(98608),calc:r(26442),plot:r(45162),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(59150).hoverPoints,selectPoints:r(98002),meta:{}}},45162:function(e,t,r){"use strict";var n=r(32663),i=r(50606).BADNUM;e.exports=function(e,t,r){for(var a=t.layers.frontplot.select("g.scatterlayer"),o=t.xaxis,s=t.yaxis,l={xaxis:o,yaxis:s,plot:t.framework,layerClipId:t._hasClipOnAxisFalse?t.clipIds.forTraces:null},u=t.radialAxis,c=t.angularAxis,f=0;f=u&&(y.marker.cluster=p.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=_),y.line&&_.length>1&&l.extendFlat(y.line,s.linePositions(e,h,_)),y.text&&(l.extendFlat(y.text,{positions:_},s.textPosition(e,h,y.text,y.marker)),l.extendFlat(y.textSel,{positions:_},s.textPosition(e,h,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:_},s.textPosition(e,h,y.text,y.markerUnsel))),y.fill&&!d.fill2d&&(d.fill2d=!0),y.marker&&!d.scatter2d&&(d.scatter2d=!0),y.line&&!d.line2d&&(d.line2d=!0),y.text&&!d.glText&&(d.glText=!0),d.lineOptions.push(y.line),d.fillOptions.push(y.fill),d.markerOptions.push(y.marker),d.markerSelectedOptions.push(y.markerSel),d.markerUnselectedOptions.push(y.markerUnsel),d.textOptions.push(y.text),d.textSelectedOptions.push(y.textSel),d.textUnselectedOptions.push(y.textUnsel),d.selectBatch.push([]),d.unselectBatch.push([]),p.x=w,p.y=k,p.rawx=w,p.rawy=k,p.r=m,p.theta=g,p.positions=_,p._scene=d,p.index=d.count,d.count++}})),a(e,t,r)}},e.exports.reglPrecompiled={}},48300:function(e,t,r){"use strict";var n=r(5386).fF,i=r(5386).si,a=r(1426).extendFlat,o=r(82196),s=r(9012),l=o.line;e.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:n(),selected:o.selected,unselected:o.unselected}},30621:function(e,t,r){"use strict";var n=r(92770),i=r(50606).BADNUM,a=r(36922),o=r(75225),s=r(66279),l=r(47761).calcMarkerSize;e.exports=function(e,t){for(var r=e._fullLayout,u=t.subplot,c=r[u].realaxis,f=r[u].imaginaryaxis,d=c.makeCalcdata(t,"real"),h=f.makeCalcdata(t,"imag"),p=t._length,v=new Array(p),m=0;m")}}e.exports={hoverPoints:function(e,t,r,a){var o=n(e,t,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=e.subplot,u=s.cd[s.index],c=s.trace;if(l.isPtInside(u))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(u,c,l,s),s.hovertemplate=c.hovertemplate,o}},makeHoverPointText:i}},85956:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"scattersmith",basePlotModule:r(7504),categories:["smith","symbols","showLegend","scatter-like"],attributes:r(48300),supplyDefaults:r(65269),colorbar:r(4898),formatLabels:r(62047),calc:r(30621),plot:r(12480),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(11350).hoverPoints,selectPoints:r(98002),meta:{}}},12480:function(e,t,r){"use strict";var n=r(32663),i=r(50606).BADNUM,a=r(23893).smith;e.exports=function(e,t,r){for(var o=t.layers.frontplot.select("g.scatterlayer"),s=t.xaxis,l=t.yaxis,u={xaxis:s,yaxis:l,plot:t.framework,layerClipId:t._hasClipOnAxisFalse?t.clipIds.forTraces:null},c=0;c"),o.hovertemplate=d.hovertemplate,a}function x(e,t){g.push(e._hovertitle+": "+t)}}},52979:function(e,t,r){"use strict";e.exports={attributes:r(50413),supplyDefaults:r(46008),colorbar:r(4898),formatLabels:r(93645),calc:r(54337),plot:r(7507),style:r(16296).style,styleOnSelect:r(16296).styleOnSelect,hoverPoints:r(47250),selectPoints:r(98002),eventData:r(4524),moduleType:"trace",name:"scatterternary",basePlotModule:r(61639),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}},7507:function(e,t,r){"use strict";var n=r(32663);e.exports=function(e,t,r){var i=t.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=t.xaxis,o=t.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:t._hasClipOnAxisFalse?t.clipIdRelative:null},l=t.layers.frontplot.select("g.scatterlayer"),u=0;ud?b.sizeAvg||Math.max(b.size,3):a(t,x),h=0;ha&&l||i-1,P=!0;if(o(x)||h.selectedpoints||L){var O=h._length;if(h.selectedpoints){v.selectBatch=h.selectedpoints;var I=h.selectedpoints,D={};for(l=0;l1&&(c=v[y-1],d=m[y-1],p=g[y-1]),t=0;tc?"-":"+")+"x")).replace("y",(f>d?"-":"+")+"y")).replace("z",(h>p?"-":"+")+"z");var C=function(){y=0,A=[],S=[],E=[]};(!y||y2?e.slice(1,t-1):2===t?[(e[0]+e[1])/2]:e}function h(e){var t=e.length;return 1===t?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function p(e,t){var r=e.fullSceneLayout,i=e.dataScale,c=t._len,f={};function p(e,t){var n=r[t],o=i[u[t]];return a.simpleMap(e,(function(e){return n.d2l(e)*o}))}if(f.vectors=l(p(t._u,"xaxis"),p(t._v,"yaxis"),p(t._w,"zaxis"),c),!c)return{positions:[],cells:[]};var v=p(t._Xs,"xaxis"),m=p(t._Ys,"yaxis"),g=p(t._Zs,"zaxis");if(f.meshgrid=[v,m,g],f.gridFill=t._gridFill,t._slen)f.startingPositions=l(p(t._startsX,"xaxis"),p(t._startsY,"yaxis"),p(t._startsZ,"zaxis"));else{for(var y=m[0],x=d(v),b=d(g),_=new Array(x.length*b.length),w=0,k=0;k=0};y?(r=Math.min(g.length,b.length),l=function(e){return A(g[e])&&S(e)},f=function(e){return String(g[e])}):(r=Math.min(x.length,b.length),l=function(e){return A(x[e])&&S(e)},f=function(e){return String(x[e])}),w&&(r=Math.min(r,_.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")||x.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:P,eventData:l};m&&(F.x0=E-i.rInscribed*i.rpx1,F.x1=E+i.rInscribed*i.rpx1,F.idealAlign=i.pxmid[0]<0?"left":"right"),g&&(F.x=E,F.idealAlign=E<0?"left":"right");var N=[];o.loneHover(F,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:r,inOut_bbox:N}),l[0].bbox=N[0],p._hasHoverLabel=!0}if(g){var B=e.select("path.surface");d.styleOne(B,i,y,{hovered:!0})}p._hasHoverEvent=!0,r.emit("plotly_hover",{points:l||[f(i,y,d.eventDataKeys)],event:n.event})}})),e.on("mouseout",(function(t){var i=r._fullLayout,a=r._fullData[p.index],s=n.select(this).datum();if(p._hasHoverEvent&&(t.originalEvent=n.event,r.emit("plotly_unhover",{points:[f(s,a,d.eventDataKeys)],event:n.event}),p._hasHoverEvent=!1),p._hasHoverLabel&&(o.loneUnhover(i._hoverlayer.node()),p._hasHoverLabel=!1),g){var l=e.select("path.surface");d.styleOne(l,s,a,{hovered:!1})}})),e.on("click",(function(e){var t=r._fullLayout,a=r._fullData[p.index],s=m&&(u.isHierarchyRoot(e)||u.isLeaf(e)),c=u.getPtId(e),h=u.isEntry(e)?u.findEntryWithChild(v,c):u.findEntryWithLevel(v,c),g=u.getPtId(h),y={points:[f(e,a,d.eventDataKeys)],event:n.event};s||(y.nextLevel=g);var x=l.triggerHandler(r,"plotly_"+p.type+"click",y);if(!1!==x&&t.hovermode&&(r._hoverdata=[f(e,a,d.eventDataKeys)],o.click(r,n.event)),!s&&!1!==x&&!r._dragging&&!r._transitioning){i.call("_storeDirectGUIEdit",a,t._tracePreGUI[a.uid],{level:a.level});var b={data:[{level:g}],traces:[p.index]},_={frame:{redraw:!1,duration:d.transitionTime},transition:{duration:d.transitionTime,easing:d.transitionEasing},mode:"immediate",fromcurrent:!0};o.loneUnhover(t._hoverlayer.node()),i.call("animate",r,b,_)}}))}},2791:function(e,t,r){"use strict";var n=r(71828),i=r(7901),a=r(6964),o=r(53581);function s(e){return e.data.data.pid}t.findEntryWithLevel=function(e,r){var n;return r&&e.eachAfter((function(e){if(t.getPtId(e)===r)return n=e.copy()})),n||e},t.findEntryWithChild=function(e,r){var n;return e.eachAfter((function(e){for(var i=e.children||[],a=0;a0)},t.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0},t.isHeader=function(e,r){return!(t.isLeaf(e)||e.depth===r._maxDepth-1)},t.getParent=function(e,r){return t.findEntryWithLevel(e,s(r))},t.listPath=function(e,r){var n=e.parent;if(!n)return[];var i=r?[n.data[r]]:[n];return t.listPath(n,r).concat(i)},t.getPath=function(e){return t.listPath(e,"label").join("/")+"/"},t.formatValue=o.formatPieValue,t.formatPercent=function(e,t){var r=n.formatPercent(e,0);return"0%"===r&&(r=o.formatPiePercent(e,t)),r}},87619:function(e,t,r){"use strict";e.exports={moduleType:"trace",name:"sunburst",basePlotModule:r(66888),categories:[],animatable:!0,attributes:r(57564),layoutAttributes:r(2654),supplyDefaults:r(17094),supplyLayoutDefaults:r(57034),calc:r(52147).calc,crossTraceCalc:r(52147).crossTraceCalc,plot:r(24714).plot,style:r(29969).style,colorbar:r(4898),meta:{}}},2654:function(e){"use strict";e.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57034:function(e,t,r){"use strict";var n=r(71828),i=r(2654);e.exports=function(e,t){function r(r,a){return n.coerce(e,t,i,r,a)}r("sunburstcolorway",t.colorway),r("extendsunburstcolors")}},24714:function(e,t,r){"use strict";var n=r(39898),i=r(674),a=r(81684).sX,o=r(91424),s=r(71828),l=r(63893),u=r(72597),c=u.recordMinTextSize,f=u.clearMinTextSize,d=r(14575),h=r(53581).getRotationAngle,p=d.computeTransform,v=d.transformInsideText,m=r(29969).styleOne,g=r(16688).resizeText,y=r(83523),x=r(7055),b=r(2791);function _(e,r,u,f){var d=e._context.staticPlot,g=e._fullLayout,_=!g.uniformtext.mode&&b.hasTransition(f),k=n.select(u).selectAll("g.slice"),T=r[0],M=T.trace,A=T.hierarchy,S=b.findEntryWithLevel(A,M.level),E=b.getMaxDepth(M),C=g._size,L=M.domain,P=C.w*(L.x[1]-L.x[0]),O=C.h*(L.y[1]-L.y[0]),I=.5*Math.min(P,O),D=T.cx=C.l+C.w*(L.x[1]+L.x[0])/2,R=T.cy=C.t+C.h*(1-L.y[0])-O/2;if(!S)return k.remove();var z=null,F={};_&&k.each((function(e){F[b.getPtId(e)]={rpx0:e.rpx0,rpx1:e.rpx1,x0:e.x0,x1:e.x1,transform:e.transform},!z&&b.isEntry(e)&&(z=e)}));var N=function(e){return i.partition().size([2*Math.PI,e.height+1])(e)}(S).descendants(),B=S.height+1,j=0,U=E;T.hasMultipleRoots&&b.isHierarchyRoot(S)&&(N=N.slice(1),B-=1,j=1,U+=1),N=N.filter((function(e){return e.y1<=U}));var V=h(M.rotation);V&&N.forEach((function(e){e.x0+=V,e.x1+=V}));var H=Math.min(B,E),q=function(e){return(e-j)/H*I},W=function(e,t){return[e*Math.cos(t),-e*Math.sin(t)]},G=function(e){return s.pathAnnulus(e.rpx0,e.rpx1,e.x0,e.x1,D,R)},Y=function(e){return D+w(e)[0]*(e.transform.rCenter||0)+(e.transform.x||0)},Z=function(e){return R+w(e)[1]*(e.transform.rCenter||0)+(e.transform.y||0)};(k=k.data(N,b.getPtId)).enter().append("g").classed("slice",!0),_?k.exit().transition().each((function(){var e=n.select(this);e.select("path.surface").transition().attrTween("d",(function(e){var t=function(e){var t,r=b.getPtId(e),n=F[r],i=F[b.getPtId(S)];if(i){var o=(e.x1>i.x1?2*Math.PI:0)+V;t=e.rpx1X?2*Math.PI:0)+V;t={x0:i,x1:i}}else t={rpx0:I,rpx1:I},s.extendFlat(t,J(e));else t={rpx0:0,rpx1:0};else t={x0:V,x1:V};return a(t,n)}(e);return function(e){return G(t(e))}})):f.attr("d",G),u.call(y,S,e,r,{eventDataKeys:x.eventDataKeys,transitionTime:x.CLICK_TRANSITION_TIME,transitionEasing:x.CLICK_TRANSITION_EASING}).call(b.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),f.call(m,i,M);var h=s.ensureSingle(u,"g","slicetext"),w=s.ensureSingle(h,"text","",(function(e){e.attr("data-notex",1)})),k=s.ensureUniformFontSize(e,b.determineTextFont(M,i,g.font));w.text(t.formatSliceLabel(i,S,M,r,g)).classed("slicetext",!0).attr("text-anchor","middle").call(o.font,k).call(l.convertToTspans,e);var A=o.bBox(w.node());i.transform=v(A,i,T),i.transform.targetX=Y(i),i.transform.targetY=Z(i);var E=function(e,t){var r=e.transform;return p(r,t),r.fontSize=k.size,c(M.type,r,g),s.getTextTransform(r)};_?w.transition().attrTween("transform",(function(e){var t=function(e){var t,r=F[b.getPtId(e)],n=e.transform;if(r)t=r;else if(t={rpx1:e.rpx1,transform:{textPosAngle:n.textPosAngle,scale:0,rotate:n.rotate,rCenter:n.rCenter,x:n.x,y:n.y}},z)if(e.parent)if(X){var i=e.x1>X?2*Math.PI:0;t.x0=t.x1=i}else s.extendFlat(t,J(e));else t.x0=t.x1=V;else t.x0=t.x1=V;var o=a(t.transform.textPosAngle,e.transform.textPosAngle),l=a(t.rpx1,e.rpx1),u=a(t.x0,e.x0),f=a(t.x1,e.x1),d=a(t.transform.scale,n.scale),h=a(t.transform.rotate,n.rotate),p=0===n.rCenter?3:0===t.transform.rCenter?1/3:1,v=a(t.transform.rCenter,n.rCenter),m=function(e){return v(Math.pow(e,p))};return function(e){var t=l(e),r=u(e),i=f(e),a=m(e),s={pxmid:W(t,(r+i)/2),rpx1:t,transform:{textPosAngle:o(e),rCenter:a,x:n.x,y:n.y}};return c(M.type,n,g),{transform:{targetX:Y(s),targetY:Z(s),scale:d(e),rotate:h(e),rCenter:a}}}}(e);return function(e){return E(t(e),A)}})):w.attr("transform",E(i,A))}))}function w(e){return t=e.rpx1,r=e.transform.textPosAngle,[t*Math.sin(r),-t*Math.cos(r)];var t,r}t.plot=function(e,t,r,i){var a,o,s=e._fullLayout,l=s._sunburstlayer,u=!r,c=!s.uniformtext.mode&&b.hasTransition(r);f("sunburst",s),(a=l.selectAll("g.trace.sunburst").data(t,(function(e){return e[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),a.order(),c?(i&&(o=i()),n.transition().duration(r.duration).ease(r.easing).each("end",(function(){o&&o()})).each("interrupt",(function(){o&&o()})).each((function(){l.selectAll("g.trace").each((function(t){_(e,t,this,r)}))}))):(a.each((function(t){_(e,t,this,r)})),s.uniformtext.mode&&g(e,s._sunburstlayer.selectAll(".trace"),"sunburst")),u&&a.exit().remove()},t.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||"none"===o))return"";var l=i.separators,u=n[0],c=e.data.data,f=u.hierarchy,d=b.isHierarchyRoot(e),h=b.getParent(f,e),p=b.getValue(e);if(!a){var v,m=o.split("+"),g=function(e){return-1!==m.indexOf(e)},y=[];if(g("label")&&c.label&&y.push(c.label),c.hasOwnProperty("v")&&g("value")&&y.push(b.formatValue(c.v,l)),!d){g("current path")&&y.push(b.getPath(e.data));var x=0;g("percent parent")&&x++,g("percent entry")&&x++,g("percent root")&&x++;var _=x>1;if(x){var w,k=function(e){v=b.formatPercent(w,l),_&&(v+=" of "+e),y.push(v)};g("percent parent")&&!d&&(w=p/b.getValue(h),k("parent")),g("percent entry")&&(w=p/b.getValue(t),k("entry")),g("percent root")&&(w=p/b.getValue(f),k("root"))}}return g("text")&&(v=s.castOption(r,c.i,"text"),s.isValidTextValue(v)&&y.push(v)),y.join("
")}var T=s.castOption(r,c.i,"texttemplate");if(!T)return"";var M={};c.label&&(M.label=c.label),c.hasOwnProperty("v")&&(M.value=c.v,M.valueLabel=b.formatValue(c.v,l)),M.currentPath=b.getPath(e.data),d||(M.percentParent=p/b.getValue(h),M.percentParentLabel=b.formatPercent(M.percentParent,l),M.parent=b.getPtLabel(h)),M.percentEntry=p/b.getValue(t),M.percentEntryLabel=b.formatPercent(M.percentEntry,l),M.entry=b.getPtLabel(t),M.percentRoot=p/b.getValue(f),M.percentRootLabel=b.formatPercent(M.percentRoot,l),M.root=b.getPtLabel(f),c.hasOwnProperty("color")&&(M.color=c.color);var A=s.castOption(r,c.i,"text");return(s.isValidTextValue(A)||""===A)&&(M.text=A),M.customdata=s.castOption(r,c.i,"customdata"),s.texttemplateString(T,M,i._d3locale,M,r._meta||{})}},29969:function(e,t,r){"use strict";var n=r(39898),i=r(7901),a=r(71828),o=r(72597).resizeText;function s(e,t,r){var n=t.data.data,o=!t.children,s=n.i,l=a.castOption(r,s,"marker.line.color")||i.defaultLine,u=a.castOption(r,s,"marker.line.width")||0;e.style("stroke-width",u).call(i.fill,n.color).call(i.stroke,l).style("opacity",o?r.leaf.opacity:null)}e.exports={style:function(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");o(e,t,"sunburst"),t.each((function(e){var t=n.select(this),r=e[0].trace;t.style("opacity",r.opacity),t.selectAll("path.surface").each((function(e){n.select(this).call(s,e,r)}))}))},styleOne:s}},54532:function(e,t,r){"use strict";var n=r(7901),i=r(50693),a=r(12663).axisHoverFormat,o=r(5386).fF,s=r(9012),l=r(1426).extendFlat,u=r(30962).overrideAll;function c(e){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:n.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:n.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var f=e.exports=u(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:c(),y:c(),z:c()},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(e,t,r){"use strict";var n=r(78803);e.exports=function(e,t){t.surfacecolor?n(e,t,{vals:t.surfacecolor,containerStr:"",cLetter:"c"}):n(e,t,{vals:t.z,containerStr:"",cLetter:"c"})}},43768:function(e,t,r){"use strict";var n=r(9330).gl_surface3d,i=r(9330).ndarray,a=r(9330).ndarray_linear_interpolate.d2,o=r(824),s=r(43907),l=r(71828).isArrayOrTypedArray,u=r(81697).parseColorScale,c=r(78614),f=r(21081).extractOpts;function d(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var h=d.prototype;h.getXat=function(e,t,r,n){var i=l(this.data.x)?l(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return void 0===r?i:n.d2l(i,0,r)},h.getYat=function(e,t,r,n){var i=l(this.data.y)?l(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return void 0===r?i:n.d2l(i,0,r)},h.getZat=function(e,t,r,n){var i=this.data.z[t][e];return null===i&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),void 0===r?i:n.d2l(i,0,r)},h.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];null!==o&&void 0!==o&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[i]&&void 0!==s[i][n]?e.textLabel=s[i][n]:e.textLabel=s||"",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.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 v(e,t){if(e0){r=p[n];break}return r}function y(e,t){if(!(e<1||t<1)){for(var r=m(e),n=m(t),i=1,a=0;a_;)r--,r/=g(r),++r1?n:1},h.refineCoords=function(e){for(var t=this.dataScaleX,r=this.dataScaleY,n=e[0].shape[0],a=e[0].shape[1],o=0|Math.floor(e[0].shape[0]*t+1),s=0|Math.floor(e[0].shape[1]*r+1),l=1+n+1,u=1+a+1,c=i(new Float32Array(l*u),[l,u]),f=[1/t,0,0,0,1/r,0,0,0,1],d=0;d0&&null!==this.contourStart[e]&&null!==this.contourEnd[e]&&this.contourEnd[e]>this.contourStart[e]))for(i[e]=!0,t=this.contourStart[e];ta&&(this.minValues[t]=a),this.maxValues[t]",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(e,t,r){"use strict";var n=r(49850),i=r(1426).extendFlat,a=r(92770);function o(e){if(Array.isArray(e)){for(var t=0,r=0;r=t||u===e.length-1)&&(n[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=u,o={firstRowIndex:null,lastRowIndex:null,rows:[]},i+=a,s=u+1,a=0);return n}e.exports=function(e,t){var r=l(t.cells.values),h=function(e){return e.slice(t.header.values.length,e.length)},p=l(t.header.values);p.length&&!p[0].length&&(p[0]=[""],p=l(p));var v=p.concat(h(r).map((function(){return u((p[0]||[""]).length)}))),m=t.domain,g=Math.floor(e._fullLayout._size.w*(m.x[1]-m.x[0])),y=Math.floor(e._fullLayout._size.h*(m.y[1]-m.y[0])),x=t.header.values.length?v[0].map((function(){return t.header.height})):[n.emptyHeaderHeight],b=r.length?r[0].map((function(){return t.cells.height})):[],_=x.reduce(s,0),w=d(b,y-_+n.uplift),k=f(d(x,_),[]),T=f(w,k),M={},A=t._fullInput.columnorder.concat(h(r.map((function(e,t){return t})))),S=v.map((function(e,r){var n=Array.isArray(t.columnwidth)?t.columnwidth[Math.min(r,t.columnwidth.length-1)]:t.columnwidth;return a(n)?Number(n):1})),E=S.reduce(s,0);S=S.map((function(e){return e/E*g}));var C=Math.max(o(t.header.line.width),o(t.cells.line.width)),L={key:t.uid+e._context.staticPlot,translateX:m.x[0]*e._fullLayout._size.w,translateY:e._fullLayout._size.h*(1-m.y[1]),size:e._fullLayout._size,width:g,maxLineWidth:C,height:y,columnOrder:A,groupHeight:y,rowBlocks:T,headerRowBlocks:k,scrollY:0,cells:i({},t.cells,{values:r}),headerCells:i({},t.header,{values:v}),gdColumns:v.map((function(e){return e[0]})),gdColumnsOriginalOrder:v.map((function(e){return e[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:v.map((function(e,t){var r=M[e];return M[e]=(r||0)+1,{key:e+"__"+M[e],label:e,specIndex:t,xIndex:A[t],xScale:c,x:void 0,calcdata:void 0,columnWidth:S[t]}}))};return L.columns.forEach((function(e){e.calcdata=L,e.x=c(e)})),L}},56269:function(e,t,r){"use strict";var n=r(1426).extendFlat;t.splitToPanels=function(e){var t=[0,0],r=n({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:n({},e.calcdata,{cells:e.calcdata.headerCells})});return[n({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),n({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),r]},t.splitToCells=function(e){var t=function(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}(e);return(e.values||[]).slice(t[0],t[1]).map((function(r,n){return{keyWithinBlock:n+("string"===typeof r&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}}))}},39754:function(e,t,r){"use strict";var n=r(71828),i=r(44464),a=r(27670).c;e.exports=function(e,t,r,o){function s(r,a){return n.coerce(e,t,i,r,a)}a(t,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"),n.coerceFont(s,"header.font",n.extendFlat({},o.font)),function(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort((function(e,t){return e-t})),o=i.map((function(e){return a.indexOf(e)})),s=o.length;s/i),l=!o||s;e.mayHaveMarkup=o&&i.match(/[<&>]/);var u,c="string"===typeof(u=i)&&u.match(n.latexCheck);e.latex=c;var f,d,h=c?"":k(e.calcdata.cells.prefix,t,r)||"",p=c?"":k(e.calcdata.cells.suffix,t,r)||"",v=c?null:k(e.calcdata.cells.format,t,r)||null,m=h+(v?a(v)(e.value):e.value)+p;if(e.wrappingNeeded=!e.wrapped&&!l&&!c&&(f=w(m)),e.cellHeightMayIncrease=s||c||e.mayHaveMarkup||(void 0===f?w(m):f),e.needsConvertToTspans=e.mayHaveMarkup||e.wrappingNeeded||e.latex,e.wrappingNeeded){var g=(" "===n.wrapSplitCharacter?m.replace(/i&&n.push(a),i+=l}return n}(i,l,s);1===u.length&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each((function(e,t){e.page=u[t],e.scrollY=l})),t.attr("transform",(function(e){var t=R(e.rowBlocks,e.page)-e.scrollY;return c(0,t)})),e&&(L(e,r,t,u,n.prevPages,n,0),L(e,r,t,u,n.prevPages,n,1),x(r,e))}}function C(e,t,r,a){return function(o){var s=o.calcdata?o.calcdata:o,l=t.filter((function(e){return s.key===e.key})),u=r||s.scrollbarState.dragMultiplier,c=s.scrollY;s.scrollY=void 0===a?s.scrollY+u*i.event.dy:a;var f=l.selectAll("."+n.cn.yColumn).selectAll("."+n.cn.columnBlock).filter(M);return E(e,f,l),s.scrollY===c}}function L(e,t,r,n,i,a,o){n[o]!==i[o]&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout((function(){var a=r.filter((function(e,t){return t===o&&n[t]!==i[t]}));b(e,t,a,r),i[o]=n[o]})))}function P(e,t,r,a){return function(){var o=i.select(t.parentNode);o.each((function(e){var t=e.fragments;o.selectAll("tspan.line").each((function(e,r){t[r].width=this.getComputedTextLength()}));var r,i,a=t[t.length-1].width,s=t.slice(0,-1),l=[],u=0,c=e.column.columnWidth-2*n.cellPad;for(e.value="";s.length;)u+(i=(r=s.shift()).width+a)>c&&(e.value+=l.join(n.wrapSpacer)+n.lineBreaker,l=[],u=0),l.push(r.text),u+=i;u&&(e.value+=l.join(n.wrapSpacer)),e.wrapped=!0})),o.selectAll("tspan.line").remove(),_(o.select("."+n.cn.cellText),r,e,a),i.select(t.parentNode.parentNode).call(D)}}function O(e,t,r,a,o){return function(){if(!o.settledY){var s=i.select(t.parentNode),l=N(o),u=o.key-l.firstRowIndex,f=l.rows[u].rowHeight,d=o.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*n.cellPad:f,h=Math.max(d,f);h-l.rows[u].rowHeight&&(l.rows[u].rowHeight=h,e.selectAll("."+n.cn.columnCell).call(D),E(null,e.filter(M),0),x(r,a,!0)),s.attr("transform",(function(){var e=this,t=e.parentNode.getBoundingClientRect(),r=i.select(e.parentNode).select("."+n.cn.cellRect).node().getBoundingClientRect(),a=e.transform.baseVal.consolidate(),s=r.top-t.top+(a?a.matrix.f:n.cellPad);return c(I(o,i.select(e.parentNode).select("."+n.cn.cellTextHolder).node().getBoundingClientRect().width),s)})),o.settledY=!0}}}function I(e,t){switch(e.align){case"left":default:return n.cellPad;case"right":return e.column.columnWidth-(t||0)-n.cellPad;case"center":return(e.column.columnWidth-(t||0))/2}}function D(e){e.attr("transform",(function(e){var t=e.rowBlocks[0].auxiliaryBlocks.reduce((function(e,t){return e+z(t,1/0)}),0),r=z(N(e),e.key);return c(0,r+t)})).selectAll("."+n.cn.cellRect).attr("height",(function(e){return(t=N(e),r=e.key,t.rows[r-t.firstRowIndex]).rowHeight;var t,r}))}function R(e,t){for(var r=0,n=t-1;n>=0;n--)r+=F(e[n]);return r}function z(e,t){for(var r=0,n=0;n","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:c({},s.textfont,{}),editType:"calc"},text:s.text,textinfo:l.textinfo,texttemplate:i({editType:"plot"},{keys:u.eventDataKeys.concat(["label","value"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:n({},{keys:u.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:c({},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(e,t,r){"use strict";var n=r(74875);t.name="treemap",t.plot=function(e,r,i,a){n.plotBasePlot(t.name,e,r,i,a)},t.clean=function(e,r,i,a){n.cleanBasePlot(t.name,e,r,i,a)}},65039:function(e,t,r){"use strict";var n=r(52147);t.y=function(e,t){return n.calc(e,t)},t.T=function(e){return n._runCrossTraceCalc("treemap",e)}},43473:function(e){"use strict";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}},91174:function(e,t,r){"use strict";var n=r(71828),i=r(45802),a=r(7901),o=r(27670).c,s=r(90769).handleText,l=r(97313).TEXTPAD,u=r(21081),c=u.hasColorscale,f=u.handleDefaults;e.exports=function(e,t,r,u){function d(r,a){return n.coerce(e,t,i,r,a)}var h=d("labels"),p=d("parents");if(h&&h.length&&p&&p.length){var v=d("values");v&&v.length?d("branchvalues"):d("count"),d("level"),d("maxdepth"),"squarify"===d("tiling.packing")&&d("tiling.squarifyratio"),d("tiling.flip"),d("tiling.pad");var m=d("text");d("texttemplate"),t.texttemplate||d("textinfo",Array.isArray(m)?"text+label":"label"),d("hovertext"),d("hovertemplate");var g=d("pathbar.visible");s(e,t,u,d,"auto",{hasPathbar:g,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),d("textposition");var y=-1!==t.textposition.indexOf("bottom");d("marker.line.width")&&d("marker.line.color",u.paper_bgcolor);var x=d("marker.colors");(t._hasColorscale=c(e,"marker","colors")||(e.marker||{}).coloraxis)?f(e,t,u,d,{prefix:"marker.",cLetter:"c"}):d("marker.depthfade",!(x||[]).length);var b=2*t.textfont.size;d("marker.pad.t",y?b/4:b),d("marker.pad.l",b/4),d("marker.pad.r",b/4),d("marker.pad.b",y?b:b/4),d("marker.cornerradius"),t._hovered={marker:{line:{width:2,color:a.contrast(u.paper_bgcolor)}}},g&&(d("pathbar.thickness",t.pathbar.textfont.size+2*l),d("pathbar.side"),d("pathbar.edgeshape")),d("sort"),d("root.color"),o(t,u,d),t._length=null}else t.visible=!1}},80694:function(e,t,r){"use strict";var n=r(39898),i=r(2791),a=r(72597).clearMinTextSize,o=r(16688).resizeText,s=r(46650);e.exports=function(e,t,r,l,u){var c,f,d=u.type,h=u.drawDescendants,p=e._fullLayout,v=p["_"+d+"layer"],m=!r;a(d,p),(c=v.selectAll("g.trace."+d).data(t,(function(e){return e[0].trace.uid}))).enter().append("g").classed("trace",!0).classed(d,!0),c.order(),!p.uniformtext.mode&&i.hasTransition(r)?(l&&(f=l()),n.transition().duration(r.duration).ease(r.easing).each("end",(function(){f&&f()})).each("interrupt",(function(){f&&f()})).each((function(){v.selectAll("g.trace").each((function(t){s(e,t,this,r,h)}))}))):(c.each((function(t){s(e,t,this,r,h)})),p.uniformtext.mode&&o(e,v.selectAll(".trace"),d)),m&&c.exit().remove()}},66209:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(91424),o=r(63893),s=r(37210),l=r(96362).styleOne,u=r(43473),c=r(2791),f=r(83523),d=!0;e.exports=function(e,t,r,h,p){var v=p.barDifY,m=p.width,g=p.height,y=p.viewX,x=p.viewY,b=p.pathSlice,_=p.toMoveInsideSlice,w=p.strTransform,k=p.hasTransition,T=p.handleSlicesExit,M=p.makeUpdateSliceInterpolator,A=p.makeUpdateTextInterpolator,S={},E=e._context.staticPlot,C=e._fullLayout,L=t[0],P=L.trace,O=L.hierarchy,I=m/P._entryDepth,D=c.listPath(r.data,"id"),R=s(O.copy(),[m,g],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(R=R.filter((function(e){var t=D.indexOf(e.data.id);return-1!==t&&(e.x0=I*t,e.x1=I*(t+1),e.y0=v,e.y1=v+g,e.onPathbar=!0,!0)}))).reverse(),(h=h.data(R,c.getPtId)).enter().append("g").classed("pathbar",!0),T(h,d,S,[m,g],b),h.order();var z=h;k&&(z=z.transition().each("end",(function(){var t=n.select(this);c.setSliceCursor(t,e,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),z.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=y(s.x1-Math.min(m,g)/2),s._hoverY=x(s.y1-g/2);var h=n.select(this),p=i.ensureSingle(h,"path","surface",(function(e){e.style("pointer-events",E?"none":"all")}));k?p.transition().attrTween("d",(function(e){var t=M(e,d,S,[m,g]);return function(e){return b(t(e))}})):p.attr("d",b),h.call(f,r,e,t,{styleOne:l,eventDataKeys:u.eventDataKeys,transitionTime:u.CLICK_TRANSITION_TIME,transitionEasing:u.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,e,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:e._transitioning}),p.call(l,s,P,{hovered:!1}),s._text=(c.getPtLabel(s)||"").split("
").join(" ")||"";var v=i.ensureSingle(h,"g","slicetext"),T=i.ensureSingle(v,"text","",(function(e){e.attr("data-notex",1)})),L=i.ensureUniformFontSize(e,c.determineTextFont(P,s,C.font,{onPathbar:!0}));T.text(s._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(a.font,L).call(o.convertToTspans,e),s.textBB=a.bBox(T.node()),s.transform=_(s,{fontSize:L.size,onPathbar:!0}),s.transform.fontSize=L.size,k?T.transition().attrTween("transform",(function(e){var t=A(e,d,S,[m,g]);return function(e){return w(t(e))}})):T.attr("transform",w(s))}))}},52583:function(e,t,r){"use strict";var n=r(39898),i=r(71828),a=r(91424),o=r(63893),s=r(37210),l=r(96362).styleOne,u=r(43473),c=r(2791),f=r(83523),d=r(24714).formatSliceLabel,h=!1;e.exports=function(e,t,r,p,v){var m=v.width,g=v.height,y=v.viewX,x=v.viewY,b=v.pathSlice,_=v.toMoveInsideSlice,w=v.strTransform,k=v.hasTransition,T=v.handleSlicesExit,M=v.makeUpdateSliceInterpolator,A=v.makeUpdateTextInterpolator,S=v.prevEntry,E=e._context.staticPlot,C=e._fullLayout,L=t[0].trace,P=-1!==L.textposition.indexOf("left"),O=-1!==L.textposition.indexOf("right"),I=-1!==L.textposition.indexOf("bottom"),D=!I&&!L.marker.pad.t||I&&!L.marker.pad.b,R=s(r,[m,g],{packing:L.tiling.packing,squarifyratio:L.tiling.squarifyratio,flipX:L.tiling.flip.indexOf("x")>-1,flipY:L.tiling.flip.indexOf("y")>-1,pad:{inner:L.tiling.pad,top:L.marker.pad.t,left:L.marker.pad.l,right:L.marker.pad.r,bottom:L.marker.pad.b}}).descendants(),z=1/0,F=-1/0;R.forEach((function(e){var t=e.depth;t>=L._maxDepth?(e.x0=e.x1=(e.x0+e.x1)/2,e.y0=e.y1=(e.y0+e.y1)/2):(z=Math.min(z,t),F=Math.max(F,t))})),p=p.data(R,c.getPtId),L._maxVisibleLayers=isFinite(F)?F-z+1:0,p.enter().append("g").classed("slice",!0),T(p,h,{},[m,g],b),p.order();var N=null;if(k&&S){var B=c.getPtId(S);p.each((function(e){null===N&&c.getPtId(e)===B&&(N={x0:e.x0,x1:e.x1,y0:e.y0,y1:e.y1})}))}var j=function(){return N||{x0:0,x1:m,y0:0,y1:g}},U=p;return k&&(U=U.transition().each("end",(function(){var t=n.select(this);c.setSliceCursor(t,e,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),U.each((function(s){var p=c.isHeader(s,L);s._x0=y(s.x0),s._x1=y(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=y(s.x1-L.marker.pad.r),s._hoverY=x(I?s.y1-L.marker.pad.b/2:s.y0+L.marker.pad.t/2);var v=n.select(this),T=i.ensureSingle(v,"path","surface",(function(e){e.style("pointer-events",E?"none":"all")}));k?T.transition().attrTween("d",(function(e){var t=M(e,h,j(),[m,g]);return function(e){return b(t(e))}})):T.attr("d",b),v.call(f,r,e,t,{styleOne:l,eventDataKeys:u.eventDataKeys,transitionTime:u.CLICK_TRANSITION_TIME,transitionEasing:u.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,e,{isTransitioning:e._transitioning}),T.call(l,s,L,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=p?D?"":c.getPtLabel(s)||"":d(s,r,L,t,C)||"";var S=i.ensureSingle(v,"g","slicetext"),R=i.ensureSingle(S,"text","",(function(e){e.attr("data-notex",1)})),z=i.ensureUniformFontSize(e,c.determineTextFont(L,s,C.font));R.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":P||p?"start":"middle").call(a.font,z).call(o.convertToTspans,e),s.textBB=a.bBox(R.node()),s.transform=_(s,{fontSize:z.size,isHeader:p}),s.transform.fontSize=z.size,k?R.transition().attrTween("transform",(function(e){var t=A(e,h,j(),[m,g]);return function(e){return w(t(e))}})):R.attr("transform",w(s))})),N}},14102:function(e){"use strict";e.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o-1?L+I:-(O+I):0,R={x0:P,x1:P,y0:D,y1:D+O},z=function(e,t,r){var n=g.tiling.pad,i=function(e){return e-n<=t.x0},a=function(e){return e+n>=t.x1},o=function(e){return e-n<=t.y0},s=function(e){return e+n>=t.y1};return e.x0===t.x0&&e.x1===t.x1&&e.y0===t.y0&&e.y1===t.y1?{x0:e.x0,x1:e.x1,y0:e.y0,y1:e.y1}:{x0:i(e.x0-n)?0:a(e.x0-n)?r[0]:e.x0,x1:i(e.x1+n)?0:a(e.x1+n)?r[0]:e.x1,y0:o(e.y0-n)?0:s(e.y0-n)?r[1]:e.y0,y1:o(e.y1+n)?0:s(e.y1+n)?r[1]:e.y1}},F=null,N={},B={},j=null,U=function(e,t){return t?N[d(e)]:B[d(e)]},V=function(e,t,r,n){if(t)return N[d(x)]||R;var i=B[g.level]||r;return function(e){return e.data.depth-b.data.depth=(n-=(y?te:te.r)-s)){var h=(r+n)/2;r=h,n=h}var p;oe?i<(p=a-(y?te:te.b))&&p"===ee?(l.x-=a,u.x-=a,c.x-=a,f.x-=a):"/"===ee?(c.x-=a,f.x-=a,o.x-=a/2,s.x-=a/2):"\\"===ee?(l.x-=a,u.x-=a,o.x-=a/2,s.x-=a/2):"<"===ee&&(o.x-=a,s.x-=a),Q(l),Q(f),Q(o),Q(u),Q(c),Q(s),"M"+$(l.x,l.y)+"L"+$(u.x,u.y)+"L"+$(s.x,s.y)+"L"+$(c.x,c.y)+"L"+$(f.x,f.y)+"L"+$(o.x,o.y)+"Z"},toMoveInsideSlice:se,makeUpdateSliceInterpolator:ue,makeUpdateTextInterpolator:ce,handleSlicesExit:fe,hasTransition:M,strTransform:de}):w.remove()}},96362:function(e,t,r){"use strict";var n=r(39898),i=r(7901),a=r(71828),o=r(2791),s=r(72597).resizeText;function l(e,t,r,n){var s,l,u=(n||{}).hovered,c=t.data.data,f=c.i,d=c.color,h=o.isHierarchyRoot(t),p=1;if(u)s=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(h&&d===r.root.color)p=100,s="rgba(0,0,0,0)",l=0;else if(s=a.castOption(r,f,"marker.line.color")||i.defaultLine,l=a.castOption(r,f,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var v=r.marker.depthfade;if(v){var m,g=i.combine(i.addOpacity(r._backgroundColor,.75),d);if(!0===v){var y=o.getMaxDepth(r);m=isFinite(y)?o.isLeaf(t)?0:r._maxVisibleLayers-(t.data.depth-r._entryDepth):t.data.height+1}else m=t.data.depth-r._entryDepth,r._atRootLevel||m++;if(m>0)for(var x=0;x0){var b,_,w,k,T,M=e.xa,A=e.ya;"h"===p.orientation?(T=t,b="y",w=A,_="x",k=M):(T=r,b="x",w=M,_="y",k=A);var S=h[e.index];if(T>=S.span[0]&&T<=S.span[1]){var E=i.extendFlat({},e),C=k.c2p(T,!0),L=s.getKdeValue(S,p,T),P=s.getPositionOnKdePath(S,p,C),O=w._offset,I=w._length;E[b+"0"]=P[0],E[b+"1"]=P[1],E[_+"0"]=E[_+"1"]=C,E[_+"Label"]=_+": "+a.hoverLabelText(k,T,p[_+"hoverformat"])+", "+h[0].t.labels.kde+" "+L.toFixed(3);for(var D=0,R=0;R")),c.color=function(e,t){var r=e[t.dir].marker,n=r.color,a=r.line.color,o=r.line.width;return i(n)?n:i(a)&&o?a:void 0}(d,m),[c]}function T(e){return n(v,e,d[p+"hoverformat"])}}},19990:function(e,t,r){"use strict";e.exports={attributes:r(43037),layoutAttributes:r(13494),supplyDefaults:r(83266).supplyDefaults,crossTraceDefaults:r(83266).crossTraceDefaults,supplyLayoutDefaults:r(5176),calc:r(52752),crossTraceCalc:r(70766),plot:r(30436),style:r(55750).style,hoverPoints:r(61326),eventData:r(58593),selectPoints:r(81974),moduleType:"trace",name:"waterfall",basePlotModule:r(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},13494:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(71828),i=r(13494);e.exports=function(e,t,r){var a=!1;function o(r,a){return n.coerce(e,t,i,r,a)}for(var s=0;s0&&(m+=d?"M"+f[0]+","+p[1]+"V"+p[0]:"M"+f[1]+","+p[0]+"H"+f[0]),"between"!==h&&(r.isSum||s path").each((function(e){if(!e.isBlank){var t=s[e.dir].marker;n.select(this).call(a.fill,t.color).call(a.stroke,t.line.color).call(i.dashLine,t.line.dash,t.line.width).style("opacity",s.selectedpoints&&!e.selected?o:1)}})),u(r,s,e),r.selectAll(".lines").each((function(){var e=s.connector.line;i.lineGroupStyle(n.select(this).selectAll("path"),e.width,e.color,e.dash)}))}))}}},82887:function(e,t,r){"use strict";var n=r(89298),i=r(71828),a=r(86281),o=r(79344).p,s=r(50606).BADNUM;t.moduleType="transform",t.name="aggregate";var l=t.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"},u=l.aggregations;function c(e,t,r,a){if(a.enabled){for(var o=a.target,l=i.nestedProperty(t,o),u=l.get(),c=function(e,t){var r=e.func,n=t.d2c,a=t.c2d;switch(r){case"count":return f;case"first":return d;case"last":return h;case"sum":return function(e,t){for(var r=0,i=0;ii&&(i=c,o=u)}}return i?a(o):s};case"rms":return function(e,t){for(var r=0,i=0,o=0;o":return function(e){return d(e)>s};case">=":return function(e){return d(e)>=s};case"[]":return function(e){var t=d(e);return t>=s[0]&&t<=s[1]};case"()":return function(e){var t=d(e);return t>s[0]&&t=s[0]&&ts[0]&&t<=s[1]};case"][":return function(e){var t=d(e);return t<=s[0]||t>=s[1]};case")(":return function(e){var t=d(e);return ts[1]};case"](":return function(e){var t=d(e);return t<=s[0]||t>s[1]};case")[":return function(e){var t=d(e);return t=s[1]};case"{}":return function(e){return-1!==s.indexOf(d(e))};case"}{":return function(e){return-1===s.indexOf(d(e))}}}(r,a.getDataToCoordFunc(e,t,s,i),d),x={},b={},_=0;p?(m=function(e){x[e.astr]=n.extendDeep([],e.get()),e.set(new Array(f))},g=function(e,t){var r=x[e.astr][t];e.get()[t]=r}):(m=function(e){x[e.astr]=n.extendDeep([],e.get()),e.set([])},g=function(e,t){var r=x[e.astr][t];e.get().push(r)}),T(m);for(var w=o(t.transforms,r),k=0;k1?"%{group} (%{trace})":"%{group}");var l=e.styles,u=o.styles=[];if(l)for(a=0;ad)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,p.prototype),t}function p(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return g(e)}return v(e,t,r)}function v(e,t,r){if("string"===typeof e)return function(e,t){if("string"===typeof t&&""!==t||(t="utf8"),!p.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|_(e,t),n=h(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(te(e,Uint8Array)){var t=new Uint8Array(e);return x(t.buffer,t.byteOffset,t.byteLength)}return y(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e));if(te(e,ArrayBuffer)||e&&te(e.buffer,ArrayBuffer))return x(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(te(e,SharedArrayBuffer)||e&&te(e.buffer,SharedArrayBuffer)))return x(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return p.from(n,t,r);var i=function(e){if(p.isBuffer(e)){var t=0|b(e.length),r=h(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!==typeof e.length||re(e.length)?h(0):y(e):"Buffer"===e.type&&Array.isArray(e.data)?y(e.data):void 0}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return p.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e))}function m(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function g(e){return m(e),h(e<0?0:0|b(e))}function y(e){for(var t=e.length<0?0:0|b(e.length),r=h(t),n=0;n=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return 0|e}function _(e,t){if(p.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||te(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(e));var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return J(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Q(e).length;default:if(i)return n?-1:J(e).length;t=(""+t).toLowerCase(),i=!0}}function w(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return z(this,t,r);case"utf8":case"utf-8":return O(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return P(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function k(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function T(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),re(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=p.from(t,n)),p.isBuffer(t))return 0===t.length?-1:M(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):M(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function M(e,t,r,n,i){var a,o=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,l/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var c=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){for(var f=!0,d=0;di&&(n=i):n=i;var a,o=t.length;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function P(e,t,r){return 0===t&&r===e.length?u.fromByteArray(e):u.fromByteArray(e.slice(t,r))}function O(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,u=void 0,c=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=e[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=e[i+1],u=e[i+2],128===(192&l)&&128===(192&u)&&(f=(15&a)<<12|(63&l)<<6|63&u)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],128===(192&l)&&128===(192&u)&&128===(192&c)&&(f=(15&a)<<18|(63&l)<<12|(63&u)<<6|63&c)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=s}return function(e){var t=e.length;if(t<=I)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},p.byteLength=_,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;tr&&(e+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(e,t,r,n,i){if(te(e,Uint8Array)&&(e=p.from(e,e.offset,e.byteLength)),!p.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(e));if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0),s=Math.min(a,o),u=this.slice(n,i),c=e.slice(t,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return A(this,e,t,r);case"utf8":case"utf-8":return S(this,e,t,r);case"ascii":case"latin1":case"binary":return E(this,e,t,r);case"base64":return C(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,r,n,i,a){if(!p.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function j(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,r}function U(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o>>=8,e[r+2]=o,o>>=8,e[r+1]=o,o>>=8,e[r]=o,r+8}function V(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function H(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,4),c.write(e,t,r,n,23,4),r+4}function q(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,8),c.write(e,t,r,n,52,8),r+8}p.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},p.prototype.readUint8=p.prototype.readUInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),this[e]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]|this[e+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]<<8|this[e+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},p.prototype.readBigUInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,24),i=this[++e]+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e],i=this[++e]*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+r;return(BigInt(n)<>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},p.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||N(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},p.prototype.readInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},p.prototype.readInt16LE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt16BE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},p.prototype.readInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},p.prototype.readBigInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=this[e+4]+this[e+5]*Math.pow(2,8)+this[e+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=(t<<24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e];return(BigInt(n)<>>=0,t||N(e,4,this.length),c.read(this,e,!0,23,4)},p.prototype.readFloatBE=function(e,t){return e>>>=0,t||N(e,4,this.length),c.read(this,e,!1,23,4)},p.prototype.readDoubleLE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!0,52,8)},p.prototype.readDoubleBE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},p.prototype.writeUint8=p.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,255,0),this[t]=255&e,t+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigUInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},p.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},p.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},p.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},p.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(e,t,r){return H(this,e,t,!0,r)},p.prototype.writeFloatBE=function(e,t,r){return H(this,e,t,!1,r)},p.prototype.writeDoubleLE=function(e,t,r){return q(this,e,t,!0,r)},p.prototype.writeDoubleBE=function(e,t,r){return q(this,e,t,!1,r)},p.prototype.copy=function(e,t,r,n){if(!p.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(a=t;a=n+4;r-=3)t="_".concat(e.slice(r-3,r)).concat(t);return"".concat(e.slice(0,r)).concat(t)}function Z(e,t,r,n,i,a){if(e>r||e3?0===t||t===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(t).concat(s," and <= ").concat(r).concat(s),new W.ERR_OUT_OF_RANGE("value",o,e)}!function(e,t,r){X(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||K(t,e.length-(r+1))}(n,i,a)}function X(e,t){if("number"!==typeof e)throw new W.ERR_INVALID_ARG_TYPE(t,"number",e)}function K(e,t,r){if(Math.floor(e)!==e)throw X(e,r),new W.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new W.ERR_BUFFER_OUT_OF_BOUNDS;throw new W.ERR_OUT_OF_RANGE(r||"offset",">= ".concat(r?1:0," and <= ").concat(t),e)}G("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?"".concat(e," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),G("ERR_INVALID_ARG_TYPE",(function(e,t){return'The "'.concat(e,'" argument must be of type number. Received type ').concat(l(t))}),TypeError),G("ERR_OUT_OF_RANGE",(function(e,t,r){var n='The value of "'.concat(e,'" is out of range.'),i=r;return Number.isInteger(r)&&Math.abs(r)>Math.pow(2,32)?i=Y(String(r)):"bigint"===typeof r&&(i=String(r),(r>Math.pow(BigInt(2),BigInt(32))||r<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),n+=" It must be ".concat(t,". Received ").concat(i)}),RangeError);var $=/[^+/0-9A-Za-z-_]/g;function J(e,t){var r;t=t||1/0;for(var n=e.length,i=null,a=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Q(e){return u.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace($,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function ee(e,t,r,n){var i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function te(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function re(e){return e!==e}var ne=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)t[n+i]=e[r]+e[i];return t}();function ie(e){return"undefined"===typeof BigInt?ae:e}function ae(){throw new Error("BigInt not supported")}},2321:function(e){"use strict";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var t=/(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,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(e){e||(e={});var i=e.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=t.test(i)&&!r.test(i)||!!e.tablet&&n.test(i);return!a&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},3910:function(e,t){"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=s(e),o=a[0],l=a[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,o,l)),c=0,f=l>0?o-4:o;for(r=0;r>16&255,u[c++]=t>>8&255,u[c++]=255&t;return 2===l&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[c++]=255&t),1===l&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[c++]=t>>8&255,u[c++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=16383,s=0,u=n-i;su?u:s+o));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function l(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},3187:function(e,t){t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,l=(1<>1,c=-7,f=r?i-1:0,d=r?-1:1,h=e[t+f];for(f+=d,a=h&(1<<-c)-1,h>>=-c,c+=s;c>0;a=256*a+e[t+f],f+=d,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+e[t+f],f+=d,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,n),a-=u}return(h?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:a-1,p=n?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+f>=1?d/l:d*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+h]=255&s,h+=p,s/=256,i-=8);for(o=o<0;e[r+h]=255&o,h+=p,o/=256,u-=8);e[r+h-p]|=128*v}},1152:function(e,t,r){"use strict";e.exports=function(e){var t=(e=e||{}).eye||[0,0,1],r=e.center||[0,0,0],s=e.up||[0,1,0],l=e.distanceLimits||[0,1/0],u=e.mode||"turntable",c=n(),f=i(),d=a();return c.setDistanceLimits(l[0],l[1]),c.lookAt(0,t,r,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,t,r,s),d.setDistanceLimits(l[0],l[1]),d.lookAt(0,t,r,s),new o({turntable:c,orbit:f,matrix:d},u)};var n=r(3440),i=r(7774),a=r(9298);function o(e,t){this._controllerNames=Object.keys(e),this._controllerList=this._controllerNames.map((function(t){return e[t]})),this._mode=t,this._active=e[t],this._active||(this._mode="turntable",this._active=e.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(e){for(var t=this._controllerList,r=0;r0?u=u.ushln(f):f<0&&(c=c.ushln(-f)),s(u,c)}},234:function(e,t,r){"use strict";var n=r(3218);e.exports=function(e){return Array.isArray(e)&&2===e.length&&n(e[0])&&n(e[1])}},4275:function(e,t,r){"use strict";var n=r(1928);e.exports=function(e){return e.cmp(new n(0))}},9958:function(e,t,r){"use strict";var n=r(4275);e.exports=function(e){var t=e.length,r=e.words,i=0;if(1===t)i=r[0];else if(2===t)i=r[0]+67108864*r[1];else for(var a=0;a20?52:r+32}},3218:function(e,t,r){"use strict";r(1928),e.exports=function(e){return e&&"object"===typeof e&&Boolean(e.words)}},5514:function(e,t,r){"use strict";var n=r(1928),i=r(8362);e.exports=function(e){var t=i.exponent(e);return t<52?new n(e):new n(e*Math.pow(2,52-t)).ushln(t-52)}},8524:function(e,t,r){"use strict";var n=r(5514),i=r(4275);e.exports=function(e,t){var r=i(e),a=i(t);if(0===r)return[n(0),n(1)];if(0===a)return[n(0),n(0)];a<0&&(e=e.neg(),t=t.neg());var o=e.gcd(t);return o.cmpn(1)?[e.div(o),t.div(o)]:[e,t]}},2813:function(e,t,r){"use strict";var n=r(1928);e.exports=function(e){return new n(e)}},3962:function(e,t,r){"use strict";var n=r(8524);e.exports=function(e,t){return n(e[0].mul(t[0]),e[1].mul(t[1]))}},4951:function(e,t,r){"use strict";var n=r(4275);e.exports=function(e){return n(e[0])*n(e[1])}},4354:function(e,t,r){"use strict";var n=r(8524);e.exports=function(e,t){return n(e[0].mul(t[1]).sub(e[1].mul(t[0])),e[1].mul(t[1]))}},7999:function(e,t,r){"use strict";var n=r(9958),i=r(1112);e.exports=function(e){var t=e[0],r=e[1];if(0===t.cmpn(0))return 0;var a=t.abs().divmod(r.abs()),o=a.div,s=n(o),l=a.mod,u=t.negative!==r.negative?-1:1;if(0===l.cmpn(0))return u*s;if(s){var c=i(s)+4;return u*(s+(d=n(l.ushln(c).divRound(r)))*Math.pow(2,-c))}var f=r.bitLength()-l.bitLength()+53,d=n(l.ushln(f).divRound(r));return f<1023?u*d*Math.pow(2,-f):u*(d*=Math.pow(2,-1023))*Math.pow(2,1023-f)}},5070:function(e){"use strict";function t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>=0?(a=o,i=o-1):n=o+1}return a}function r(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>0?(a=o,i=o-1):n=o+1}return a}function n(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<0?(a=o,n=o+1):i=o-1}return a}function i(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<=0?(a=o,n=o+1):i=o-1}return a}function a(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=void 0!==r?r(o,t):o-t;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(e,t,r,n,i,a){return"function"===typeof r?a(e,t,r,void 0===n?0:0|n,void 0===i?e.length-1:0|i):a(e,t,void 0,void 0===r?0:0|r,void 0===n?e.length-1:0|n)}e.exports={ge:function(e,r,n,i,a){return o(e,r,n,i,a,t)},gt:function(e,t,n,i,a){return o(e,t,n,i,a,r)},lt:function(e,t,r,i,a){return o(e,t,r,i,a,n)},le:function(e,t,r,n,a){return o(e,t,r,n,a,i)},eq:function(e,t,r,n,i){return o(e,t,r,n,i,a)}}},2288:function(e,t){"use strict";function r(e){var t=32;return(e&=-e)&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}t.INT_BITS=32,t.INT_MAX=2147483647,t.INT_MIN=-1<<31,t.sign=function(e){return(e>0)-(e<0)},t.abs=function(e){var t=e>>31;return(e^t)-t},t.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=r=((e>>>=t)>255)<<3,t|=r=((e>>>=r)>15)<<2,(t|=r=((e>>>=r)>3)<<1)|(e>>>=r)>>1},t.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},t.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},t.countTrailingZeros=r,t.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},t.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=n<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},t.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},t.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},t.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},t.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},1928:function(e,t,r){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function a(e,t,r){if(a.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var o;"object"===typeof e?e.exports=a:t.BN=a,a.BN=a,a.wordSize=26;try{o="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:r(6601).Buffer}catch(M){}function s(e,t){var r=e.charCodeAt(t);return r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function l(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function u(e,t,r,n){for(var i=0,a=Math.min(e.length,r),o=t;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(e){return e instanceof a||null!==e&&"object"===typeof e&&e.constructor.wordSize===a.wordSize&&Array.isArray(e.words)},a.max=function(e,t){return e.cmp(t)>0?e:t},a.min=function(e,t){return e.cmp(t)<0?e:t},a.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)o=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=l(e,t,n)<=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;this.strip()},a.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var a=e.length-r,o=a%n,s=Math.min(a,a-o)+r,l=0,c=r;c1&&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 c=["","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],d=[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 h(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],a=0|t.words[0],o=i*a,s=67108863&o,l=o/67108864|0;r.words[0]=s;for(var u=1;u>>26,f=67108863&l,d=Math.min(u,t.length-1),h=Math.max(0,u-e.length+1);h<=d;h++){var p=u-h|0;c+=(o=(i=0|e.words[p])*(a=0|t.words[h])+f)/67108864|0,f=67108863&o}r.words[u]=0|f,l=0|c}return 0!==l?r.words[u]=0|l:r.length--,r.strip()}a.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?c[6-l.length]+l+r:l+r,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var u=f[e],h=d[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var v=p.modn(h).toString(e);r=(p=p.idivn(h)).isZero()?v+r:c[u-v.length]+v+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(e,t){return n("undefined"!==typeof o),this.toArrayLike(o,e,t)},a.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},a.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),a=r||Math.max(1,i);n(i<=a,"byte array longer than desired length"),n(a>0,"Requested array length <= 0"),this.strip();var o,s,l="le"===t,u=new e(a),c=this.clone();if(l){for(s=0;!c.isZero();s++)o=c.andln(255),c.iushrn(8),u[s]=o;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},a.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},a.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},a.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},a.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},a.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},a.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},a.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},a.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},a.prototype.notn=function(e){return this.clone().inotn(e)},a.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},a.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var a=0,o=0;o>26,this.words[o]=67108863&t;for(;0!==a&&o>26,this.words[o]=67108863&t;if(0===a&&o>>13,h=0|o[1],p=8191&h,v=h>>>13,m=0|o[2],g=8191&m,y=m>>>13,x=0|o[3],b=8191&x,_=x>>>13,w=0|o[4],k=8191&w,T=w>>>13,M=0|o[5],A=8191&M,S=M>>>13,E=0|o[6],C=8191&E,L=E>>>13,P=0|o[7],O=8191&P,I=P>>>13,D=0|o[8],R=8191&D,z=D>>>13,F=0|o[9],N=8191&F,B=F>>>13,j=0|s[0],U=8191&j,V=j>>>13,H=0|s[1],q=8191&H,W=H>>>13,G=0|s[2],Y=8191&G,Z=G>>>13,X=0|s[3],K=8191&X,$=X>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],ae=8191&ie,oe=ie>>>13,se=0|s[7],le=8191&se,ue=se>>>13,ce=0|s[8],fe=8191&ce,de=ce>>>13,he=0|s[9],pe=8191&he,ve=he>>>13;r.negative=e.negative^t.negative,r.length=19;var me=(u+(n=Math.imul(f,U))|0)+((8191&(i=(i=Math.imul(f,V))+Math.imul(d,U)|0))<<13)|0;u=((a=Math.imul(d,V))+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(p,U),i=(i=Math.imul(p,V))+Math.imul(v,U)|0,a=Math.imul(v,V);var ge=(u+(n=n+Math.imul(f,q)|0)|0)+((8191&(i=(i=i+Math.imul(f,W)|0)+Math.imul(d,q)|0))<<13)|0;u=((a=a+Math.imul(d,W)|0)+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(g,U),i=(i=Math.imul(g,V))+Math.imul(y,U)|0,a=Math.imul(y,V),n=n+Math.imul(p,q)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(v,q)|0,a=a+Math.imul(v,W)|0;var ye=(u+(n=n+Math.imul(f,Y)|0)|0)+((8191&(i=(i=i+Math.imul(f,Z)|0)+Math.imul(d,Y)|0))<<13)|0;u=((a=a+Math.imul(d,Z)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(b,U),i=(i=Math.imul(b,V))+Math.imul(_,U)|0,a=Math.imul(_,V),n=n+Math.imul(g,q)|0,i=(i=i+Math.imul(g,W)|0)+Math.imul(y,q)|0,a=a+Math.imul(y,W)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(v,Y)|0,a=a+Math.imul(v,Z)|0;var xe=(u+(n=n+Math.imul(f,K)|0)|0)+((8191&(i=(i=i+Math.imul(f,$)|0)+Math.imul(d,K)|0))<<13)|0;u=((a=a+Math.imul(d,$)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(k,U),i=(i=Math.imul(k,V))+Math.imul(T,U)|0,a=Math.imul(T,V),n=n+Math.imul(b,q)|0,i=(i=i+Math.imul(b,W)|0)+Math.imul(_,q)|0,a=a+Math.imul(_,W)|0,n=n+Math.imul(g,Y)|0,i=(i=i+Math.imul(g,Z)|0)+Math.imul(y,Y)|0,a=a+Math.imul(y,Z)|0,n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(v,K)|0,a=a+Math.imul(v,$)|0;var be=(u+(n=n+Math.imul(f,Q)|0)|0)+((8191&(i=(i=i+Math.imul(f,ee)|0)+Math.imul(d,Q)|0))<<13)|0;u=((a=a+Math.imul(d,ee)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(A,U),i=(i=Math.imul(A,V))+Math.imul(S,U)|0,a=Math.imul(S,V),n=n+Math.imul(k,q)|0,i=(i=i+Math.imul(k,W)|0)+Math.imul(T,q)|0,a=a+Math.imul(T,W)|0,n=n+Math.imul(b,Y)|0,i=(i=i+Math.imul(b,Z)|0)+Math.imul(_,Y)|0,a=a+Math.imul(_,Z)|0,n=n+Math.imul(g,K)|0,i=(i=i+Math.imul(g,$)|0)+Math.imul(y,K)|0,a=a+Math.imul(y,$)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(v,Q)|0,a=a+Math.imul(v,ee)|0;var _e=(u+(n=n+Math.imul(f,re)|0)|0)+((8191&(i=(i=i+Math.imul(f,ne)|0)+Math.imul(d,re)|0))<<13)|0;u=((a=a+Math.imul(d,ne)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(C,U),i=(i=Math.imul(C,V))+Math.imul(L,U)|0,a=Math.imul(L,V),n=n+Math.imul(A,q)|0,i=(i=i+Math.imul(A,W)|0)+Math.imul(S,q)|0,a=a+Math.imul(S,W)|0,n=n+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,Z)|0)+Math.imul(T,Y)|0,a=a+Math.imul(T,Z)|0,n=n+Math.imul(b,K)|0,i=(i=i+Math.imul(b,$)|0)+Math.imul(_,K)|0,a=a+Math.imul(_,$)|0,n=n+Math.imul(g,Q)|0,i=(i=i+Math.imul(g,ee)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(v,re)|0,a=a+Math.imul(v,ne)|0;var we=(u+(n=n+Math.imul(f,ae)|0)|0)+((8191&(i=(i=i+Math.imul(f,oe)|0)+Math.imul(d,ae)|0))<<13)|0;u=((a=a+Math.imul(d,oe)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(O,U),i=(i=Math.imul(O,V))+Math.imul(I,U)|0,a=Math.imul(I,V),n=n+Math.imul(C,q)|0,i=(i=i+Math.imul(C,W)|0)+Math.imul(L,q)|0,a=a+Math.imul(L,W)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,Z)|0)+Math.imul(S,Y)|0,a=a+Math.imul(S,Z)|0,n=n+Math.imul(k,K)|0,i=(i=i+Math.imul(k,$)|0)+Math.imul(T,K)|0,a=a+Math.imul(T,$)|0,n=n+Math.imul(b,Q)|0,i=(i=i+Math.imul(b,ee)|0)+Math.imul(_,Q)|0,a=a+Math.imul(_,ee)|0,n=n+Math.imul(g,re)|0,i=(i=i+Math.imul(g,ne)|0)+Math.imul(y,re)|0,a=a+Math.imul(y,ne)|0,n=n+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,oe)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,oe)|0;var ke=(u+(n=n+Math.imul(f,le)|0)|0)+((8191&(i=(i=i+Math.imul(f,ue)|0)+Math.imul(d,le)|0))<<13)|0;u=((a=a+Math.imul(d,ue)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(R,U),i=(i=Math.imul(R,V))+Math.imul(z,U)|0,a=Math.imul(z,V),n=n+Math.imul(O,q)|0,i=(i=i+Math.imul(O,W)|0)+Math.imul(I,q)|0,a=a+Math.imul(I,W)|0,n=n+Math.imul(C,Y)|0,i=(i=i+Math.imul(C,Z)|0)+Math.imul(L,Y)|0,a=a+Math.imul(L,Z)|0,n=n+Math.imul(A,K)|0,i=(i=i+Math.imul(A,$)|0)+Math.imul(S,K)|0,a=a+Math.imul(S,$)|0,n=n+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,ee)|0)+Math.imul(T,Q)|0,a=a+Math.imul(T,ee)|0,n=n+Math.imul(b,re)|0,i=(i=i+Math.imul(b,ne)|0)+Math.imul(_,re)|0,a=a+Math.imul(_,ne)|0,n=n+Math.imul(g,ae)|0,i=(i=i+Math.imul(g,oe)|0)+Math.imul(y,ae)|0,a=a+Math.imul(y,oe)|0,n=n+Math.imul(p,le)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(v,le)|0,a=a+Math.imul(v,ue)|0;var Te=(u+(n=n+Math.imul(f,fe)|0)|0)+((8191&(i=(i=i+Math.imul(f,de)|0)+Math.imul(d,fe)|0))<<13)|0;u=((a=a+Math.imul(d,de)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(N,U),i=(i=Math.imul(N,V))+Math.imul(B,U)|0,a=Math.imul(B,V),n=n+Math.imul(R,q)|0,i=(i=i+Math.imul(R,W)|0)+Math.imul(z,q)|0,a=a+Math.imul(z,W)|0,n=n+Math.imul(O,Y)|0,i=(i=i+Math.imul(O,Z)|0)+Math.imul(I,Y)|0,a=a+Math.imul(I,Z)|0,n=n+Math.imul(C,K)|0,i=(i=i+Math.imul(C,$)|0)+Math.imul(L,K)|0,a=a+Math.imul(L,$)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,ee)|0,n=n+Math.imul(k,re)|0,i=(i=i+Math.imul(k,ne)|0)+Math.imul(T,re)|0,a=a+Math.imul(T,ne)|0,n=n+Math.imul(b,ae)|0,i=(i=i+Math.imul(b,oe)|0)+Math.imul(_,ae)|0,a=a+Math.imul(_,oe)|0,n=n+Math.imul(g,le)|0,i=(i=i+Math.imul(g,ue)|0)+Math.imul(y,le)|0,a=a+Math.imul(y,ue)|0,n=n+Math.imul(p,fe)|0,i=(i=i+Math.imul(p,de)|0)+Math.imul(v,fe)|0,a=a+Math.imul(v,de)|0;var Me=(u+(n=n+Math.imul(f,pe)|0)|0)+((8191&(i=(i=i+Math.imul(f,ve)|0)+Math.imul(d,pe)|0))<<13)|0;u=((a=a+Math.imul(d,ve)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(N,q),i=(i=Math.imul(N,W))+Math.imul(B,q)|0,a=Math.imul(B,W),n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(z,Y)|0,a=a+Math.imul(z,Z)|0,n=n+Math.imul(O,K)|0,i=(i=i+Math.imul(O,$)|0)+Math.imul(I,K)|0,a=a+Math.imul(I,$)|0,n=n+Math.imul(C,Q)|0,i=(i=i+Math.imul(C,ee)|0)+Math.imul(L,Q)|0,a=a+Math.imul(L,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(S,re)|0,a=a+Math.imul(S,ne)|0,n=n+Math.imul(k,ae)|0,i=(i=i+Math.imul(k,oe)|0)+Math.imul(T,ae)|0,a=a+Math.imul(T,oe)|0,n=n+Math.imul(b,le)|0,i=(i=i+Math.imul(b,ue)|0)+Math.imul(_,le)|0,a=a+Math.imul(_,ue)|0,n=n+Math.imul(g,fe)|0,i=(i=i+Math.imul(g,de)|0)+Math.imul(y,fe)|0,a=a+Math.imul(y,de)|0;var Ae=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ve)|0)+Math.imul(v,pe)|0))<<13)|0;u=((a=a+Math.imul(v,ve)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(N,Y),i=(i=Math.imul(N,Z))+Math.imul(B,Y)|0,a=Math.imul(B,Z),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,$)|0)+Math.imul(z,K)|0,a=a+Math.imul(z,$)|0,n=n+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,ee)|0)+Math.imul(I,Q)|0,a=a+Math.imul(I,ee)|0,n=n+Math.imul(C,re)|0,i=(i=i+Math.imul(C,ne)|0)+Math.imul(L,re)|0,a=a+Math.imul(L,ne)|0,n=n+Math.imul(A,ae)|0,i=(i=i+Math.imul(A,oe)|0)+Math.imul(S,ae)|0,a=a+Math.imul(S,oe)|0,n=n+Math.imul(k,le)|0,i=(i=i+Math.imul(k,ue)|0)+Math.imul(T,le)|0,a=a+Math.imul(T,ue)|0,n=n+Math.imul(b,fe)|0,i=(i=i+Math.imul(b,de)|0)+Math.imul(_,fe)|0,a=a+Math.imul(_,de)|0;var Se=(u+(n=n+Math.imul(g,pe)|0)|0)+((8191&(i=(i=i+Math.imul(g,ve)|0)+Math.imul(y,pe)|0))<<13)|0;u=((a=a+Math.imul(y,ve)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(N,K),i=(i=Math.imul(N,$))+Math.imul(B,K)|0,a=Math.imul(B,$),n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,ee)|0,n=n+Math.imul(O,re)|0,i=(i=i+Math.imul(O,ne)|0)+Math.imul(I,re)|0,a=a+Math.imul(I,ne)|0,n=n+Math.imul(C,ae)|0,i=(i=i+Math.imul(C,oe)|0)+Math.imul(L,ae)|0,a=a+Math.imul(L,oe)|0,n=n+Math.imul(A,le)|0,i=(i=i+Math.imul(A,ue)|0)+Math.imul(S,le)|0,a=a+Math.imul(S,ue)|0,n=n+Math.imul(k,fe)|0,i=(i=i+Math.imul(k,de)|0)+Math.imul(T,fe)|0,a=a+Math.imul(T,de)|0;var Ee=(u+(n=n+Math.imul(b,pe)|0)|0)+((8191&(i=(i=i+Math.imul(b,ve)|0)+Math.imul(_,pe)|0))<<13)|0;u=((a=a+Math.imul(_,ve)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(N,Q),i=(i=Math.imul(N,ee))+Math.imul(B,Q)|0,a=Math.imul(B,ee),n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(z,re)|0,a=a+Math.imul(z,ne)|0,n=n+Math.imul(O,ae)|0,i=(i=i+Math.imul(O,oe)|0)+Math.imul(I,ae)|0,a=a+Math.imul(I,oe)|0,n=n+Math.imul(C,le)|0,i=(i=i+Math.imul(C,ue)|0)+Math.imul(L,le)|0,a=a+Math.imul(L,ue)|0,n=n+Math.imul(A,fe)|0,i=(i=i+Math.imul(A,de)|0)+Math.imul(S,fe)|0,a=a+Math.imul(S,de)|0;var Ce=(u+(n=n+Math.imul(k,pe)|0)|0)+((8191&(i=(i=i+Math.imul(k,ve)|0)+Math.imul(T,pe)|0))<<13)|0;u=((a=a+Math.imul(T,ve)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(N,re),i=(i=Math.imul(N,ne))+Math.imul(B,re)|0,a=Math.imul(B,ne),n=n+Math.imul(R,ae)|0,i=(i=i+Math.imul(R,oe)|0)+Math.imul(z,ae)|0,a=a+Math.imul(z,oe)|0,n=n+Math.imul(O,le)|0,i=(i=i+Math.imul(O,ue)|0)+Math.imul(I,le)|0,a=a+Math.imul(I,ue)|0,n=n+Math.imul(C,fe)|0,i=(i=i+Math.imul(C,de)|0)+Math.imul(L,fe)|0,a=a+Math.imul(L,de)|0;var Le=(u+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,ve)|0)+Math.imul(S,pe)|0))<<13)|0;u=((a=a+Math.imul(S,ve)|0)+(i>>>13)|0)+(Le>>>26)|0,Le&=67108863,n=Math.imul(N,ae),i=(i=Math.imul(N,oe))+Math.imul(B,ae)|0,a=Math.imul(B,oe),n=n+Math.imul(R,le)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(z,le)|0,a=a+Math.imul(z,ue)|0,n=n+Math.imul(O,fe)|0,i=(i=i+Math.imul(O,de)|0)+Math.imul(I,fe)|0,a=a+Math.imul(I,de)|0;var Pe=(u+(n=n+Math.imul(C,pe)|0)|0)+((8191&(i=(i=i+Math.imul(C,ve)|0)+Math.imul(L,pe)|0))<<13)|0;u=((a=a+Math.imul(L,ve)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(N,le),i=(i=Math.imul(N,ue))+Math.imul(B,le)|0,a=Math.imul(B,ue),n=n+Math.imul(R,fe)|0,i=(i=i+Math.imul(R,de)|0)+Math.imul(z,fe)|0,a=a+Math.imul(z,de)|0;var Oe=(u+(n=n+Math.imul(O,pe)|0)|0)+((8191&(i=(i=i+Math.imul(O,ve)|0)+Math.imul(I,pe)|0))<<13)|0;u=((a=a+Math.imul(I,ve)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(N,fe),i=(i=Math.imul(N,de))+Math.imul(B,fe)|0,a=Math.imul(B,de);var Ie=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,ve)|0)+Math.imul(z,pe)|0))<<13)|0;u=((a=a+Math.imul(z,ve)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var De=(u+(n=Math.imul(N,pe))|0)+((8191&(i=(i=Math.imul(N,ve))+Math.imul(B,pe)|0))<<13)|0;return u=((a=Math.imul(B,ve))+(i>>>13)|0)+(De>>>26)|0,De&=67108863,l[0]=me,l[1]=ge,l[2]=ye,l[3]=xe,l[4]=be,l[5]=_e,l[6]=we,l[7]=ke,l[8]=Te,l[9]=Me,l[10]=Ae,l[11]=Se,l[12]=Ee,l[13]=Ce,l[14]=Le,l[15]=Pe,l[16]=Oe,l[17]=Ie,l[18]=De,0!==u&&(l[19]=u,r.length++),r};function v(e,t,r){return(new m).mulp(e,t,r)}function m(e,t){this.x=e,this.y=t}Math.imul||(p=h),a.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}r.words[a]=s,n=o,o=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,e,t):v(this,e,t),r},m.prototype.makeRBT=function(e){for(var t=new Array(e),r=a.prototype._countBits(e)-1,n=0;n>=1;return n},m.prototype.permute=function(e,t,r,n,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*t;o>=26,t+=i/67108864|0,t+=a>>>26,this.words[r]=67108863&a}return 0!==t&&(this.words[r]=t,this.length++),this},a.prototype.muln=function(e){return this.clone().imuln(e)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new a(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(t=0;t>>26-r}o&&(this.words[t]=o,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,u=0;u=0&&(0!==c||u>=i);u--){var f=0|this.words[u];this.words[u]=c<<26-a|f>>>a,c=f&s}return l&&0!==c&&(l.words[l.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},a.prototype.shln=function(e){return this.clone().ishln(e)},a.prototype.ushln=function(e){return this.clone().iushln(e)},a.prototype.shrn=function(e){return this.clone().ishrn(e)},a.prototype.ushrn=function(e){return this.clone().iushrn(e)},a.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},a.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(l/67108864|0),this.words[i+r]=67108863&a}for(;i>26,this.words[i+r]=67108863&a;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,l=n.length-i.length;if("mod"!==t){(s=new a(null)).length=l+1,s.words=new Array(s.length);for(var u=0;u=0;f--){var d=67108864*(0|n.words[i.length+f])+(0|n.words[i.length+f-1]);for(d=Math.min(d/o|0,67108863),n._ishlnsubmul(i,d,f);0!==n.negative;)d--,n.negative=0,n._ishlnsubmul(i,1,f),n.isZero()||(n.negative^=1);s&&(s.words[f]=d)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(e)),{div:i,mod:o}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(e)),{div:s.div,mod:o}):e.length>this.length||this.cmp(e)<0?{div:new a(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new a(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new a(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,o,s},a.prototype.div=function(e){return this.divmod(e,"div",!1).div},a.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},a.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},a.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},a.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},a.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},a.prototype.divn=function(e){return this.clone().idivn(e)},a.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new a(1),o=new a(0),s=new a(0),l=new a(1),u=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++u;for(var c=r.clone(),f=t.clone();!t.isZero();){for(var d=0,h=1;0===(t.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(c),o.isub(f)),i.iushrn(1),o.iushrn(1);for(var p=0,v=1;0===(r.words[0]&v)&&p<26;++p,v<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(c),l.isub(f)),s.iushrn(1),l.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),o.isub(l)):(r.isub(t),s.isub(i),l.isub(o))}return{a:s,b:l,gcd:r.iushln(u)}},a.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,o=new a(1),s=new a(0),l=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var u=0,c=1;0===(t.words[0]&c)&&u<26;++u,c<<=1);if(u>0)for(t.iushrn(u);u-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var f=0,d=1;0===(r.words[0]&d)&&f<26;++f,d<<=1);if(f>0)for(r.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),o.isub(s)):(r.isub(t),s.isub(o))}return(i=0===t.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(e),i},a.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var a=t;t=r,r=a}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},a.prototype.invm=function(e){return this.egcd(e).a.umod(e)},a.prototype.isEven=function(){return 0===(1&this.words[0])},a.prototype.isOdd=function(){return 1===(1&this.words[0])},a.prototype.andln=function(e){return this.words[0]&e},a.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/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(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},a.prototype.gtn=function(e){return 1===this.cmpn(e)},a.prototype.gt=function(e){return 1===this.cmp(e)},a.prototype.gten=function(e){return this.cmpn(e)>=0},a.prototype.gte=function(e){return this.cmp(e)>=0},a.prototype.ltn=function(e){return-1===this.cmpn(e)},a.prototype.lt=function(e){return-1===this.cmp(e)},a.prototype.lten=function(e){return this.cmpn(e)<=0},a.prototype.lte=function(e){return this.cmp(e)<=0},a.prototype.eqn=function(e){return 0===this.cmpn(e)},a.prototype.eq=function(e){return 0===this.cmp(e)},a.red=function(e){return new k(e)},a.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},a.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(e){return this.red=e,this},a.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},a.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},a.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},a.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},a.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},a.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},a.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},a.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},a.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var g={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new a(t,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function x(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"===typeof e){var t=a._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function T(e){k.call(this,e),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 e=new a(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(x,y),x.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,a=o}a>>>=22,e.words[i-10]=a,0===a&&e.length>10?e.length-=10:e.length-=9},x.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},a._prime=function(e){if(g[e])return g[e];var t;if("k256"===e)t=new x;else if("p224"===e)t=new b;else if("p192"===e)t=new _;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new w}return g[e]=t,t},k.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new a(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);n(!i.isZero());var s=new a(1).toRed(this),l=s.redNeg(),u=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,u).cmp(l);)c.redIAdd(l);for(var f=this.pow(c,i),d=this.pow(e,i.addn(1).iushrn(1)),h=this.pow(e,i),p=o;0!==h.cmp(s);){for(var v=h,m=0;0!==v.cmp(s);m++)v=v.redSqr();n(m=0;n--){for(var u=t.words[n],c=l-1;c>=0;c--){var f=u>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==f||0!==o?(o<<=1,o|=f,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}l=26}return i},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},a.mont=function(e){return new T(e)},i(T,k),T.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},T.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},T.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).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(e,t){if(e.isZero()||t.isZero())return new a(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).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(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},2692:function(e){"use strict";e.exports=function(e){var t,r,n,i=e.length,a=0;for(t=0;t>>1;if(!(c<=0)){var f,d=i.mallocDouble(2*c*s),h=i.mallocInt32(s);if((s=l(e,c,d,h))>0){if(1===c&&n)a.init(s),f=a.sweepComplete(c,r,0,s,d,h,0,s,d,h);else{var p=i.mallocDouble(2*c*u),v=i.mallocInt32(u);(u=l(t,c,p,v))>0&&(a.init(s+u),f=1===c?a.sweepBipartite(c,r,0,s,d,h,0,u,p,v):o(c,r,n,s,d,h,u,p,v),i.free(p),i.free(v))}i.free(d),i.free(h)}return f}}}function c(e,t){n.push([e,t])}},7333:function(e,t){"use strict";function r(e){return e?function(e,t,r,n,i,a,o,s,l,u,c){return i-n>l-s?function(e,t,r,n,i,a,o,s,l,u,c){for(var f=2*e,d=n,h=f*n;du-l?n?function(e,t,r,n,i,a,o,s,l,u,c){for(var f=2*e,d=n,h=f*n;d0;){var D=(O-=1)*b,R=w[D],z=w[D+1],F=w[D+2],N=w[D+3],B=w[D+4],j=w[D+5],U=O*_,V=k[U],H=k[U+1],q=1&j,W=!!(16&j),G=c,Y=S,Z=C,X=L;if(q&&(G=C,Y=L,Z=c,X=S),!(2&j&&z>=(F=m(e,R,z,F,G,Y,H)))&&!(4&j&&(z=g(e,R,z,F,G,Y,V))>=F)){var K=F-z,$=B-N;if(W){if(e*K*(K+$)=p0)&&!(p1>=hi)"),v=c("lo===p0"),m=c("lo>>1,d=2*e,h=f,p=s[d*f+t];u=x?(h=y,p=x):g>=_?(h=m,p=g):(h=b,p=_):x>=_?(h=y,p=x):_>=g?(h=m,p=g):(h=b,p=_);for(var w=d*(c-1),k=d*h,T=0;Tr&&i[f+t]>u;--c,f-=o){for(var d=f,h=f+o,p=0;pd;++d,l+=s)if(i[l+f]===o)if(c===d)c+=1,u+=s;else{for(var h=0;s>h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"lod;++d,l+=s)if(i[l+f]h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"lo<=p0":function(e,t,r,n,i,a,o){for(var s=2*e,l=s*r,u=l,c=r,f=e+t,d=r;n>d;++d,l+=s)if(i[l+f]<=o)if(c===d)c+=1,u+=s;else{for(var h=0;s>h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"hi<=p0":function(e,t,r,n,i,a,o){for(var s=2*e,l=s*r,u=l,c=r,f=e+t,d=r;n>d;++d,l+=s)if(i[l+f]<=o)if(c===d)c+=1,u+=s;else{for(var h=0;s>h;++h){var p=i[l+h];i[l+h]=i[u],i[u++]=p}var v=a[d];a[d]=a[c],a[c++]=v}return c},"loh;++h,l+=s){var p=i[l+f],v=i[l+d];if(pm;++m){var g=i[l+m];i[l+m]=i[u],i[u++]=g}var y=a[h];a[h]=a[c],a[c++]=y}}return c},"lo<=p0&&p0<=hi":function(e,t,r,n,i,a,o){for(var s=2*e,l=s*r,u=l,c=r,f=t,d=e+t,h=r;n>h;++h,l+=s){var p=i[l+f],v=i[l+d];if(p<=o&&o<=v)if(c===h)c+=1,u+=s;else{for(var m=0;s>m;++m){var g=i[l+m];i[l+m]=i[u],i[u++]=g}var y=a[h];a[h]=a[c],a[c++]=y}}return c},"!(lo>=p0)&&!(p1>=hi)":function(e,t,r,n,i,a,o,s){for(var l=2*e,u=l*r,c=u,f=r,d=t,h=e+t,p=r;n>p;++p,u+=l){var v=i[u+d],m=i[u+h];if(!(v>=o)&&!(s>=m))if(f===p)f+=1,c+=l;else{for(var g=0;l>g;++g){var y=i[u+g];i[u+g]=i[c],i[c++]=y}var x=a[p];a[p]=a[f],a[f++]=x}}return f}}},309:function(e){"use strict";e.exports=function(e,n){n<=4*t?r(0,n-1,e):u(0,n-1,e)};var t=32;function r(e,t,r){for(var n=2*(e+1),i=e+1;i<=t;++i){for(var a=r[n++],o=r[n++],s=i,l=n-2;s-- >e;){var u=r[l-2],c=r[l-1];if(ur[t+1])}function l(e,t,r,n){var i=n[e*=2];return i>1,m=v-d,g=v+d,y=h,x=m,b=v,_=g,w=p,k=e+1,T=c-1,M=0;s(y,x,f)&&(M=y,y=x,x=M),s(_,w,f)&&(M=_,_=w,w=M),s(y,b,f)&&(M=y,y=b,b=M),s(x,b,f)&&(M=x,x=b,b=M),s(y,_,f)&&(M=y,y=_,_=M),s(b,_,f)&&(M=b,b=_,_=M),s(x,w,f)&&(M=x,x=w,w=M),s(x,b,f)&&(M=x,x=b,b=M),s(_,w,f)&&(M=_,_=w,w=M);for(var A=f[2*x],S=f[2*x+1],E=f[2*_],C=f[2*_+1],L=2*y,P=2*b,O=2*w,I=2*h,D=2*v,R=2*p,z=0;z<2;++z){var F=f[L+z],N=f[P+z],B=f[O+z];f[I+z]=F,f[D+z]=N,f[R+z]=B}i(m,e,f),i(g,c,f);for(var j=k;j<=T;++j)if(l(j,A,S,f))j!==k&&n(j,k,f),++k;else if(!l(j,E,C,f))for(;;){if(l(T,E,C,f)){l(T,A,S,f)?(a(j,k,T,f),++k,--T):(n(j,T,f),--T);break}if(--T>>1;a(p,S);var E=0,C=0;for(k=0;k=o)v(c,f,C--,L=L-o|0);else if(L>=0)v(l,u,E--,L);else if(L<=-o){L=-L-o|0;for(var P=0;P>>1;a(p,E);var C=0,L=0,P=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?v(l,u,C--,D):1===I?v(c,f,L--,D):2===I&&v(d,h,P--,D)}},scanBipartite:function(e,t,r,n,i,s,c,f,d,h,g,y){var x=0,b=2*e,_=t,w=t+e,k=1,T=1;n?T=o:k=o;for(var M=i;M>>1;a(p,C);var L=0;for(M=0;M=o?(O=!n,A-=o):(O=!!n,A-=1),O)m(l,u,L++,A);else{var I=y[A],D=b*A,R=g[D+t+1],z=g[D+t+1+e];e:for(var F=0;F>>1;a(p,k);var T=0;for(x=0;x=o)l[T++]=b-o;else{var A=h[b-=1],S=m*b,E=d[S+t+1],C=d[S+t+1+e];e:for(var L=0;L=0;--L)if(l[L]===b){for(D=L+1;D0;){for(var h=r.pop(),p=(c=-1,f=-1,l=o[s=r.pop()],1);p=0||(t.flip(s,h),i(e,t,r,c,s,f),i(e,t,r,s,f,c),i(e,t,r,f,h,c),i(e,t,r,h,c,f))}}},7098:function(e,t,r){"use strict";var n=r(5070);function i(e,t,r,n,i,a,o){this.cells=e,this.neighbor=t,this.flags=n,this.constraint=r,this.active=i,this.next=a,this.boundary=o}function a(e,t){return e[0]-t[0]||e[1]-t[1]||e[2]-t[2]}e.exports=function(e,t,r){var n=function(e,t){for(var r=e.cells(),n=r.length,o=0;o0||l.length>0;){for(;s.length>0;){var h=s.pop();if(u[h]!==-o){u[h]=o,c[h];for(var p=0;p<3;++p){var v=d[3*h+p];v>=0&&0===u[v]&&(f[3*h+p]?l.push(v):(s.push(v),u[v]=o))}}}var m=l;l=s,s=m,l.length=0,o=-o}var g=function(e,t,r){for(var n=0,i=0;i1&&i(r[d[h-2]],r[d[h-1]],a)>0;)e.push([d[h-1],d[h-2],o]),h-=1;d.length=h,d.push(o);var p=f.upperIds;for(h=p.length;h>1&&i(r[p[h-2]],r[p[h-1]],a)<0;)e.push([p[h-2],p[h-1],o]),h-=1;p.length=h,p.push(o)}}function f(e,t){var r;return(r=e.a[0]v[0]&&i.push(new s(v,p,2,u),new s(p,v,1,u))}i.sort(l);for(var m=i[0].a[0]-(1+Math.abs(i[0].a[0]))*Math.pow(2,-52),g=[new o([m,1],[m,0],-1,[],[],[],[])],y=[],x=(u=0,i.length);u=0}}(),a.removeTriangle=function(e,t,r){var n=this.stars;o(n[e],t,r),o(n[t],r,e),o(n[r],e,t)},a.addTriangle=function(e,t,r){var n=this.stars;n[e].push(t,r),n[t].push(r,e),n[r].push(e,t)},a.opposite=function(e,t){for(var r=this.stars[t],n=1,i=r.length;nt[2]?1:0)}function g(e,t,r){if(0!==e.length){if(t)for(var n=0;n=0;--a){var x=t[c=(S=n[a])[0]],b=x[0],_=x[1],w=e[b],k=e[_];if((w[0]-k[0]||w[1]-k[1])<0){var T=b;b=_,_=T}x[0]=b;var M,A=x[1]=S[1];for(i&&(M=x[2]);a>0&&n[a-1][0]===c;){var S,E=(S=n[--a])[1];i?t.push([A,E,M]):t.push([A,E]),A=E}i?t.push([A,_,M]):t.push([A,_])}return d}(e,t,d,m,r),x=p(e,y);return g(t,x,r),!!x||d.length>0||m.length>0}},5528:function(e,t,r){"use strict";e.exports=function(e,t,r,n){var a=s(t,e),f=s(n,r),d=c(a,f);if(0===o(d))return null;var h=s(e,r),p=c(f,h),v=i(p,d),m=u(a,v);return l(e,m)};var n=r(3962),i=r(9189),a=r(4354),o=r(4951),s=r(6695),l=r(7584),u=r(4469);function c(e,t){return a(n(e[0],t[1]),n(e[1],t[0]))}},5692:function(e){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],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(e,t,r){"use strict";var n=r(5692),i=r(3578);function a(e){return[e[0]/255,e[1]/255,e[2]/255,e[3]]}function o(e){for(var t,r="#",n=0;n<3;++n)r+=("00"+(t=(t=e[n]).toString(16))).substr(t.length);return r}function s(e){return"rgba("+e.join(",")+")"}e.exports=function(e){var t,r,l,u,c,f,d,h,p,v;if(e||(e={}),h=(e.nshades||72)-1,d=e.format||"hex",(f=e.colormap)||(f="jet"),"string"===typeof f){if(f=f.toLowerCase(),!n[f])throw Error(f+" not a supported colorscale");c=n[f]}else{if(!Array.isArray(f))throw Error("unsupported colormap option",f);c=f.slice()}if(c.length>h+1)throw new Error(f+" map requires nshades to be at least size "+c.length);p=Array.isArray(e.alpha)?2!==e.alpha.length?[1,1]:e.alpha.slice():"number"===typeof e.alpha?[e.alpha,e.alpha]:[1,1],t=c.map((function(e){return Math.round(e.index*h)})),p[0]=Math.min(Math.max(p[0],0),1),p[1]=Math.min(Math.max(p[1],0),1);var m=c.map((function(e,t){var r=c[t].index,n=c[t].rgb.slice();return 4===n.length&&n[3]>=0&&n[3]<=1||(n[3]=p[0]+(p[1]-p[0])*r),n})),g=[];for(v=0;v0||l(e,t,a)?-1:1:0===s?u>0||l(e,t,r)?1:-1:i(u-s)}var f=n(e,t,r);return f>0?o>0&&n(e,t,a)>0?1:-1:f<0?o>0||n(e,t,a)>0?1:-1:n(e,t,a)>0||l(e,t,r)?1:-1};var n=r(417),i=r(7538),a=r(87),o=r(2019),s=r(9662);function l(e,t,r){var n=a(e[0],-t[0]),i=a(e[1],-t[1]),l=a(r[0],-t[0]),u=a(r[1],-t[1]),c=s(o(n,l),o(i,u));return c[c.length-1]>=0}},7538:function(e){"use strict";e.exports=function(e){return e<0?-1:e>0?1:0}},9209:function(e){e.exports=function(e,n){var i=e.length,a=e.length-n.length;if(a)return a;switch(i){case 0:return 0;case 1:return e[0]-n[0];case 2:return e[0]+e[1]-n[0]-n[1]||t(e[0],e[1])-t(n[0],n[1]);case 3:var o=e[0]+e[1],s=n[0]+n[1];if(a=o+e[2]-(s+n[2]))return a;var l=t(e[0],e[1]),u=t(n[0],n[1]);return t(l,e[2])-t(u,n[2])||t(l+e[2],o)-t(u+n[2],s);case 4:var c=e[0],f=e[1],d=e[2],h=e[3],p=n[0],v=n[1],m=n[2],g=n[3];return c+f+d+h-(p+v+m+g)||t(c,f,d,h)-t(p,v,m,g,p)||t(c+f,c+d,c+h,f+d,f+h,d+h)-t(p+v,p+m,p+g,v+m,v+g,m+g)||t(c+f+d,c+f+h,c+d+h,f+d+h)-t(p+v+m,p+v+g,p+m+g,v+m+g);default:for(var y=e.slice().sort(r),x=n.slice().sort(r),b=0;be[r][0]&&(r=n);return tr?[[r],[t]]:[[t]]}},8722:function(e,t,r){"use strict";e.exports=function(e){var t=n(e),r=t.length;if(r<=2)return[];for(var i=new Array(r),a=t[r-1],o=0;o=t[l]&&(s+=1);a[o]=s}}return e}(n(a,!0),r)}};var n=r(2183),i=r(2153)},9680:function(e){"use strict";e.exports=function(e,t,r,n,i,a){var o=i-1,s=i*i,l=o*o,u=(1+2*i)*l,c=i*l,f=s*(3-2*i),d=s*o;if(e.length){a||(a=new Array(e.length));for(var h=e.length-1;h>=0;--h)a[h]=u*e[h]+c*t[h]+f*r[h]+d*n[h];return a}return u*e+c*t+f*r+d*n},e.exports.derivative=function(e,t,r,n,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,u=3*i*i-2*i;if(e.length){a||(a=new Array(e.length));for(var c=e.length-1;c>=0;--c)a[c]=o*e[c]+s*t[c]+l*r[c]+u*n[c];return a}return o*e+s*t+l*r[c]+u*n}},4419:function(e,t,r){"use strict";var n=r(2183),i=r(1215);function a(e,t){this.point=e,this.index=t}function o(e,t){for(var r=e.point,n=t.point,i=r.length,a=0;a=2)return!1;e[r]=n}return!0})):_.filter((function(e){for(var t=0;t<=s;++t){var r=g[e[t]];if(r<0)return!1;e[t]=r}return!0})),1&s)for(c=0;c<_.length;++c)d=(b=_[c])[0],b[0]=b[1],b[1]=d;return _}},8362:function(e){var t=!1;if("undefined"!==typeof Float64Array){var r=new Float64Array(1),n=new Uint32Array(r.buffer);r[0]=1,t=!0,1072693248===n[1]?(e.exports=function(e){return r[0]=e,[n[0],n[1]]},e.exports.pack=function(e,t){return n[0]=e,n[1]=t,r[0]},e.exports.lo=function(e){return r[0]=e,n[0]},e.exports.hi=function(e){return r[0]=e,n[1]}):1072693248===n[0]?(e.exports=function(e){return r[0]=e,[n[1],n[0]]},e.exports.pack=function(e,t){return n[1]=e,n[0]=t,r[0]},e.exports.lo=function(e){return r[0]=e,n[1]},e.exports.hi=function(e){return r[0]=e,n[0]}):t=!1}if(!t){var i=new Buffer(8);e.exports=function(e){return i.writeDoubleLE(e,0,!0),[i.readUInt32LE(0,!0),i.readUInt32LE(4,!0)]},e.exports.pack=function(e,t){return i.writeUInt32LE(e,0,!0),i.writeUInt32LE(t,4,!0),i.readDoubleLE(0,!0)},e.exports.lo=function(e){return i.writeDoubleLE(e,0,!0),i.readUInt32LE(0,!0)},e.exports.hi=function(e){return i.writeDoubleLE(e,0,!0),i.readUInt32LE(4,!0)}}e.exports.sign=function(t){return e.exports.hi(t)>>>31},e.exports.exponent=function(t){return(e.exports.hi(t)<<1>>>21)-1023},e.exports.fraction=function(t){var r=e.exports.lo(t),n=e.exports.hi(t),i=1048575&n;return 2146435072&n&&(i+=1<<20),[r,i]},e.exports.denormalized=function(t){return!(2146435072&e.exports.hi(t))}},3094:function(e){"use strict";function t(e,r,n){var i=0|e[n];if(i<=0)return[];var a,o=new Array(i);if(n===e.length-1)for(a=0;a0)return function(e,t){var r,n;for(r=new Array(e),n=0;n=r-1){d=l.length-1;var p=e-t[r-1];for(h=0;h=r-1)for(var c=s.length-1,f=(t[r-1],0);f=0;--r)if(e[--t])return!1;return!0},s.jump=function(e){var t=this.lastT(),r=this.dimension;if(!(e0;--f)n.push(a(l[f-1],u[f-1],arguments[f])),i.push(0)}},s.push=function(e){var t=this.lastT(),r=this.dimension;if(!(e1e-6?1/s:0;this._time.push(e);for(var d=r;d>0;--d){var h=a(u[d-1],c[d-1],arguments[d]);n.push(h),i.push((h-n[o++])*f)}}},s.set=function(e){var t=this.dimension;if(!(e0;--l)r.push(a(o[l-1],s[l-1],arguments[l])),n.push(0)}},s.move=function(e){var t=this.lastT(),r=this.dimension;if(!(e<=t||arguments.length!==r+1)){var n=this._state,i=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],u=s[1],c=e-t,f=c>1e-6?1/c:0;this._time.push(e);for(var d=r;d>0;--d){var h=arguments[d];n.push(a(l[d-1],u[d-1],n[o++]+h)),i.push(h*f)}}},s.idle=function(e){var t=this.lastT();if(!(e=0;--f)n.push(a(l[f],u[f],n[o]+c*i[o])),i.push(0),o+=1}}},7080:function(e){"use strict";function t(e,t,r,n,i,a){this._color=e,this.key=t,this.value=r,this.left=n,this.right=i,this._count=a}function r(e){return new t(e._color,e.key,e.value,e.left,e.right,e._count)}function n(e,r){return new t(e,r.key,r.value,r.left,r.right,r._count)}function i(e){e._count=1+(e.left?e.left._count:0)+(e.right?e.right._count:0)}function a(e,t){this._compare=e,this.root=t}e.exports=function(e){return new a(e||h,null)};var o=a.prototype;function s(e,t){var r;return t.left&&(r=s(e,t.left))?r:(r=e(t.key,t.value))||(t.right?s(e,t.right):void 0)}function l(e,t,r,n){if(t(e,n.key)<=0){var i;if(n.left&&(i=l(e,t,r,n.left)))return i;if(i=r(n.key,n.value))return i}if(n.right)return l(e,t,r,n.right)}function u(e,t,r,n,i){var a,o=r(e,i.key),s=r(t,i.key);if(o<=0){if(i.left&&(a=u(e,t,r,n,i.left)))return a;if(s>0&&(a=n(i.key,i.value)))return a}if(s>0&&i.right)return u(e,t,r,n,i.right)}function c(e,t){this.tree=e,this._stack=t}Object.defineProperty(o,"keys",{get:function(){var e=[];return this.forEach((function(t,r){e.push(t)})),e}}),Object.defineProperty(o,"values",{get:function(){var e=[];return this.forEach((function(t,r){e.push(r)})),e}}),Object.defineProperty(o,"length",{get:function(){return this.root?this.root._count:0}}),o.insert=function(e,r){for(var o=this._compare,s=this.root,l=[],u=[];s;){var c=o(e,s.key);l.push(s),u.push(c),s=c<=0?s.left:s.right}l.push(new t(0,e,r,null,null,1));for(var f=l.length-2;f>=0;--f)s=l[f],u[f]<=0?l[f]=new t(s._color,s.key,s.value,l[f+1],s.right,s._count+1):l[f]=new t(s._color,s.key,s.value,s.left,l[f+1],s._count+1);for(f=l.length-1;f>1;--f){var d=l[f-1];if(s=l[f],1===d._color||1===s._color)break;var h=l[f-2];if(h.left===d)if(d.left===s){if(!(p=h.right)||0!==p._color){h._color=0,h.left=d.right,d._color=1,d.right=h,l[f-2]=d,l[f-1]=s,i(h),i(d),f>=3&&((v=l[f-3]).left===h?v.left=d:v.right=d);break}d._color=1,h.right=n(1,p),h._color=0,f-=1}else{if(!(p=h.right)||0!==p._color){d.right=s.left,h._color=0,h.left=s.right,s._color=1,s.left=d,s.right=h,l[f-2]=s,l[f-1]=d,i(h),i(d),i(s),f>=3&&((v=l[f-3]).left===h?v.left=s:v.right=s);break}d._color=1,h.right=n(1,p),h._color=0,f-=1}else if(d.right===s){if(!(p=h.left)||0!==p._color){h._color=0,h.right=d.left,d._color=1,d.left=h,l[f-2]=d,l[f-1]=s,i(h),i(d),f>=3&&((v=l[f-3]).right===h?v.right=d:v.left=d);break}d._color=1,h.left=n(1,p),h._color=0,f-=1}else{var p;if(!(p=h.left)||0!==p._color){var v;d.left=s.right,h._color=0,h.right=s.left,s._color=1,s.right=d,s.left=h,l[f-2]=s,l[f-1]=d,i(h),i(d),i(s),f>=3&&((v=l[f-3]).right===h?v.right=s:v.left=s);break}d._color=1,h.left=n(1,p),h._color=0,f-=1}}return l[0]._color=1,new a(o,l[0])},o.forEach=function(e,t,r){if(this.root)switch(arguments.length){case 1:return s(e,this.root);case 2:return l(t,this._compare,e,this.root);case 3:if(this._compare(t,r)>=0)return;return u(t,r,this._compare,e,this.root)}},Object.defineProperty(o,"begin",{get:function(){for(var e=[],t=this.root;t;)e.push(t),t=t.left;return new c(this,e)}}),Object.defineProperty(o,"end",{get:function(){for(var e=[],t=this.root;t;)e.push(t),t=t.right;return new c(this,e)}}),o.at=function(e){if(e<0)return new c(this,[]);for(var t=this.root,r=[];;){if(r.push(t),t.left){if(e=t.right._count)break;t=t.right}return new c(this,[])},o.ge=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a<=0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new c(this,n)},o.gt=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a<0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new c(this,n)},o.lt=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a>0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new c(this,n)},o.le=function(e){for(var t=this._compare,r=this.root,n=[],i=0;r;){var a=t(e,r.key);n.push(r),a>=0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new c(this,n)},o.find=function(e){for(var t=this._compare,r=this.root,n=[];r;){var i=t(e,r.key);if(n.push(r),0===i)return new c(this,n);r=i<=0?r.left:r.right}return new c(this,[])},o.remove=function(e){var t=this.find(e);return t?t.remove():this},o.get=function(e){for(var t=this._compare,r=this.root;r;){var n=t(e,r.key);if(0===n)return r.value;r=n<=0?r.left:r.right}};var f=c.prototype;function d(e,t){e.key=t.key,e.value=t.value,e.left=t.left,e.right=t.right,e._color=t._color,e._count=t._count}function h(e,t){return et?1:0}Object.defineProperty(f,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(f,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),f.clone=function(){return new c(this.tree,this._stack.slice())},f.remove=function(){var e=this._stack;if(0===e.length)return this.tree;var o=new Array(e.length),s=e[e.length-1];o[o.length-1]=new t(s._color,s.key,s.value,s.left,s.right,s._count);for(var l=e.length-2;l>=0;--l)(s=e[l]).left===e[l+1]?o[l]=new t(s._color,s.key,s.value,o[l+1],s.right,s._count):o[l]=new t(s._color,s.key,s.value,s.left,o[l+1],s._count);if((s=o[o.length-1]).left&&s.right){var u=o.length;for(s=s.left;s.right;)o.push(s),s=s.right;var c=o[u-1];for(o.push(new t(s._color,c.key,c.value,s.left,s.right,s._count)),o[u-1].key=s.key,o[u-1].value=s.value,l=o.length-2;l>=u;--l)s=o[l],o[l]=new t(s._color,s.key,s.value,s.left,o[l+1],s._count);o[u-1].left=o[u]}if(0===(s=o[o.length-1])._color){var f=o[o.length-2];for(f.left===s?f.left=null:f.right===s&&(f.right=null),o.pop(),l=0;l=0;--l){if(t=e[l],0===l)return void(t._color=1);if((a=e[l-1]).left===t){if((o=a.right).right&&0===o.right._color)return s=(o=a.right=r(o)).right=r(o.right),a.right=o.left,o.left=a,o.right=s,o._color=a._color,t._color=1,a._color=1,s._color=1,i(a),i(o),l>1&&((u=e[l-2]).left===a?u.left=o:u.right=o),void(e[l-1]=o);if(o.left&&0===o.left._color)return s=(o=a.right=r(o)).left=r(o.left),a.right=s.left,o.left=s.right,s.left=a,s.right=o,s._color=a._color,a._color=1,o._color=1,t._color=1,i(a),i(o),i(s),l>1&&((u=e[l-2]).left===a?u.left=s:u.right=s),void(e[l-1]=s);if(1===o._color){if(0===a._color)return a._color=1,void(a.right=n(0,o));a.right=n(0,o);continue}o=r(o),a.right=o.left,o.left=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((u=e[l-2]).left===a?u.left=o:u.right=o),e[l-1]=o,e[l]=a,l+11&&((u=e[l-2]).right===a?u.right=o:u.left=o),void(e[l-1]=o);if(o.right&&0===o.right._color)return s=(o=a.left=r(o)).right=r(o.right),a.left=s.right,o.right=s.left,s.right=a,s.left=o,s._color=a._color,a._color=1,o._color=1,t._color=1,i(a),i(o),i(s),l>1&&((u=e[l-2]).right===a?u.right=s:u.left=s),void(e[l-1]=s);if(1===o._color){if(0===a._color)return a._color=1,void(a.left=n(0,o));a.left=n(0,o);continue}var u;o=r(o),a.left=o.right,o.right=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((u=e[l-2]).right===a?u.right=o:u.left=o),e[l-1]=o,e[l]=a,l+10)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(f,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(f,"index",{get:function(){var e=0,t=this._stack;if(0===t.length){var r=this.tree.root;return r?r._count:0}t[t.length-1].left&&(e=t[t.length-1].left._count);for(var n=t.length-2;n>=0;--n)t[n+1]===t[n].right&&(++e,t[n].left&&(e+=t[n].left._count));return e},enumerable:!0}),f.next=function(){var e=this._stack;if(0!==e.length){var t=e[e.length-1];if(t.right)for(t=t.right;t;)e.push(t),t=t.left;else for(e.pop();e.length>0&&e[e.length-1].right===t;)t=e[e.length-1],e.pop()}},Object.defineProperty(f,"hasNext",{get:function(){var e=this._stack;if(0===e.length)return!1;if(e[e.length-1].right)return!0;for(var t=e.length-1;t>0;--t)if(e[t-1].left===e[t])return!0;return!1}}),f.update=function(e){var r=this._stack;if(0===r.length)throw new Error("Can't update empty node!");var n=new Array(r.length),i=r[r.length-1];n[n.length-1]=new t(i._color,i.key,e,i.left,i.right,i._count);for(var o=r.length-2;o>=0;--o)(i=r[o]).left===r[o+1]?n[o]=new t(i._color,i.key,i.value,n[o+1],i.right,i._count):n[o]=new t(i._color,i.key,i.value,i.left,n[o+1],i._count);return new a(this.tree._compare,n[0])},f.prev=function(){var e=this._stack;if(0!==e.length){var t=e[e.length-1];if(t.left)for(t=t.left;t;)e.push(t),t=t.right;else for(e.pop();e.length>0&&e[e.length-1].left===t;)t=e[e.length-1],e.pop()}},Object.defineProperty(f,"hasPrev",{get:function(){var e=this._stack;if(0===e.length)return!1;if(e[e.length-1].left)return!0;for(var t=e.length-1;t>0;--t)if(e[t-1].right===e[t])return!0;return!1}})},7453:function(e,t,r){"use strict";e.exports=function(e,t){var r=new c(e);return r.update(t),r};var n=r(9557),i=r(1681),a=r(1011),o=r(2864),s=r(8468),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function u(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function c(e){this.gl=e,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(e)}var f=c.prototype;function d(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}f.update=function(e){function t(t,r,n){if(n in e){var i,a=e[n],o=this[n];(t?Array.isArray(a)&&Array.isArray(a[0]):Array.isArray(a))?this[n]=i=[r(a[0]),r(a[1]),r(a[2])]:this[n]=i=[r(a),r(a),r(a)];for(var s=0;s<3;++s)if(i[s]!==o[s])return!0}return!1}e=e||{};var r,a=t.bind(this,!1,Number),o=t.bind(this,!1,Boolean),l=t.bind(this,!1,String),u=t.bind(this,!0,(function(e){if(Array.isArray(e)){if(3===e.length)return[+e[0],+e[1],+e[2],1];if(4===e.length)return[+e[0],+e[1],+e[2],+e[3]]}return[0,0,0,1]})),c=!1,f=!1;if("bounds"in e)for(var d=e.bounds,h=0;h<2;++h)for(var p=0;p<3;++p)d[h][p]!==this.bounds[h][p]&&(f=!0),this.bounds[h][p]=d[h][p];if("ticks"in e)for(r=e.ticks,c=!0,this.autoTicks=!1,h=0;h<3;++h)this.tickSpacing[h]=0;else a("tickSpacing")&&(this.autoTicks=!0,f=!0);if(this._firstInit&&("ticks"in e||"tickSpacing"in e||(this.autoTicks=!0),f=!0,c=!0,this._firstInit=!1),f&&this.autoTicks&&(r=s.create(this.bounds,this.tickSpacing),c=!0),c){for(h=0;h<3;++h)r[h].sort((function(e,t){return e.x-t.x}));s.equal(r,this.ticks)?c=!1:this.ticks=r}o("tickEnable"),l("tickFont")&&(c=!0),a("tickSize"),a("tickAngle"),a("tickPad"),u("tickColor");var v=l("labels");l("labelFont")&&(v=!0),o("labelEnable"),a("labelSize"),a("labelPad"),u("labelColor"),o("lineEnable"),o("lineMirror"),a("lineWidth"),u("lineColor"),o("lineTickEnable"),o("lineTickMirror"),a("lineTickLength"),a("lineTickWidth"),u("lineTickColor"),o("gridEnable"),a("gridWidth"),u("gridColor"),o("zeroEnable"),u("zeroLineColor"),a("zeroLineWidth"),o("backgroundEnable"),u("backgroundColor"),this._text?this._text&&(v||c)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=n(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&c&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};var h=[new d,new d,new d];function p(e,t,r,n,i){for(var a=e.primalOffset,o=e.primalMinor,s=e.mirrorOffset,l=e.mirrorMinor,u=n[t],c=0;c<3;++c)if(t!==c){var f=a,d=s,h=o,p=l;u&1<0?(h[c]=-1,p[c]=0):(h[c]=0,p[c]=1)}}var v=[0,0,0],m={model:l,view:l,projection:l,_ortho:!1};f.isOpaque=function(){return!0},f.isTransparent=function(){return!1},f.drawTransparent=function(e){};var g=[0,0,0],y=[0,0,0],x=[0,0,0];f.draw=function(e){e=e||m;for(var t=this.gl,r=e.model||l,n=e.view||l,i=e.projection||l,a=this.bounds,s=e._ortho||!1,c=o(r,n,i,a,s),f=c.cubeEdges,d=c.axis,b=n[12],_=n[13],w=n[14],k=n[15],T=(s?2:1)*this.pixelRatio*(i[3]*b+i[7]*_+i[11]*w+i[15]*k)/t.drawingBufferHeight,M=0;M<3;++M)this.lastCubeProps.cubeEdges[M]=f[M],this.lastCubeProps.axis[M]=d[M];var A=h;for(M=0;M<3;++M)p(h[M],M,this.bounds,f,d);t=this.gl;var S,E,C,L=v;for(M=0;M<3;++M)this.backgroundEnable[M]?L[M]=d[M]:L[M]=0;for(this._background.draw(r,n,i,a,L,this.backgroundColor),this._lines.bind(r,n,i,this),M=0;M<3;++M){var P=[0,0,0];d[M]>0?P[M]=a[1][M]:P[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,P,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,P,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=u(g,A[M].primalMinor),z=u(y,A[M].mirrorMinor),F=this.lineTickLength;for(O=0;O<3;++O){var N=T/r[5*O];R[O]*=F[O]*N,z[O]*=F[O]*N}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 B(e){(C=[0,0,0])[e]=1}function j(e,t,r){var n=(e+1)%3,i=(e+2)%3,a=t[n],o=t[i],s=r[n],l=r[i];a>0&&l>0||a>0&&l<0||a<0&&l>0||a<0&&l<0?B(n):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&B(i)}for(this._lines.unbind(),this._text.bind(r,n,i,this.pixelRatio),M=0;M<3;++M){var U=A[M].primalMinor,V=A[M].mirrorMinor,H=u(x,A[M].primalOffset);for(O=0;O<3;++O)this.lineTickEnable[M]&&(H[O]+=T*U[O]*Math.max(this.lineTickLength[O],0)/r[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],j(M,U,V),O=0;O<3;++O)H[O]+=T*U[O]*this.tickPad[O]/r[5*O];this._text.drawTicks(M,this.tickSize[M],this.tickAngle[M],H,this.tickColor[M],q,C,S)}if(this.labelEnable[M]){for(E=0,C=[0,0,0],this.labels[M].length>4&&(B(M),E=1),"auto"===(S=[this.labelAlign[M],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),O=0;O<3;++O)H[O]+=T*U[O]*this.labelPad[O]/r[5*O];H[M]+=.5*(a[0][M]+a[1][M]),this._text.drawLabel(M,this.labelSize[M],this.labelAngle[M],H,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(e,t,r){"use strict";e.exports=function(e){for(var t=[],r=[],s=0,l=0;l<3;++l)for(var u=(l+1)%3,c=(l+2)%3,f=[0,0,0],d=[0,0,0],h=-1;h<=1;h+=2){r.push(s,s+2,s+1,s+1,s+2,s+3),f[l]=h,d[l]=h;for(var p=-1;p<=1;p+=2){f[u]=p;for(var v=-1;v<=1;v+=2)f[c]=v,t.push(f[0],f[1],f[2],d[0],d[1],d[2]),s+=1}var m=u;u=c,c=m}var g=n(e,new Float32Array(t)),y=n(e,new Uint16Array(r),e.ELEMENT_ARRAY_BUFFER),x=i(e,[{buffer:g,type:e.FLOAT,size:3,offset:0,stride:24},{buffer:g,type:e.FLOAT,size:3,offset:12,stride:24}],y),b=a(e);return b.attributes.position.location=0,b.attributes.normal.location=1,new o(e,g,x,b)};var n=r(5827),i=r(2944),a=r(1943).bg;function o(e,t,r,n){this.gl=e,this.buffer=t,this.vao=r,this.shader=n}var s=o.prototype;s.draw=function(e,t,r,n,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:e,view:t,projection:r,bounds:n,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(e,t,r){"use strict";e.exports=function(e,t,r,a,h){i(s,t,e),i(s,r,s);for(var y=0,x=0;x<2;++x){c[2]=a[x][2];for(var b=0;b<2;++b){c[1]=a[b][1];for(var _=0;_<2;++_)c[0]=a[_][0],d(l[y],c,s),y+=1}}var w=-1;for(x=0;x<8;++x){for(var k=l[x][3],T=0;T<3;++T)u[x][T]=l[x][T]/k;h&&(u[x][2]*=-1),k<0&&(w<0||u[x][2]E&&(w|=1<E&&(w|=1<u[x][1])&&(z=x);var F=-1;for(x=0;x<3;++x)(B=z^1<u[N][0]&&(N=B))}var j=v;j[0]=j[1]=j[2]=0,j[n.log2(F^z)]=z&F,j[n.log2(z^N)]=z&N;var U=7^N;U===w||U===R?(U=7^F,j[n.log2(N^U)]=U&N):j[n.log2(F^U)]=U&F;var V=m,H=w;for(M=0;M<3;++M)V[M]=H&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=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}"]);t.f=function(e){return i(e,s,l,null,[{name:"position",type:"vec3"}])};var u=n(["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}"]),c=n(["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}"]);t.bg=function(e){return i(e,u,c,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},9557:function(e,t,r){"use strict";e.exports=function(e,t,r,i,o,l){var u=n(e),f=a(e,[{buffer:u,size:3}]),d=s(e);d.attributes.position.location=0;var h=new c(e,d,u,f);return h.update(t,r,i,o,l),h};var n=r(5827),a=r(2944),o=r(875),s=r(1943).f,l=window||i.global||{},u=l.__TEXT_CACHE||{};function c(e,t,r,n){this.gl=e,this.shader=t,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}l.__TEXT_CACHE={};var f=c.prototype,d=[0,0];f.bind=function(e,t,r,n){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=e,i.view=t,i.projection=r,i.pixelScale=n,d[0]=this.gl.drawingBufferWidth,d[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=d},f.unbind=function(){this.vao.unbind()},f.update=function(e,t,r,n,i){var a=[];function s(e,t,r,n,i,s){var l=u[r];l||(l=u[r]={});var c=l[t];c||(c=l[t]=function(e,t){try{return o(e,t)}catch(r){return console.warn('error vectorizing text:"'+e+'" error:',r),{cells:[],positions:[]}}}(t,{triangles:!0,font:r,textAlign:"center",textBaseline:"middle",lineSpacing:i,styletags:s}));for(var f=(n||12)/12,d=c.positions,h=c.cells,p=0,v=h.length;p=0;--g){var y=d[m[g]];a.push(f*y[0],-f*y[1],e)}}for(var l=[0,0,0],c=[0,0,0],f=[0,0,0],d=[0,0,0],h={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},p=0;p<3;++p){f[p]=a.length/3|0,s(.5*(e[0][p]+e[1][p]),t[p],r[p],12,1.25,h),d[p]=(a.length/3|0)-f[p],l[p]=a.length/3|0;for(var v=0;v=0&&(i=r.length-n-1);var a=Math.pow(10,i),o=Math.round(e*t*a),s=o+"";if(s.indexOf("e")>=0)return s;var l=o/a,u=o%a;o<0?(l=0|-Math.ceil(l),u=0|-u):(l=0|Math.floor(l),u|=0);var c=""+l;if(o<0&&(c="-"+c),i){for(var f=""+u;f.length=e[0][i];--o)a.push({x:o*t[i],text:r(t[i],o)});n.push(a)}return n},t.equal=function(e,t){for(var r=0;r<3;++r){if(e[r].length!==t[r].length)return!1;for(var n=0;nr)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return e.bufferSubData(t,a,i),r}function c(e,t){for(var r=n.malloc(e.length,t),i=e.length,a=0;a=0;--n){if(t[n]!==r)return!1;r*=e[n]}return!0}(e.shape,e.stride))0===e.offset&&e.data.length===e.shape[0]?this.length=u(this.gl,this.type,this.length,this.usage,e.data,t):this.length=u(this.gl,this.type,this.length,this.usage,e.data.subarray(e.offset,e.shape[0]),t);else{var s=n.malloc(e.size,r),l=a(s,e.shape);i.assign(l,e),this.length=u(this.gl,this.type,this.length,this.usage,t<0?s:s.subarray(0,e.size),t),n.free(s)}}else if(Array.isArray(e)){var f;f=this.type===this.gl.ELEMENT_ARRAY_BUFFER?c(e,"uint16"):c(e,"float32"),this.length=u(this.gl,this.type,this.length,this.usage,t<0?f:f.subarray(0,e.length),t),n.free(f)}else if("object"===typeof e&&"number"===typeof e.length)this.length=u(this.gl,this.type,this.length,this.usage,e,t);else{if("number"!==typeof e&&void 0!==e)throw new Error("gl-buffer: Invalid data type");if(t>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");(e|=0)<=0&&(e=1),this.gl.bufferData(this.type,0|e,this.usage),this.length=e}},e.exports=function(e,t,r,n){if(r=r||e.ARRAY_BUFFER,n=n||e.DYNAMIC_DRAW,r!==e.ARRAY_BUFFER&&r!==e.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(n!==e.DYNAMIC_DRAW&&n!==e.STATIC_DRAW&&n!==e.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=e.createBuffer(),a=new s(e,r,i,0,n);return a.update(t),a}},1140:function(e,t,r){"use strict";var n=r(2858);e.exports=function(e,t){var r=e.positions,i=e.vectors,a={positions:[],vertexIntensity:[],vertexIntensityBounds:e.vertexIntensityBounds,vectors:[],cells:[],coneOffset:e.coneOffset,colormap:e.colormap};if(0===e.positions.length)return t&&(t[0]=[0,0,0],t[1]=[0,0,0]),a;for(var o=0,s=1/0,l=-1/0,u=1/0,c=-1/0,f=1/0,d=-1/0,h=null,p=null,v=[],m=1/0,g=!1,y=0;yo&&(o=n.length(b)),y){var _=2*n.distance(h,x)/(n.length(p)+n.length(b));_?(m=Math.min(m,_),g=!1):g=!0}g||(h=x,p=b),v.push(b)}var w=[s,u,f],k=[l,c,d];t&&(t[0]=w,t[1]=k),0===o&&(o=1);var T=1/o;isFinite(m)||(m=1),a.vectorScale=m;var M=e.coneSize||.5;e.absoluteConeSize&&(M=e.absoluteConeSize*T),a.coneScale=M,y=0;for(var A=0;y=1},h.isTransparent=function(){return this.opacity<1},h.pickSlots=1,h.setPickBase=function(e){this.pickId=e},h.update=function(e){e=e||{};var t=this.gl;this.dirty=!0,"lightPosition"in e&&(this.lightPosition=e.lightPosition),"opacity"in e&&(this.opacity=e.opacity),"ambient"in e&&(this.ambientLight=e.ambient),"diffuse"in e&&(this.diffuseLight=e.diffuse),"specular"in e&&(this.specularLight=e.specular),"roughness"in e&&(this.roughness=e.roughness),"fresnel"in e&&(this.fresnel=e.fresnel),void 0!==e.tubeScale&&(this.tubeScale=e.tubeScale),void 0!==e.vectorScale&&(this.vectorScale=e.vectorScale),void 0!==e.coneScale&&(this.coneScale=e.coneScale),void 0!==e.coneOffset&&(this.coneOffset=e.coneOffset),e.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=t.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=t.LINEAR,this.texture.setPixels(function(e){for(var t=c({colormap:e,nshades:256,format:"rgba"}),r=new Uint8Array(1024),n=0;n<256;++n){for(var i=t[n],a=0;a<3;++a)r[4*n+a]=i[a];r[4*n+3]=255*i[3]}return u(r,[256,256,4],[4,0,1])}(e.colormap)),this.texture.generateMipmap());var r=e.cells,n=e.positions,i=e.vectors;if(n&&r&&i){var a=[],o=[],s=[],l=[],f=[];this.cells=r,this.positions=n,this.vectors=i;var d=e.meshColor||[1,1,1,1],h=e.vertexIntensity,p=1/0,v=-1/0;if(h)if(e.vertexIntensityBounds)p=+e.vertexIntensityBounds[0],v=+e.vertexIntensityBounds[1];else for(var m=0;m0){var v=this.triShader;v.bind(),v.uniforms=u,this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},h.drawPick=function(e){e=e||{};for(var t=this.gl,r=e.model||f,n=e.view||f,i=e.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(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[t.drawingBufferWidth,t.drawingBufferHeight];var s={model:r,view:n,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(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},h.pick=function(e){if(!e)return null;if(e.id!==this.pickId)return null;var t=e.value[0]+256*e.value[1]+65536*e.value[2],r=this.cells[t],n=this.positions[r[1]].slice(0,3),i={position:n,dataCoordinate:n,index:Math.floor(r[1]/48)};return"cone"===this.traceType?i.index=Math.floor(r[1]/48):"streamtube"===this.traceType&&(i.intensity=this.intensity[r[1]],i.velocity=this.vectors[r[1]].slice(0,3),i.divergence=this.vectors[r[1]][3],i.index=t),i},h.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()},e.exports=function(e,t,r){var s=r.shaders;1===arguments.length&&(e=(t=e).gl);var l=function(e,t){var r=n(e,t.meshShader.vertex,t.meshShader.fragment,null,t.meshShader.attributes);return r.attributes.position.location=0,r.attributes.color.location=2,r.attributes.uv.location=3,r.attributes.vector.location=4,r}(e,s),c=function(e,t){var r=n(e,t.pickShader.vertex,t.pickShader.fragment,null,t.pickShader.attributes);return r.attributes.position.location=0,r.attributes.id.location=1,r.attributes.vector.location=4,r}(e,s),f=o(e,u(new Uint8Array([255,255,255,255]),[1,1,4]));f.generateMipmap(),f.minFilter=e.LINEAR_MIPMAP_LINEAR,f.magFilter=e.LINEAR;var h=i(e),p=i(e),v=i(e),m=i(e),g=i(e),y=new d(e,f,l,c,h,p,g,v,m,a(e,[{buffer:h,type:e.FLOAT,size:4},{buffer:g,type:e.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:v,type:e.FLOAT,size:4},{buffer:m,type:e.FLOAT,size:2},{buffer:p,type:e.FLOAT,size:4}]),r.traceType||"cone");return y.update(t),y}},7234:function(e,t,r){var n=r(6832),i=n(["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=n(["#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=n(["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=n(["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}"]);t.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},1950:function(e){e.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(e,t,r){var n=r(1950);e.exports=function(e){return n[e]}},3110:function(e,t,r){"use strict";e.exports=function(e){var t=e.gl,r=n(t),o=i(t,[{buffer:r,type:t.FLOAT,size:3,offset:0,stride:40},{buffer:r,type:t.FLOAT,size:4,offset:12,stride:40},{buffer:r,type:t.FLOAT,size:3,offset:28,stride:40}]),l=a(t);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var u=new s(t,r,o,l);return u.update(e),u};var n=r(5827),i=r(2944),a=r(7667),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(e,t,r,n){this.gl=e,this.shader=n,this.buffer=t,this.vao=r,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var l=s.prototype;function u(e,t){for(var r=0;r<3;++r)e[0][r]=Math.min(e[0][r],t[r]),e[1][r]=Math.max(e[1][r],t[r])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(e){var t=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=e.view||o,i=r.projection=e.projection||o;r.model=e.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var a=n[12],s=n[13],l=n[14],u=n[15],c=(e._ortho?2:1)*this.pixelRatio*(i[3]*a+i[7]*s+i[11]*l+i[15]*u)/t.drawingBufferHeight;this.vao.bind();for(var f=0;f<3;++f)t.lineWidth(this.lineWidth[f]*this.pixelRatio),r.capSize=this.capSize[f]*c,this.lineCount[f]&&t.drawArrays(t.LINES,this.lineOffset[f],this.lineCount[f]);this.vao.unbind()};var c=function(){for(var e=new Array(3),t=0;t<3;++t){for(var r=[],n=1;n<=2;++n)for(var i=-1;i<=1;i+=2){var a=[0,0,0];a[(n+t)%3]=i,r.push(a)}e[t]=r}return e}();function f(e,t,r,n){for(var i=c[n],a=0;a0&&((h=c.slice())[s]+=p[1][s],i.push(c[0],c[1],c[2],v[0],v[1],v[2],v[3],0,0,0,h[0],h[1],h[2],v[0],v[1],v[2],v[3],0,0,0),u(this.bounds,h),o+=2+f(i,h,v,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(e,t,r){"use strict";var n=r(6832),i=r(5158),a=n(["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=n(["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}"]);e.exports=function(e){return i(e,a,o,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},4234:function(e,t,r){"use strict";var n=r(8931);e.exports=function(e,t,r,n){i||(i=e.FRAMEBUFFER_UNSUPPORTED,a=e.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=e.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=e.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var u=e.getExtension("WEBGL_draw_buffers");if(!l&&u&&function(e,t){var r=e.getParameter(t.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(r+1);for(var n=0;n<=r;++n){for(var i=new Array(r),a=0;ac||r<0||r>c)throw new Error("gl-fbo: Parameters are too large for FBO");var f=1;if("color"in(n=n||{})){if((f=Math.max(0|n.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(f>1){if(!u)throw new Error("gl-fbo: Multiple draw buffer extension not supported");if(f>e.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+f+" draw buffers")}}var d=e.UNSIGNED_BYTE,h=e.getExtension("OES_texture_float");if(n.float&&f>0){if(!h)throw new Error("gl-fbo: Context does not support floating point textures");d=e.FLOAT}else n.preferFloat&&f>0&&h&&(d=e.FLOAT);var v=!0;"depth"in n&&(v=!!n.depth);var m=!1;return"stencil"in n&&(m=!!n.stencil),new p(e,t,r,d,f,v,m,u)};var i,a,o,s,l=null;function u(e){return[e.getParameter(e.FRAMEBUFFER_BINDING),e.getParameter(e.RENDERBUFFER_BINDING),e.getParameter(e.TEXTURE_BINDING_2D)]}function c(e,t){e.bindFramebuffer(e.FRAMEBUFFER,t[0]),e.bindRenderbuffer(e.RENDERBUFFER,t[1]),e.bindTexture(e.TEXTURE_2D,t[2])}function f(e){switch(e){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 d(e,t,r,i,a,o){if(!i)return null;var s=n(e,t,r,a,i);return s.magFilter=e.NEAREST,s.minFilter=e.NEAREST,s.mipSamples=1,s.bind(),e.framebufferTexture2D(e.FRAMEBUFFER,o,e.TEXTURE_2D,s.handle,0),s}function h(e,t,r,n,i){var a=e.createRenderbuffer();return e.bindRenderbuffer(e.RENDERBUFFER,a),e.renderbufferStorage(e.RENDERBUFFER,n,t,r),e.framebufferRenderbuffer(e.FRAMEBUFFER,i,e.RENDERBUFFER,a),a}function p(e,t,r,n,i,a,o,s){this.gl=e,this._shape=[0|t,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var p=0;p1&&s.drawBuffersWEBGL(l[o]);var y=r.getExtension("WEBGL_depth_texture");y?p?e.depth=d(r,i,a,y.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):v&&(e.depth=d(r,i,a,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):v&&p?e._depth_rb=h(r,i,a,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):v?e._depth_rb=h(r,i,a,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):p&&(e._depth_rb=h(r,i,a,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){for(e._destroyed=!0,r.bindFramebuffer(r.FRAMEBUFFER,null),r.deleteFramebuffer(e.handle),e.handle=null,e.depth&&(e.depth.dispose(),e.depth=null),e._depth_rb&&(r.deleteRenderbuffer(e._depth_rb),e._depth_rb=null),g=0;gi||r<0||r>i)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");e._shape[0]=t,e._shape[1]=r;for(var a=u(n),o=0;o>8*h&255;this.pickOffset=r,i.bind();var p=i.uniforms;p.viewTransform=e,p.pickOffset=t,p.shape=this.shape;var v=i.attributes;return this.positionBuffer.bind(),v.position.pointer(),this.weightBuffer.bind(),v.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),v.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),r+this.shape[0]*this.shape[1]}}}(),c.pick=function(e,t,r){var n=this.pickOffset,i=this.shape[0]*this.shape[1];if(r=n+i)return null;var a=r-n,o=this.xData,s=this.yData;return{object:this,pointId:a,dataCoord:[o[a%this.shape[0]],s[a/this.shape[0]|0]]}},c.update=function(e){var t=(e=e||{}).shape||[0,0],r=e.x||i(t[0]),o=e.y||i(t[1]),s=e.z||new Float32Array(t[0]*t[1]),l=!1!==e.zsmooth;this.xData=r,this.yData=o;var u,c,d,h,p=e.colorLevels||[0],v=e.colorValues||[0,0,0,1],m=p.length,g=this.bounds;l?(u=g[0]=r[0],c=g[1]=o[0],d=g[2]=r[r.length-1],h=g[3]=o[o.length-1]):(u=g[0]=r[0]+(r[1]-r[0])/2,c=g[1]=o[0]+(o[1]-o[0])/2,d=g[2]=r[r.length-1]+(r[r.length-1]-r[r.length-2])/2,h=g[3]=o[o.length-1]+(o[o.length-1]-o[o.length-2])/2);var y=1/(d-u),x=1/(h-c),b=t[0],_=t[1];this.shape=[b,_];var w=(l?(b-1)*(_-1):b*_)*(f.length>>>1);this.numVertices=w;for(var k=a.mallocUint8(4*w),T=a.mallocFloat32(2*w),M=a.mallocUint8(2*w),A=a.mallocUint32(w),S=0,E=l?b-1:b,C=l?_-1:_,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\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=n(["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"}];t.createShader=function(e){return i(e,a,o,null,l)},t.createPickShader=function(e){return i(e,a,s,null,l)}},6086:function(e,t,r){"use strict";e.exports=function(e){var t=e.gl||e.scene&&e.scene.gl,r=f(t);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var o=d(t);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=n(t),l=i(t,[{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}]),c=u(new Array(1024),[256,1,4]),h=0;h<1024;++h)c.data[h]=255;var p=a(t,c);p.wrap=t.REPEAT;var v=new g(t,r,o,s,l,p);return v.update(e),v};var n=r(5827),i=r(2944),a=r(8931),o=new Uint8Array(4),s=new Float32Array(o.buffer),l=r(5070),u=r(5050),c=r(248),f=c.createShader,d=c.createPickShader,h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function p(e,t){for(var r=0,n=0;n<3;++n){var i=e[n]-t[n];r+=i*i}return Math.sqrt(r)}function v(e){for(var t=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;r<3;++r)t[0][r]=Math.max(e[0][r],t[0][r]),t[1][r]=Math.min(e[1][r],t[1][r]);return t}function m(e,t,r,n){this.arcLength=e,this.position=t,this.index=r,this.dataCoordinate=n}function g(e,t,r,n,i,a){this.gl=e,this.shader=t,this.pickShader=r,this.buffer=n,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=g.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(e){this.pickId=e},y.drawTransparent=y.draw=function(e){if(this.vertexCount){var t=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:e.model||h,view:e.view||h,projection:e.projection||h,clipBounds:v(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[t.drawingBufferWidth,t.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(t.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.drawPick=function(e){if(this.vertexCount){var t=this.gl,r=this.pickShader,n=this.vao;r.bind(),r.uniforms={model:e.model||h,view:e.view||h,projection:e.projection||h,pickId:this.pickId,clipBounds:v(this.clipBounds),screenShape:[t.drawingBufferWidth,t.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(t.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.update=function(e){var t,r;this.dirty=!0;var n=!!e.connectGaps;"dashScale"in e&&(this.dashScale=e.dashScale),this.hasAlpha=!1,"opacity"in e&&(this.opacity=+e.opacity,this.opacity<1&&(this.hasAlpha=!0));var i=[],a=[],o=[],s=0,c=0,f=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],d=e.position||e.positions;if(d){var h=e.color||e.colors||[0,0,0,1],v=e.lineWidth||1,m=!1;e:for(t=1;t0){for(var w=0;w<24;++w)i.push(i[i.length-12]);c+=2,m=!0}continue e}f[0][r]=Math.min(f[0][r],b[r],_[r]),f[1][r]=Math.max(f[1][r],b[r],_[r])}Array.isArray(h[0])?(g=h.length>t-1?h[t-1]:h.length>0?h[h.length-1]:[0,0,0,1],y=h.length>t?h[t]:h.length>0?h[h.length-1]:[0,0,0,1]):g=y=h,3===g.length&&(g=[g[0],g[1],g[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&g[3]<1&&(this.hasAlpha=!0),x=Array.isArray(v)?v.length>t-1?v[t-1]:v.length>0?v[v.length-1]:[0,0,0,1]:v;var k=s;if(s+=p(b,_),m){for(r=0;r<2;++r)i.push(b[0],b[1],b[2],_[0],_[1],_[2],k,x,g[0],g[1],g[2],g[3]);c+=2,m=!1}i.push(b[0],b[1],b[2],_[0],_[1],_[2],k,x,g[0],g[1],g[2],g[3],b[0],b[1],b[2],_[0],_[1],_[2],k,-x,g[0],g[1],g[2],g[3],_[0],_[1],_[2],b[0],b[1],b[2],s,-x,y[0],y[1],y[2],y[3],_[0],_[1],_[2],b[0],b[1],b[2],s,x,y[0],y[1],y[2],y[3]),c+=4}}if(this.buffer.update(i),a.push(s),o.push(d[d.length-1].slice()),this.bounds=f,this.vertexCount=c,this.points=o,this.arcLength=a,"dashes"in e){var T=e.dashes.slice();for(T.unshift(0),t=1;t1.0001)return null;g+=m[f]}return Math.abs(g-1)>.001?null:[d,s(e,m),m]}},2056:function(e,t,r){var n=r(6832),i=n(["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=n(["#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=n(["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=n(["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=n(["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}"]),u=n(["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}"]),c=n(["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=n(["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}"]),d=n(["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}"]),h=n(["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=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec3 contourColor;\n\nvoid main() {\n gl_FragColor = vec4(contourColor, 1.0);\n}\n"]);t.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:c,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:d,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:h,fragment:p,attributes:[{name:"position",type:"vec3"}]}},8116:function(e,t,r){"use strict";var n=r(5158),i=r(5827),a=r(2944),o=r(8931),s=r(115),l=r(104),u=r(7437),c=r(5050),f=r(9156),d=r(7212),h=r(5306),p=r(2056),v=r(4340),m=p.meshShader,g=p.wireShader,y=p.pointShader,x=p.pickShader,b=p.pointPickShader,_=p.contourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function k(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,k,T,M,A,S){this.gl=e,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=t,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=c,this.triangleNormals=d,this.triangleUVs=f,this.triangleIds=u,this.triangleVAO=h,this.triangleCount=0,this.lineWidth=1,this.edgePositions=p,this.edgeColors=m,this.edgeUVs=g,this.edgeIds=v,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=x,this.pointColors=_,this.pointUVs=k,this.pointSizes=T,this.pointIds=b,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=w,this._view=w,this._projection=w,this._resolution=[1,1]}var T=k.prototype;function M(e,t){if(!t)return 1;if(!t.length)return 1;for(var r=0;re&&r>0){var n=(t[r][0]-e)/(t[r][0]-t[r-1][0]);return t[r][1]*(1-n)+n*t[r-1][1]}}return 1}function A(e){var t=n(e,y.vertex,y.fragment);return t.attributes.position.location=0,t.attributes.color.location=2,t.attributes.uv.location=3,t.attributes.pointSize.location=4,t}function S(e){var t=n(e,x.vertex,x.fragment);return t.attributes.position.location=0,t.attributes.id.location=1,t}function E(e){var t=n(e,b.vertex,b.fragment);return t.attributes.position.location=0,t.attributes.id.location=1,t.attributes.pointSize.location=4,t}function C(e){var t=n(e,_.vertex,_.fragment);return t.attributes.position.location=0,t}T.isOpaque=function(){return!this.hasAlpha},T.isTransparent=function(){return this.hasAlpha},T.pickSlots=1,T.setPickBase=function(e){this.pickId=e},T.highlight=function(e){if(e&&this.contourEnable){for(var t=d(this.cells,this.intensity,e.intensity),r=t.cells,n=t.vertexIds,i=t.vertexWeights,a=r.length,o=h.mallocFloat32(6*a),s=0,l=0;l0&&((f=this.triShader).bind(),f.uniforms=s,this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((f=this.lineShader).bind(),f.uniforms=s,this.edgeVAO.bind(),t.lineWidth(this.lineWidth*this.pixelRatio),t.drawArrays(t.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((f=this.pointShader).bind(),f.uniforms=s,this.pointVAO.bind(),t.drawArrays(t.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(),t.drawArrays(t.LINES,0,this.contourCount),this.contourVAO.unbind())},T.drawPick=function(e){e=e||{};for(var t=this.gl,r=e.model||w,n=e.view||w,i=e.projection||w,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(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[t.drawingBufferWidth,t.drawingBufferHeight];var s,l={model:r,view:n,projection:i,clipBounds:a,pickId:this.pickId/255};(s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),t.lineWidth(this.lineWidth*this.pixelRatio),t.drawArrays(t.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),t.drawArrays(t.POINTS,0,this.pointCount),this.pointVAO.unbind())},T.pick=function(e){if(!e)return null;if(e.id!==this.pickId)return null;for(var t=e.value[0]+256*e.value[1]+65536*e.value[2],r=this.cells[t],n=this.positions,i=new Array(r.length),a=0;al[T]&&(a.uniforms.dataAxis=e,a.uniforms.screenOffset=t,a.uniforms.color=m[n],a.uniforms.angle=g[n],u.drawArrays(u.TRIANGLES,l[T],l[M]-l[T]))),y[n]&&k&&(t[1^n]-=A*h*x[n],a.uniforms.dataAxis=r,a.uniforms.screenOffset=t,a.uniforms.color=b[n],a.uniforms.angle=_[n],u.drawArrays(u.TRIANGLES,w,k)),t[1^n]=A*c[2+(1^n)]-1,p[n+2]&&(t[1^n]+=A*h*v[n+2],Tl[T]&&(a.uniforms.dataAxis=e,a.uniforms.screenOffset=t,a.uniforms.color=m[n+2],a.uniforms.angle=g[n+2],u.drawArrays(u.TRIANGLES,l[T],l[M]-l[T]))),y[n+2]&&k&&(t[1^n]+=A*h*x[n+2],a.uniforms.dataAxis=r,a.uniforms.screenOffset=t,a.uniforms.color=b[n+2],a.uniforms.angle=_[n+2],u.drawArrays(u.TRIANGLES,w,k))}}(),u.drawTitle=function(){var e=[0,0],t=[0,0];return function(){var r=this.plot,n=this.shader,i=r.gl,a=r.screenBox,o=r.titleCenter,s=r.titleAngle,l=r.titleColor,u=r.pixelRatio;if(this.titleCount){for(var c=0;c<2;++c)t[c]=2*(o[c]*u-a[c])/(a[2+c]-a[c])-1;n.bind(),n.uniforms.dataAxis=e,n.uniforms.screenOffset=t,n.uniforms.angle=s,n.uniforms.color=l,i.drawArrays(i.TRIANGLES,this.titleOffset,this.titleCount)}}}(),u.bind=function(){var e=[0,0],t=[0,0],r=[0,0];return function(){var n=this.plot,i=this.shader,a=n._tickBounds,o=n.dataBox,s=n.screenBox,l=n.viewBox;i.bind();for(var u=0;u<2;++u){var c=a[u],f=a[u+2]-c,d=.5*(o[u+2]+o[u]),h=o[u+2]-o[u],p=l[u],v=l[u+2]-p,m=s[u],g=s[u+2]-m;t[u]=2*f/h*v/g,e[u]=2*(c-d)/h*v/g}r[1]=2*n.pixelRatio/(s[3]-s[1]),r[0]=r[1]*(s[3]-s[1])/(s[2]-s[0]),i.uniforms.dataScale=t,i.uniforms.dataShift=e,i.uniforms.textScale=r,this.vbo.bind(),i.attributes.textCoordinate.pointer()}}(),u.update=function(e){var t,r,n,i,o,s=[],l=e.ticks,u=e.bounds;for(o=0;o<2;++o){var c=[Math.floor(s.length/3)],f=[-1/0],d=l[o];for(t=0;t=0){var v=t[p]-n[p]*(t[p+2]-t[p])/(n[p+2]-n[p]);0===p?o.drawLine(v,t[1],v,t[3],h[p],d[p]):o.drawLine(t[0],v,t[2],v,h[p],d[p])}}for(p=0;p=0;--e)this.objects[e].dispose();for(this.objects.length=0,e=this.overlays.length-1;e>=0;--e)this.overlays[e].dispose();this.overlays.length=0,this.gl=null},u.addObject=function(e){this.objects.indexOf(e)<0&&(this.objects.push(e),this.setDirty())},u.removeObject=function(e){for(var t=this.objects,r=0;rMath.abs(t))u.rotate(a,0,0,-e*r*Math.PI*p.rotateSpeed/window.innerWidth);else if(!p._ortho){var o=-p.zoomSpeed*i*t/window.innerHeight*(a-u.lastT())/20;u.pan(a,0,0,f*(Math.exp(o)-1))}}}),!0)},p.enableMouseListeners(),p};var n=r(8161),i=r(1152),a=r(6145),o=r(6475),s=r(2565),l=r(5233)},8245:function(e,t,r){var n=r(6832),i=r(5158),a=n(["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=n(["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}"]);e.exports=function(e){return i(e,a,o,null,[{name:"position",type:"vec2"}])}},1059:function(e,t,r){"use strict";var n=r(4296),i=r(7453),a=r(2771),o=r(6496),s=r(2611),l=r(4234),u=r(8126),c=r(6145),f=r(1120),d=r(5268),h=r(8245),p=r(2321)({tablet:!0,featureDetect:!0});function v(){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 m(e){var t=Math.round(Math.log(Math.abs(e))/Math.log(10));if(t<0){var r=Math.round(Math.pow(10,-t));return Math.ceil(e*r)/r}return t>0?(r=Math.round(Math.pow(10,t)),Math.ceil(e/r)*r):Math.ceil(e)}function g(e){return"boolean"!==typeof e||e}e.exports={createScene:function(e){(e=e||{}).camera=e.camera||{};var t=e.canvas;t||(t=document.createElement("canvas"),e.container?e.container.appendChild(t):document.body.appendChild(t));var r=e.gl;if(r||(e.glOptions&&(p=!!e.glOptions.preserveDrawingBuffer),r=function(e,t){var r=null;try{(r=e.getContext("webgl",t))||(r=e.getContext("experimental-webgl",t))}catch(n){return null}return r}(t,e.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:p})),!r)throw new Error("webgl not supported");var y=e.bounds||[[-10,-10,-10],[10,10,10]],x=new v,b=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!p}),_=h(r),w=e.cameraObject&&!0===e.cameraObject._ortho||e.camera.projection&&"orthographic"===e.camera.projection.type||!1,k={eye:e.camera.eye||[2,0,0],center:e.camera.center||[0,0,0],up:e.camera.up||[0,1,0],zoomMin:e.camera.zoomMax||.1,zoomMax:e.camera.zoomMin||100,mode:e.camera.mode||"turntable",_ortho:w},T=e.axes||{},M=i(r,T);M.enable=!T.disable;var A=e.spikes||{},S=o(r,A),E=[],C=[],L=[],P=[],O=!0,I=!0,D=new Array(16),R=new Array(16),z={view:null,projection:D,model:R,_ortho:!1},F=(I=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),N=e.cameraObject||n(t,k),B={gl:r,contextLost:!1,pixelRatio:e.pixelRatio||1,canvas:t,selection:x,camera:N,axes:M,axesPixels:null,spikes:S,bounds:y,objects:E,shape:F,aspect:e.aspectRatio||[1,1,1],pickRadius:e.pickRadius||10,zNear:e.zNear||.01,zFar:e.zFar||1e3,fovy:e.fovy||Math.PI/4,clearColor:e.clearColor||[0,0,0,0],autoResize:g(e.autoResize),autoBounds:g(e.autoBounds),autoScale:!!e.autoScale,autoCenter:g(e.autoCenter),clipToBounds:g(e.clipToBounds),snapToData:!!e.snapToData,onselect:e.onselect||null,onrender:e.onrender||null,onclick:e.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(e){this.aspect[0]=e.x,this.aspect[1]=e.y,this.aspect[2]=e.z,I=!0},setBounds:function(e,t){this.bounds[0][e]=t.min,this.bounds[1][e]=t.max},setClearColor:function(e){this.clearColor=e},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)}},j=[r.drawingBufferWidth/B.pixelRatio|0,r.drawingBufferHeight/B.pixelRatio|0];function U(){if(!B._stopped&&B.autoResize){var e=t.parentNode,r=1,n=1;e&&e!==document.body?(r=e.clientWidth,n=e.clientHeight):(r=window.innerWidth,n=window.innerHeight);var i=0|Math.ceil(r*B.pixelRatio),a=0|Math.ceil(n*B.pixelRatio);if(i!==t.width||a!==t.height){t.width=i,t.height=a;var o=t.style;o.position=o.position||"absolute",o.left="0px",o.top="0px",o.width=r+"px",o.height=n+"px",O=!0}}}function V(){for(var e=E.length,t=P.length,n=0;n0&&0===L[t-1];)L.pop(),P.pop().dispose()}function H(){if(B.contextLost)return!0;r.isContextLost()&&(B.contextLost=!0,B.mouseListener.enabled=!1,B.selection.object=null,B.oncontextloss&&B.oncontextloss())}B.autoResize&&U(),window.addEventListener("resize",U),B.update=function(e){B._stopped||(e=e||{},O=!0,I=!0)},B.add=function(e){B._stopped||(e.axes=M,E.push(e),C.push(-1),O=!0,I=!0,V())},B.remove=function(e){if(!B._stopped){var t=E.indexOf(e);t<0||(E.splice(t,1),C.pop(),O=!0,I=!0,V())}},B.dispose=function(){if(!B._stopped&&(B._stopped=!0,window.removeEventListener("resize",U),t.removeEventListener("webglcontextlost",H),B.mouseListener.enabled=!1,!B.contextLost)){M.dispose(),S.dispose();for(var e=0;ex.distance)continue;for(var u=0;u 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"]),t.pickVertex=n(["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"]),t.pickFragment=n(["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(e,t,r){"use strict";var n=r(5158),i=r(5827),a=r(5306),o=r(8023);function s(e,t,r,n,i){this.plot=e,this.offsetBuffer=t,this.pickBuffer=r,this.shader=n,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}e.exports=function(e,t){var r=e.gl,a=i(r),l=i(r),u=n(r,o.pointVertex,o.pointFragment),c=n(r,o.pickVertex,o.pickFragment),f=new s(e,a,l,u,c);return f.update(t),e.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(e){var t;function r(t,r){return t in e?e[t]:r}e=e||{},this.sizeMin=r("sizeMin",.5),this.sizeMax=r("sizeMax",20),this.color=r("color",[1,0,0,1]).slice(),this.areaRatio=r("areaRatio",1),this.borderColor=r("borderColor",[0,0,0,1]).slice(),this.blend=r("blend",!1);var n=e.positions.length>>>1,i=e.positions instanceof Float32Array,o=e.idToIndex instanceof Int32Array&&e.idToIndex.length>=n,s=e.positions,l=i?s:a.mallocFloat32(s.length),u=o?e.idToIndex:a.mallocInt32(n);if(i||l.set(s),!o)for(l.set(s),t=0;t>>1;for(r=0;r=t[0]&&a<=t[2]&&o>=t[1]&&o<=t[3]&&n++}return n}(this.points,o),c=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(u,.33333)));e[0]=2/s,e[4]=2/l,e[6]=-2*o[0]/s-1,e[7]=-2*o[1]/l-1,this.offsetBuffer.bind(),i.bind(),i.attributes.position.pointer(),i.uniforms.matrix=e,i.uniforms.color=this.color,i.uniforms.borderColor=this.borderColor,i.uniforms.pointCloud=c<5,i.uniforms.pointSize=c,i.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),n&&(t[0]=255&r,t[1]=r>>8&255,t[2]=r>>16&255,t[3]=r>>24&255,this.pickBuffer.bind(),i.attributes.pickId.pointer(a.UNSIGNED_BYTE),i.uniforms.pickOffset=t,this.pickOffset=r);var f=a.getParameter(a.BLEND),d=a.getParameter(a.DITHER);return f&&!this.blend&&a.disable(a.BLEND),d&&a.disable(a.DITHER),a.drawArrays(a.POINTS,0,this.pointCount),f&&!this.blend&&a.enable(a.BLEND),d&&a.enable(a.DITHER),r+this.pointCount}}(),l.draw=l.unifiedDraw,l.drawPick=l.unifiedDraw,l.pick=function(e,t,r){var n=this.pickOffset,i=this.pointCount;if(r=n+i)return null;var a=r-n,o=this.points;return{object:this,pointId:a,dataCoord:[o[2*a],o[2*a+1]]}}},6093:function(e){e.exports=function(e,t,r,n){var i,a,o,s,l,u=t[0],c=t[1],f=t[2],d=t[3],h=r[0],p=r[1],v=r[2],m=r[3];return(a=u*h+c*p+f*v+d*m)<0&&(a=-a,h=-h,p=-p,v=-v,m=-m),1-a>1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-n)*i)/o,l=Math.sin(n*i)/o):(s=1-n,l=n),e[0]=s*u+l*h,e[1]=s*c+l*p,e[2]=s*f+l*v,e[3]=s*d+l*m,e}},8240:function(e){"use strict";e.exports=function(e){return e||0===e?e.toString():""}},4123:function(e,t,r){"use strict";var n=r(875);e.exports=function(e,t,r){var a=i[t];if(a||(a=i[t]={}),e in a)return a[e];var o={textAlign:"center",textBaseline:"middle",lineHeight:1,font:t,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=n(e,o);o.triangles=!1;var l,u,c=n(e,o);if(r&&1!==r){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"]),u=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}"]),c=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],f={vertex:a,fragment:l,attributes:c},d={vertex:o,fragment:l,attributes:c},h={vertex:s,fragment:l,attributes:c},p={vertex:a,fragment:u,attributes:c},v={vertex:o,fragment:u,attributes:c},m={vertex:s,fragment:u,attributes:c};function g(e,t){var r=n(e,t),i=r.attributes;return i.position.location=0,i.color.location=1,i.glyph.location=2,i.id.location=3,r}t.createPerspective=function(e){return g(e,f)},t.createOrtho=function(e){return g(e,d)},t.createProject=function(e){return g(e,h)},t.createPickPerspective=function(e){return g(e,p)},t.createPickOrtho=function(e){return g(e,v)},t.createPickProject=function(e){return g(e,m)}},2182:function(e,t,r){"use strict";var n=r(3596),i=r(5827),a=r(2944),o=r(5306),s=r(104),l=r(9282),u=r(4123),c=r(8240),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function d(e,t){var r=e[0],n=e[1],i=e[2],a=e[3];return e[0]=t[0]*r+t[4]*n+t[8]*i+t[12]*a,e[1]=t[1]*r+t[5]*n+t[9]*i+t[13]*a,e[2]=t[2]*r+t[6]*n+t[10]*i+t[14]*a,e[3]=t[3]*r+t[7]*n+t[11]*i+t[15]*a,e}function h(e,t,r,n){return d(n,n),d(n,n),d(n,n)}function p(e,t){this.index=e,this.dataCoordinate=this.position=t}function v(e){return!0===e||e>1?1:e}function m(e,t,r,n,i,a,o,s,l,u,c,f){this.gl=e,this.pixelRatio=1,this.shader=t,this.orthoShader=r,this.projectShader=n,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=u,this.pickOrthoShader=c,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}e.exports=function(e){var t=e.gl,r=l.createPerspective(t),n=l.createOrtho(t),o=l.createProject(t),s=l.createPickPerspective(t),u=l.createPickOrtho(t),c=l.createPickProject(t),f=i(t),d=i(t),h=i(t),p=i(t),v=a(t,[{buffer:f,size:3,type:t.FLOAT},{buffer:d,size:4,type:t.FLOAT},{buffer:h,size:2,type:t.FLOAT},{buffer:p,size:4,type:t.UNSIGNED_BYTE,normalized:!0}]),g=new m(t,r,n,o,f,d,h,p,v,s,u,c);return g.update(e),g};var g=m.prototype;g.pickSlots=1,g.setPickBase=function(e){this.pickId=e},g.isTransparent=function(){if(this.hasAlpha)return!0;for(var e=0;e<3;++e)if(this.axesProject[e]&&this.projectHasAlpha)return!0;return!1},g.isOpaque=function(){if(!this.hasAlpha)return!0;for(var e=0;e<3;++e)if(this.axesProject[e]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],x=[0,0,0],b=[0,0,0],_=[0,0,0,1],w=[0,0,0,1],k=f.slice(),T=[0,0,0],M=[[0,0,0],[0,0,0]];function A(e){return e[0]=e[1]=e[2]=0,e}function S(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=1,e}function E(e,t,r,n){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[r]=n,e}function C(e,t,r,n){var i,a=t.axesProject,o=t.gl,l=e.uniforms,u=r.model||f,c=r.view||f,d=r.projection||f,p=t.axesBounds,v=function(e){for(var t=M,r=0;r<2;++r)for(var n=0;n<3;++n)t[r][n]=Math.max(Math.min(e[r][n],1e8),-1e8);return t}(t.clipBounds);i=t.axes&&t.axes.lastCubeProps?t.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,e.bind(),l.view=c,l.projection=d,l.screenSize=y,l.highlightId=t.highlightId,l.highlightScale=t.highlightScale,l.clipBounds=v,l.pickGroup=t.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(a[m]){l.scale=t.projectScale[m],l.opacity=t.projectOpacity[m];for(var g=k,C=0;C<16;++C)g[C]=0;for(C=0;C<4;++C)g[5*C]=1;g[5*m]=0,i[m]<0?g[12+m]=p[0][m]:g[12+m]=p[1][m],s(g,u,g),l.model=g;var L=(m+1)%3,P=(m+2)%3,O=A(x),I=A(b);O[L]=1,I[P]=1;var D=h(0,0,0,S(_,O)),R=h(0,0,0,S(w,I));if(Math.abs(D[1])>Math.abs(R[1])){var z=D;D=R,R=z,z=O,O=I,I=z;var F=L;L=P,P=F}D[0]<0&&(O[L]=-1),R[1]>0&&(I[P]=-1);var N=0,B=0;for(C=0;C<4;++C)N+=Math.pow(u[4*L+C],2),B+=Math.pow(u[4*P+C],2);O[L]/=Math.sqrt(N),I[P]/=Math.sqrt(B),l.axes[0]=O,l.axes[1]=I,l.fragClipBounds[0]=E(T,v[0],m,-1e8),l.fragClipBounds[1]=E(T,v[1],m,1e8),t.vao.bind(),t.vao.draw(o.TRIANGLES,t.vertexCount),t.lineWidth>0&&(o.lineWidth(t.lineWidth*n),t.vao.draw(o.LINES,t.lineVertexCount,t.vertexCount)),t.vao.unbind()}}var L=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function P(e,t,r,n,i,a,o){var s=r.gl;if((a===r.projectHasAlpha||o)&&C(t,r,n,i),a===r.hasAlpha||o){e.bind();var l=e.uniforms;l.model=n.model||f,l.view=n.view||f,l.projection=n.projection||f,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=r.highlightId,l.highlightScale=r.highlightScale,l.fragClipBounds=L,l.clipBounds=r.axes.bounds,l.opacity=r.opacity,l.pickGroup=r.pickId/255,l.pixelRatio=i,r.vao.bind(),r.vao.draw(s.TRIANGLES,r.vertexCount),r.lineWidth>0&&(s.lineWidth(r.lineWidth*i),r.vao.draw(s.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function O(e,t,r,i){var a;a=Array.isArray(e)?t=this.pointCount||t<0)return null;var r=this.points[t],n=this._selectResult;n.index=t;for(var i=0;i<3;++i)n.position[i]=n.dataCoordinate[i]=r[i];return n},g.highlight=function(e){if(e){var t=e.index,r=255&t,n=t>>8&255,i=t>>16&255;this.highlightId=[r/255,n/255,i/255,0]}else this.highlightId=[1,1,1,1]},g.update=function(e){if("perspective"in(e=e||{})&&(this.useOrtho=!e.perspective),"orthographic"in e&&(this.useOrtho=!!e.orthographic),"lineWidth"in e&&(this.lineWidth=e.lineWidth),"project"in e)if(Array.isArray(e.project))this.axesProject=e.project;else{var t=!!e.project;this.axesProject=[t,t,t]}if("projectScale"in e)if(Array.isArray(e.projectScale))this.projectScale=e.projectScale.slice();else{var r=+e.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,"projectOpacity"in e){Array.isArray(e.projectOpacity)?this.projectOpacity=e.projectOpacity.slice():(r=+e.projectOpacity,this.projectOpacity=[r,r,r]);for(var n=0;n<3;++n)this.projectOpacity[n]=v(this.projectOpacity[n]),this.projectOpacity[n]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in e&&(this.opacity=v(e.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var i,a,s=e.position,l=e.font||"normal",u=e.alignment||[0,0];if(2===u.length)i=u[0],a=u[1];else for(i=[],a=[],n=0;n0){var I=0,D=x,R=[0,0,0,1],z=[0,0,0,1],F=Array.isArray(h)&&Array.isArray(h[0]),N=Array.isArray(g)&&Array.isArray(g[0]);e:for(n=0;n<_;++n){for(y+=1,w=s[n],k=0;k<3;++k){if(isNaN(w[k])||!isFinite(w[k]))continue e;f[k]=Math.max(f[k],w[k]),c[k]=Math.min(c[k],w[k])}T=(B=O(d,n,l,this.pixelRatio)).mesh,M=B.lines,A=B.bounds;var B,j=B.visible;if(j)if(Array.isArray(h)){if(3===(U=F?n0?1-A[0][0]:G<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 g=r*c;o.drawBox(f-g,d-g,h+g,d+g,a),o.drawBox(f-g,p-g,h+g,p+g,a),o.drawBox(f-g,d-g,f+g,p+g,a),o.drawBox(h-g,d-g,h+g,p+g,a)}}}},s.update=function(e){e=e||{},this.innerFill=!!e.innerFill,this.outerFill=!!e.outerFill,this.innerColor=(e.innerColor||[0,0,0,.5]).slice(),this.outerColor=(e.outerColor||[0,0,0,.5]).slice(),this.borderColor=(e.borderColor||[0,0,0,1]).slice(),this.borderWidth=e.borderWidth||0,this.selectBox=(e.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},2611:function(e,t,r){"use strict";e.exports=function(e,t){var r=t[0],a=t[1],o=n(e,r,a,{}),s=i.mallocUint8(r*a*4);return new l(e,o,s)};var n=r(4234),i=r(5306),a=r(5050),o=r(2288).nextPow2;function s(e,t,r,n,i){this.coord=[e,t],this.id=r,this.value=n,this.distance=i}function l(e,t,r){this.gl=e,this.fbo=t,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(t.bind(),e.readPixels(0,0,t.shape[0],t.shape[1],e.RGBA,e.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}var u=l.prototype;Object.defineProperty(u,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(e){if(this.gl){this.fbo.shape=e;var t=this.fbo.shape[0],r=this.fbo.shape[1];if(r*t*4>this.buffer.length){i.free(this.buffer);for(var n=this.buffer=i.mallocUint8(o(r*t*4)),a=0;ar)for(e=r;et)for(e=t;e=0){for(var k=0|w.type.charAt(w.type.length-1),T=new Array(k),M=0;M=0;)A+=1;_[y]=A}var S=new Array(r.length);function E(){d.program=o.program(h,d._vref,d._fref,b,_);for(var e=0;e=0){if((p=d.charCodeAt(d.length-1)-48)<2||p>4)throw new n("","Invalid data type for attribute "+f+": "+d);s(e,t,h[0],i,p,a,f)}else{if(!(d.indexOf("mat")>=0))throw new n("","Unknown data type for attribute "+f+": "+d);var p;if((p=d.charCodeAt(d.length-1)-48)<2||p>4)throw new n("","Invalid data type for attribute "+f+": "+d);l(e,t,h,i,p,a,f)}}}return a};var n=r(9068);function i(e,t,r,n,i,a){this._gl=e,this._wrapper=t,this._index=r,this._locations=n,this._dimension=i,this._constFunc=a}var a=i.prototype;a.pointer=function(e,t,r,n){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,e||a.FLOAT,!!t,r||0,n||0),a.enableVertexAttribArray(o)},a.set=function(e,t,r,n){return this._constFunc(this._locations[this._index],e,t,r,n)},Object.defineProperty(a,"location",{get:function(){return this._locations[this._index]},set:function(e){return e!==this._locations[this._index]&&(this._locations[this._index]=0|e,this._wrapper.program=null),0|e}});var o=[function(e,t,r){return void 0===r.length?e.vertexAttrib1f(t,r):e.vertexAttrib1fv(t,r)},function(e,t,r,n){return void 0===r.length?e.vertexAttrib2f(t,r,n):e.vertexAttrib2fv(t,r)},function(e,t,r,n,i){return void 0===r.length?e.vertexAttrib3f(t,r,n,i):e.vertexAttrib3fv(t,r)},function(e,t,r,n,i,a){return void 0===r.length?e.vertexAttrib4f(t,r,n,i,a):e.vertexAttrib4fv(t,r)}];function s(e,t,r,n,a,s,l){var u=o[a],c=new i(e,t,r,n,a,u);Object.defineProperty(s,l,{set:function(t){return e.disableVertexAttribArray(n[r]),u(e,n[r],t),t},get:function(){return c},enumerable:!0})}function l(e,t,r,n,i,a,o){for(var l=new Array(i),u=new Array(i),c=0;c4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+y);e["uniformMatrix"+g+"fv"](s[f],!1,d);break}throw new i("","Unknown uniform data type for "+name+": "+y)}if((g=y.charCodeAt(y.length-1)-48)<2||g>4)throw new i("","Invalid data type");switch(y.charAt(0)){case"b":case"i":e["uniform"+g+"iv"](s[f],d);break;case"v":e["uniform"+g+"fv"](s[f],d);break;default:throw new i("","Unrecognized data type for vector "+name+": "+y)}}}}}}function u(e,t){if("object"!==typeof t)return[[e,t]];var r=[];for(var n in t){var i=t[n],a=e;parseInt(n)+""===n?a+="["+n+"]":a+="."+n,"object"===typeof i?r.push.apply(r,u(a,i)):r.push([a,i])}return r}function c(e,t,n){if("object"===typeof n){var u=f(n);Object.defineProperty(e,t,{get:a(u),set:l(n),enumerable:!0,configurable:!1})}else s[n]?Object.defineProperty(e,t,{get:(c=n,function(e,t,r){return e.getUniform(t.program,r[c])}),set:l(n),enumerable:!0,configurable:!1}):e[t]=function(e){switch(e){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":case"float":return 0;default:var t=e.indexOf("vec");if(0<=t&&t<=1&&e.length===4+t){if((r=e.charCodeAt(e.length-1)-48)<2||r>4)throw new i("","Invalid data type");return"b"===e.charAt(0)?o(r,!1):o(r,0)}if(0===e.indexOf("mat")&&4===e.length){var r;if((r=e.charCodeAt(e.length-1)-48)<2||r>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+e);return o(r*r,0)}throw new i("","Unknown uniform data type for "+name+": "+e)}}(r[n].type);var c}function f(e){var t;if(Array.isArray(e)){t=new Array(e.length);for(var r=0;r1){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=n(["#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=n(["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=n(["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}"]);t.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7307:function(e,t,r){"use strict";var n=r(2858),i=r(4020),a=["xyz","xzy","yxz","yzx","zxy","zyx"],o=function(e,t,r,a){for(var o=0,s=0;s0)for(k=0;k<8;k++){var T=(k+1)%8;u.push(d[k],h[k],h[T],h[T],d[T],d[k]),f.push(y,g,g,g,y,y),p.push(v,m,m,m,v,v);var M=u.length;c.push([M-6,M-5,M-4],[M-3,M-2,M-1])}var A=d;d=h,h=A;var S=y;y=g,g=S;var E=v;v=m,m=E}return{positions:u,cells:c,vectors:f,vertexIntensity:p}}(e,r,a,o)})),f=[],d=[],h=[],p=[];for(s=0;st)return r-1}return r},l=function(e,t,r){return er?r:e},u=function(e){var t=1/0;e.sort((function(e,t){return e-t}));for(var r=e.length,n=1;nf-1||y>d-1||x>h-1)return n.create();var b,_,w,k,T,M,A=a[0][p],S=a[0][g],E=a[1][v],C=a[1][y],L=a[2][m],P=(o-A)/(S-A),O=(u-E)/(C-E),I=(c-L)/(a[2][x]-L);switch(isFinite(P)||(P=.5),isFinite(O)||(O=.5),isFinite(I)||(I=.5),r.reversedX&&(p=f-1-p,g=f-1-g),r.reversedY&&(v=d-1-v,y=d-1-y),r.reversedZ&&(m=h-1-m,x=h-1-x),r.filled){case 5:T=m,M=x,w=v*h,k=y*h,b=p*h*d,_=g*h*d;break;case 4:T=m,M=x,b=p*h,_=g*h,w=v*h*f,k=y*h*f;break;case 3:w=v,k=y,T=m*d,M=x*d,b=p*d*h,_=g*d*h;break;case 2:w=v,k=y,b=p*d,_=g*d,T=m*d*f,M=x*d*f;break;case 1:b=p,_=g,T=m*f,M=x*f,w=v*f*h,k=y*f*h;break;default:b=p,_=g,w=v*f,k=y*f,T=m*f*d,M=x*f*d}var D=i[b+w+T],R=i[b+w+M],z=i[b+k+T],F=i[b+k+M],N=i[_+w+T],B=i[_+w+M],j=i[_+k+T],U=i[_+k+M],V=n.create(),H=n.create(),q=n.create(),W=n.create();n.lerp(V,D,N,P),n.lerp(H,R,B,P),n.lerp(q,z,j,P),n.lerp(W,F,U,P);var G=n.create(),Y=n.create();n.lerp(G,V,q,O),n.lerp(Y,H,W,O);var Z=n.create();return n.lerp(Z,G,Y,I),Z}(t,e,h)},v=e.getDivergence||function(e,t){var r=n.create(),i=1e-4;n.add(r,e,[i,0,0]);var a=p(r);n.subtract(a,a,t),n.scale(a,a,1/i),n.add(r,e,[0,i,0]);var o=p(r);n.subtract(o,o,t),n.scale(o,o,1/i),n.add(r,e,[0,0,i]);var s=p(r);return n.subtract(s,s,t),n.scale(s,s,1/i),n.add(r,a,o),n.add(r,r,s),r},m=[],g=t[0][0],y=t[0][1],x=t[0][2],b=t[1][0],_=t[1][1],w=t[1][2],k=function(e){var t=e[0],r=e[1],n=e[2];return!(tb||r_||nw)},T=10*n.distance(t[0],t[1])/i,M=T*T,A=1,S=0,E=r.length;E>1&&(A=function(e){for(var t=[],r=[],n=[],i={},a={},o={},s=e.length,l=0;lS&&(S=F),R.push(F),m.push({points:P,velocities:O,divergences:R});for(var N=0;N<100*i&&P.lengthM&&n.scale(B,B,T/Math.sqrt(j)),n.add(B,B,L),I=p(B),n.squaredDistance(D,B)-M>-1e-4*M&&(P.push(B),D=B,O.push(I),z=v(B,I),F=n.length(z),isFinite(F)&&F>S&&(S=F),R.push(F)),L=B}}var U=o(m,e.colormap,S,A);return f?U.tubeScale=f:(0===S&&(S=1),U.tubeScale=.5*c*A/S),U};var c=r(9578),f=r(1140).createMesh;e.exports.createTubeMesh=function(e,t){return f(e,t,{shaders:c,traceType:"streamtube"})}},9054:function(e,t,r){var n=r(5158),i=r(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"]);t.createShader=function(e){var t=n(e,a,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t.attributes.normal.location=2,t},t.createPickShader=function(e){var t=n(e,a,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t.attributes.normal.location=2,t},t.createContourShader=function(e){var t=n(e,s,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t},t.createPickContourShader=function(e){var t=n(e,s,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return t.attributes.uv.location=0,t.attributes.f.location=1,t}},3754:function(e,t,r){"use strict";e.exports=function(e){var t=e.gl,r=y(t),n=b(t),s=x(t),l=_(t),u=i(t),c=a(t,[{buffer:u,size:4,stride:w,offset:0},{buffer:u,size:3,stride:w,offset:16},{buffer:u,size:3,stride:w,offset:28}]),f=i(t),d=a(t,[{buffer:f,size:4,stride:20,offset:0},{buffer:f,size:1,stride:20,offset:16}]),h=i(t),p=a(t,[{buffer:h,size:2,type:t.FLOAT}]),v=o(t,1,S,t.RGBA,t.UNSIGNED_BYTE);v.minFilter=t.LINEAR,v.magFilter=t.LINEAR;var m=new E(t,[0,0],[[0,0,0],[0,0,0]],r,n,u,c,v,s,l,f,d,h,p,[0,0,0]),g={levels:[[],[],[]]};for(var k in e)g[k]=e[k];return g.colormap=g.colormap||"jet",m.update(g),m};var n=r(2288),i=r(5827),a=r(2944),o=r(8931),s=r(5306),l=r(9156),u=r(7498),c=r(7382),f=r(5050),d=r(4162),h=r(104),p=r(7437),v=r(5070),m=r(9144),g=r(9054),y=g.createShader,x=g.createContourShader,b=g.createPickShader,_=g.createPickContourShader,w=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(e,t,r,n,i){this.position=e,this.index=t,this.uv=r,this.level=n,this.dataCoordinate=i}!function(){for(var e=0;e<3;++e){var t=M[e],r=(e+2)%3;t[(e+1)%3+0]=1,t[r+3]=1,t[e+6]=1}}();var S=256;function E(e,t,r,n,i,a,o,l,u,c,d,h,p,v,m){this.gl=e,this.shape=t,this.bounds=r,this.objectOffset=m,this.intensityBounds=[],this._shader=n,this._pickShader=i,this._coordinateBuffer=a,this._vao=o,this._colorMap=l,this._contourShader=u,this._contourPickShader=c,this._contourBuffer=d,this._contourVAO=h,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=v,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(e,t){var r=!1,n=c([l({colormap:e,nshades:S,format:"rgba"}).map((function(e,n){var i=t?function(e,t){if(!t)return 1;if(!t.length)return 1;for(var r=0;re&&r>0){var n=(t[r][0]-e)/(t[r][0]-t[r-1][0]);return t[r][1]*(1-n)+n*t[r-1][1]}}return 1}(n/255,t):e[3];return i<1&&(r=!0),[e[0],e[1],e[2],255*i]}))]);return u.divseq(n,255),this.hasAlphaScale=r,n},C.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},C.isOpaque=function(){return!this.isTransparent()},C.pickSlots=1,C.setPickBase=function(e){this.pickId=e};var L=[0,0,0],P={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(e,t){var r,n,i,a=t.axes&&t.axes.lastCubeProps.axis||L,o=t.showSurface,s=t.showContour;for(r=0;r<3;++r)for(o=o||t.surfaceProject[r],n=0;n<3;++n)s=s||t.contourProject[r][n];for(r=0;r<3;++r){var l=P.projections[r];for(n=0;n<16;++n)l[n]=0;for(n=0;n<4;++n)l[5*n]=1;l[5*r]=0,l[12+r]=t.axesBounds[+(a[r]>0)][r],h(l,e.model,l);var u=P.clipBounds[r];for(i=0;i<2;++i)for(n=0;n<3;++n)u[i][n]=e.clipBounds[i][n];u[0][r]=-1e8,u[1][r]=1e8}return P.showSurface=o,P.showContour=s,P}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(e,t){e=e||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=I;n.model=e.model||k,n.view=e.view||k,n.projection=e.projection||k,n.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],n.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],n.objectOffset=this.objectOffset,n.contourColor=this.contourColor[0],n.inverseModel=p(n.inverseModel,n.model);for(var i=0;i<2;++i)for(var a=n.clipBounds[i],o=0;o<3;++o)a[o]=Math.min(Math.max(this.clipBounds[i][o],-1e8),1e8);n.kambient=this.ambientLight,n.kdiffuse=this.diffuseLight,n.kspecular=this.specularLight,n.roughness=this.roughness,n.fresnel=this.fresnel,n.opacity=this.opacity,n.height=0,n.permutation=R,n.vertexColor=this.vertexColor;var s=D;for(h(s,n.view,n.model),h(s,n.projection,s),p(s,s),i=0;i<3;++i)n.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 u=s[12+i];for(o=0;o<3;++o)u+=s[4*o+i]*this.lightPosition[o];n.lightPosition[i]=u/l}var c=O(n,this);if(c.showSurface){for(this._shader.bind(),this._shader.uniforms=n,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(r.TRIANGLES,this._vertexCount),i=0;i<3;++i)this.surfaceProject[i]&&this.vertexCount&&(this._shader.uniforms.model=c.projections[i],this._shader.uniforms.clipBounds=c.clipBounds[i],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(c.showContour){var f=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,f.bind(),f.uniforms=n;var d=this._contourVAO;for(d.bind(),i=0;i<3;++i)for(f.uniforms.permutation=M[i],r.lineWidth(this.contourWidth[i]*this.pixelRatio),o=0;o>4)/16)/255,i=Math.floor(n),a=n-i,o=t[1]*(e.value[1]+(15&e.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var u=r.position;u[0]=u[1]=u[2]=0;for(var c=0;c<2;++c)for(var f=c?a:1-a,d=0;d<2;++d)for(var h=i+c,p=s+d,m=f*(d?l:1-l),g=0;g<3;++g)u[g]+=this._field[g].get(h,p)*m;for(var y=this._pickResult.level,x=0;x<3;++x)if(y[x]=v.le(this.contourLevels[x],u[x]),y[x]<0)this.contourLevels[x].length>0&&(y[x]=0);else if(y[x]Math.abs(_-u[x])&&(y[x]+=1)}for(r.index[0]=a<.5?i:i+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/t[0],r.uv[1]=o/t[1],g=0;g<3;++g)r.dataCoordinate[g]=this._field[g].get(r.index[0],r.index[1]);return r},C.padField=function(e,t){var r=t.shape.slice(),n=e.shape.slice();u.assign(e.lo(1,1).hi(r[0],r[1]),t),u.assign(e.lo(1).hi(r[0],1),t.hi(r[0],1)),u.assign(e.lo(1,n[1]-1).hi(r[0],1),t.lo(0,r[1]-1).hi(r[0],1)),u.assign(e.lo(0,1).hi(1,r[1]),t.hi(1)),u.assign(e.lo(n[0]-1,1).hi(1,r[1]),t.lo(r[0]-1)),e.set(0,0,t.get(0,0)),e.set(0,n[1]-1,t.get(0,r[1]-1)),e.set(n[0]-1,0,t.get(r[0]-1,0)),e.set(n[0]-1,n[1]-1,t.get(r[0]-1,r[1]-1))},C.update=function(e){e=e||{},this.objectOffset=e.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in e&&(this.contourWidth=N(e.contourWidth,Number)),"showContour"in e&&(this.showContour=N(e.showContour,Boolean)),"showSurface"in e&&(this.showSurface=!!e.showSurface),"contourTint"in e&&(this.contourTint=N(e.contourTint,Boolean)),"contourColor"in e&&(this.contourColor=j(e.contourColor)),"contourProject"in e&&(this.contourProject=N(e.contourProject,(function(e){return N(e,Boolean)}))),"surfaceProject"in e&&(this.surfaceProject=e.surfaceProject),"dynamicColor"in e&&(this.dynamicColor=j(e.dynamicColor)),"dynamicTint"in e&&(this.dynamicTint=N(e.dynamicTint,Number)),"dynamicWidth"in e&&(this.dynamicWidth=N(e.dynamicWidth,Number)),"opacity"in e&&(this.opacity=e.opacity),"opacityscale"in e&&(this.opacityscale=e.opacityscale),"colorBounds"in e&&(this.colorBounds=e.colorBounds),"vertexColor"in e&&(this.vertexColor=e.vertexColor?1:0),"colormap"in e&&this._colorMap.setPixels(this.genColormap(e.colormap,this.opacityscale));var t=e.field||e.coords&&e.coords[2]||null,r=!1;if(t||(t=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 e||"coords"in e){var i=(t.shape[0]+2)*(t.shape[1]+2);i>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(i))),this._field[2]=f(this._field[2].data,[t.shape[0]+2,t.shape[1]+2]),this.padField(this._field[2],t),this.shape=t.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(e.coords){var l=e.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 u=l[o];for(g=0;g<2;++g)if(u.shape[g]!==a[g])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[o],u)}}else if(e.ticks){var c=e.ticks;if(!Array.isArray(c)||2!==c.length)throw new Error("gl-surface: invalid ticks");for(o=0;o<2;++o){var h=c[o];if((Array.isArray(h)||h.length)&&(h=f(h)),h.shape[0]!==a[o])throw new Error("gl-surface: invalid tick length");var p=f(h.data,a);p.stride[o]=h.stride[0],p.stride[1^o]=0,this.padField(this._field[o],p)}}else{for(o=0;o<2;++o){var v=[0,0];v[o]=1,this._field[o]=f(this._field[o].data,[a[0]+2,a[1]+2],v,0)}this._field[0].set(0,0,0);for(var g=0;g0){for(var xe=0;xe<5;++xe)J.pop();U-=1}continue e}J.push(ne[0],ne[1],oe[0],oe[1],ne[2]),U+=1}}re.push(U)}this._contourOffsets[Q]=te,this._contourCounts[Q]=re}var be=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,t.stride.slice()),u=0;"float32"===r?u=e.FLOAT:"float64"===r?(u=e.FLOAT,l=!1,r="float32"):"uint8"===r?u=e.UNSIGNED_BYTE:(u=e.UNSIGNED_BYTE,l=!1,r="uint8");var f,h,m=0;if(2===o.length)m=e.LUMINANCE,o=[o[0],o[1],1],t=n(t.data,o,[t.stride[0],t.stride[1],1],t.offset);else{if(3!==o.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===o[2])m=e.ALPHA;else if(2===o[2])m=e.LUMINANCE_ALPHA;else if(3===o[2])m=e.RGB;else{if(4!==o[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");m=e.RGBA}}u!==e.FLOAT||e.getExtension("OES_texture_float")||(u=e.UNSIGNED_BYTE,l=!1);var g=t.size;if(l)f=0===t.offset&&t.data.length===g?t.data:t.data.subarray(t.offset,t.offset+g);else{var y=[o[2],o[2]*o[0],1];h=a.malloc(g,r);var x=n(h,o,y,0);"float32"!==r&&"float64"!==r||u!==e.UNSIGNED_BYTE?i.assign(x,t):c(x,t),f=h.subarray(0,g)}var b=v(e);return e.texImage2D(e.TEXTURE_2D,0,m,o[0],o[1],0,m,u,f),l||a.free(h),new d(e,b,o[0],o[1],m,u)}(e,t)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")};var o=null,s=null,l=null;function u(e){return"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement||"undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement||"undefined"!=typeof ImageData&&e instanceof ImageData}var c=function(e,t){i.muls(e,t,255)};function f(e,t,r){var n=e.gl,i=n.getParameter(n.MAX_TEXTURE_SIZE);if(t<0||t>i||r<0||r>i)throw new Error("gl-texture2d: Invalid texture size");return e._shape=[t,r],e.bind(),n.texImage2D(n.TEXTURE_2D,0,e.format,t,r,0,e.format,e.type,null),e._mipLevels=[0],e}function d(e,t,r,n,i,a){this.gl=e,this.handle=t,this.format=i,this.type=a,this._shape=[r,n],this._mipLevels=[0],this._magFilter=e.NEAREST,this._minFilter=e.NEAREST,this._wrapS=e.CLAMP_TO_EDGE,this._wrapT=e.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(e){return o.wrapS=e}},{get:function(){return o._wrapT},set:function(e){return o.wrapT=e}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(e){return o.width=e}},{get:function(){return o._shape[1]},set:function(e){return o.height=e}}]),this._shapeVector=l}var h=d.prototype;function p(e,t){return 3===e.length?1===t[2]&&t[1]===e[0]*e[2]&&t[0]===e[2]:1===t[0]&&t[1]===e[0]}function v(e){var t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),t}function m(e,t,r,n,i){var a=e.getParameter(e.MAX_TEXTURE_SIZE);if(t<0||t>a||r<0||r>a)throw new Error("gl-texture2d: Invalid texture shape");if(i===e.FLOAT&&!e.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var o=v(e);return e.texImage2D(e.TEXTURE_2D,0,n,t,r,0,n,i,null),new d(e,o,t,r,n,i)}Object.defineProperties(h,{minFilter:{get:function(){return this._minFilter},set:function(e){this.bind();var t=this.gl;if(this.type===t.FLOAT&&o.indexOf(e)>=0&&(t.getExtension("OES_texture_float_linear")||(e=t.NEAREST)),s.indexOf(e)<0)throw new Error("gl-texture2d: Unknown filter mode "+e);return t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,e),this._minFilter=e}},magFilter:{get:function(){return this._magFilter},set:function(e){this.bind();var t=this.gl;if(this.type===t.FLOAT&&o.indexOf(e)>=0&&(t.getExtension("OES_texture_float_linear")||(e=t.NEAREST)),s.indexOf(e)<0)throw new Error("gl-texture2d: Unknown filter mode "+e);return t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,e),this._magFilter=e}},mipSamples:{get:function(){return this._anisoSamples},set:function(e){var t=this._anisoSamples;if(this._anisoSamples=0|Math.max(e,1),t!==this._anisoSamples){var r=this.gl.getExtension("EXT_texture_filter_anisotropic");r&&this.gl.texParameterf(this.gl.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(e){if(this.bind(),l.indexOf(e)<0)throw new Error("gl-texture2d: Unknown wrap mode "+e);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,e),this._wrapS=e}},wrapT:{get:function(){return this._wrapT},set:function(e){if(this.bind(),l.indexOf(e)<0)throw new Error("gl-texture2d: Unknown wrap mode "+e);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,e),this._wrapT=e}},wrap:{get:function(){return this._wrapVector},set:function(e){if(Array.isArray(e)||(e=[e,e]),2!==e.length)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var t=0;t<2;++t)if(l.indexOf(e[t])<0)throw new Error("gl-texture2d: Unknown wrap mode "+e);this._wrapS=e[0],this._wrapT=e[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),e}},shape:{get:function(){return this._shapeVector},set:function(e){if(Array.isArray(e)){if(2!==e.length)throw new Error("gl-texture2d: Invalid texture shape")}else e=[0|e,0|e];return f(this,0|e[0],0|e[1]),[0|e[0],0|e[1]]}},width:{get:function(){return this._shape[0]},set:function(e){return f(this,e|=0,this._shape[1]),e}},height:{get:function(){return this._shape[1]},set:function(e){return e|=0,f(this,this._shape[0],e),e}}}),h.bind=function(e){var t=this.gl;return void 0!==e&&t.activeTexture(t.TEXTURE0+(0|e)),t.bindTexture(t.TEXTURE_2D,this.handle),void 0!==e?0|e:t.getParameter(t.ACTIVE_TEXTURE)-t.TEXTURE0},h.dispose=function(){this.gl.deleteTexture(this.handle)},h.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var e=Math.min(this._shape[0],this._shape[1]),t=0;e>0;++t,e>>>=1)this._mipLevels.indexOf(t)<0&&this._mipLevels.push(t)},h.setPixels=function(e,t,r,o){var s=this.gl;this.bind(),Array.isArray(t)?(o=r,r=0|t[1],t=0|t[0]):(t=t||0,r=r||0),o=o||0;var l=u(e)?e:e.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,t,r,this.format,this.type,l);else{if(!(e.shape&&e.stride&&e.data))throw new Error("gl-texture2d: Unsupported data type");if(e.shape.length<2||t+e.shape[1]>this._shape[1]>>>o||r+e.shape[0]>this._shape[0]>>>o||t<0||r<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");!function(e,t,r,o,s,l,u,f){var d=f.dtype,h=f.shape.slice();if(h.length<2||h.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var v=0,m=0,g=p(h,f.stride.slice());if("float32"===d?v=e.FLOAT:"float64"===d?(v=e.FLOAT,g=!1,d="float32"):"uint8"===d?v=e.UNSIGNED_BYTE:(v=e.UNSIGNED_BYTE,g=!1,d="uint8"),2===h.length)m=e.LUMINANCE,h=[h[0],h[1],1],f=n(f.data,h,[f.stride[0],f.stride[1],1],f.offset);else{if(3!==h.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===h[2])m=e.ALPHA;else if(2===h[2])m=e.LUMINANCE_ALPHA;else if(3===h[2])m=e.RGB;else{if(4!==h[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");m=e.RGBA}h[2]}if(m!==e.LUMINANCE&&m!==e.ALPHA||s!==e.LUMINANCE&&s!==e.ALPHA||(m=s),m!==s)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var y=f.size,x=u.indexOf(o)<0;if(x&&u.push(o),v===l&&g)0===f.offset&&f.data.length===y?x?e.texImage2D(e.TEXTURE_2D,o,s,h[0],h[1],0,s,l,f.data):e.texSubImage2D(e.TEXTURE_2D,o,t,r,h[0],h[1],s,l,f.data):x?e.texImage2D(e.TEXTURE_2D,o,s,h[0],h[1],0,s,l,f.data.subarray(f.offset,f.offset+y)):e.texSubImage2D(e.TEXTURE_2D,o,t,r,h[0],h[1],s,l,f.data.subarray(f.offset,f.offset+y));else{var b;b=l===e.FLOAT?a.mallocFloat32(y):a.mallocUint8(y);var _=n(b,h,[h[2],h[2]*h[0],1]);v===e.FLOAT&&l===e.UNSIGNED_BYTE?c(_,f):i.assign(_,f),x?e.texImage2D(e.TEXTURE_2D,o,s,h[0],h[1],0,s,l,b.subarray(0,y)):e.texSubImage2D(e.TEXTURE_2D,o,t,r,h[0],h[1],s,l,b.subarray(0,y)),l===e.FLOAT?a.freeFloat32(b):a.freeUint8(b)}}(s,t,r,o,this.format,this.type,this._mipLevels,e)}}},3056:function(e){"use strict";e.exports=function(e,t,r){t?t.bind():e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,null);var n=0|e.getParameter(e.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error("gl-vao: Too many vertex attributes");for(var i=0;i1?0:Math.acos(s)};var n=r(5415),i=r(899),a=r(9305)},8827:function(e){e.exports=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e}},7622:function(e){e.exports=function(e){var t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},8782:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},8501:function(e){e.exports=function(){var e=new Float32Array(3);return e[0]=0,e[1]=0,e[2]=0,e}},903:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2];return e[0]=i*l-a*s,e[1]=a*o-n*l,e[2]=n*s-i*o,e}},5981:function(e,t,r){e.exports=r(8288)},8288:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2];return Math.sqrt(r*r+n*n+i*i)}},8629:function(e,t,r){e.exports=r(7979)},7979:function(e){e.exports=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e}},9305:function(e){e.exports=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}},154:function(e){e.exports=1e-6},4932:function(e,t,r){e.exports=function(e,t){var r=e[0],i=e[1],a=e[2],o=t[0],s=t[1],l=t[2];return Math.abs(r-o)<=n*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(i-s)<=n*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(a-l)<=n*Math.max(1,Math.abs(a),Math.abs(l))};var n=r(154)},5777:function(e){e.exports=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}},3306:function(e){e.exports=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e}},7447:function(e,t,r){e.exports=function(e,t,r,i,a,o){var s,l;for(t||(t=3),r||(r=0),l=i?Math.min(i*t+r,e.length):e.length,s=r;s0&&(a=1/Math.sqrt(a),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a),e}},6660:function(e){e.exports=function(e,t){t=t||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,i=Math.sqrt(1-n*n)*t;return e[0]=Math.cos(r)*i,e[1]=Math.sin(r)*i,e[2]=n*t,e}},392:function(e){e.exports=function(e,t,r,n){var i=r[1],a=r[2],o=t[1]-i,s=t[2]-a,l=Math.sin(n),u=Math.cos(n);return e[0]=t[0],e[1]=i+o*u-s*l,e[2]=a+o*l+s*u,e}},3222:function(e){e.exports=function(e,t,r,n){var i=r[0],a=r[2],o=t[0]-i,s=t[2]-a,l=Math.sin(n),u=Math.cos(n);return e[0]=i+s*l+o*u,e[1]=t[1],e[2]=a+s*u-o*l,e}},3388:function(e){e.exports=function(e,t,r,n){var i=r[0],a=r[1],o=t[0]-i,s=t[1]-a,l=Math.sin(n),u=Math.cos(n);return e[0]=i+o*u-s*l,e[1]=a+o*l+s*u,e[2]=t[2],e}},1624:function(e){e.exports=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e}},5685:function(e){e.exports=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e}},6722:function(e){e.exports=function(e,t,r,n){return e[0]=t[0]+r[0]*n,e[1]=t[1]+r[1]*n,e[2]=t[2]+r[2]*n,e}},831:function(e){e.exports=function(e,t,r,n){return e[0]=t,e[1]=r,e[2]=n,e}},5294:function(e,t,r){e.exports=r(6403)},3303:function(e,t,r){e.exports=r(4337)},6403:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2];return r*r+n*n+i*i}},4337:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2];return t*t+r*r+n*n}},8921:function(e,t,r){e.exports=r(911)},911:function(e){e.exports=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e}},9908:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2];return e[0]=n*r[0]+i*r[3]+a*r[6],e[1]=n*r[1]+i*r[4]+a*r[7],e[2]=n*r[2]+i*r[5]+a*r[8],e}},3255:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[3]*n+r[7]*i+r[11]*a+r[15];return o=o||1,e[0]=(r[0]*n+r[4]*i+r[8]*a+r[12])/o,e[1]=(r[1]*n+r[5]*i+r[9]*a+r[13])/o,e[2]=(r[2]*n+r[6]*i+r[10]*a+r[14])/o,e}},6568:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2],u=r[3],c=u*n+s*a-l*i,f=u*i+l*n-o*a,d=u*a+o*i-s*n,h=-o*n-s*i-l*a;return e[0]=c*u+h*-o+f*-l-d*-s,e[1]=f*u+h*-s+d*-o-c*-l,e[2]=d*u+h*-l+c*-s-f*-o,e}},3433:function(e){e.exports=function(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e[3]=t[3]+r[3],e}},1413:function(e){e.exports=function(e){var t=new Float32Array(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},3470:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},5313:function(e){e.exports=function(){var e=new Float32Array(4);return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e}},5446:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2],a=t[3]-e[3];return Math.sqrt(r*r+n*n+i*i+a*a)}},205:function(e){e.exports=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e[3]=t[3]/r[3],e}},4242:function(e){e.exports=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}},5680:function(e){e.exports=function(e,t,r,n){var i=new Float32Array(4);return i[0]=e,i[1]=t,i[2]=r,i[3]=n,i}},4020:function(e,t,r){e.exports={create:r(5313),clone:r(1413),fromValues:r(5680),copy:r(3470),set:r(6453),add:r(3433),subtract:r(2705),multiply:r(746),divide:r(205),min:r(2170),max:r(3030),scale:r(5510),scaleAndAdd:r(4224),distance:r(5446),squaredDistance:r(1542),length:r(8177),squaredLength:r(9037),negate:r(6459),inverse:r(8057),normalize:r(381),dot:r(4242),lerp:r(8746),random:r(3770),transformMat4:r(6342),transformQuat:r(5022)}},8057:function(e){e.exports=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e}},8177:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2],i=e[3];return Math.sqrt(t*t+r*r+n*n+i*i)}},8746:function(e){e.exports=function(e,t,r,n){var i=t[0],a=t[1],o=t[2],s=t[3];return e[0]=i+n*(r[0]-i),e[1]=a+n*(r[1]-a),e[2]=o+n*(r[2]-o),e[3]=s+n*(r[3]-s),e}},3030:function(e){e.exports=function(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e[2]=Math.max(t[2],r[2]),e[3]=Math.max(t[3],r[3]),e}},2170:function(e){e.exports=function(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e[2]=Math.min(t[2],r[2]),e[3]=Math.min(t[3],r[3]),e}},746:function(e){e.exports=function(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e[2]=t[2]*r[2],e[3]=t[3]*r[3],e}},6459:function(e){e.exports=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e}},381:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r*r+n*n+i*i+a*a;return o>0&&(o=1/Math.sqrt(o),e[0]=r*o,e[1]=n*o,e[2]=i*o,e[3]=a*o),e}},3770:function(e,t,r){var n=r(381),i=r(5510);e.exports=function(e,t){return t=t||1,e[0]=Math.random(),e[1]=Math.random(),e[2]=Math.random(),e[3]=Math.random(),n(e,e),i(e,e,t),e}},5510:function(e){e.exports=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e}},4224:function(e){e.exports=function(e,t,r,n){return e[0]=t[0]+r[0]*n,e[1]=t[1]+r[1]*n,e[2]=t[2]+r[2]*n,e[3]=t[3]+r[3]*n,e}},6453:function(e){e.exports=function(e,t,r,n,i){return e[0]=t,e[1]=r,e[2]=n,e[3]=i,e}},1542:function(e){e.exports=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2],a=t[3]-e[3];return r*r+n*n+i*i+a*a}},9037:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2],i=e[3];return t*t+r*r+n*n+i*i}},2705:function(e){e.exports=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e[3]=t[3]-r[3],e}},6342:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3];return e[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,e[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,e[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,e[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,e}},5022:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2],u=r[3],c=u*n+s*a-l*i,f=u*i+l*n-o*a,d=u*a+o*i-s*n,h=-o*n-s*i-l*a;return e[0]=c*u+h*-o+f*-l-d*-s,e[1]=f*u+h*-s+d*-o-c*-l,e[2]=d*u+h*-l+c*-s-f*-o,e[3]=t[3],e}},9365:function(e,t,r){var n=r(8096),i=r(7896);e.exports=function(e){for(var t=Array.isArray(e)?e:n(e),r=0;r0)continue;r=e.slice(0,1).join("")}return B(r),P+=r.length,(S=S.slice(r.length)).length}}function Y(){return/[^a-fA-F0-9]/.test(t)?(B(S.join("")),A=l,T):(S.push(t),r=t,T+1)}function Z(){return"."===t||/[eE]/.test(t)?(S.push(t),A=v,r=t,T+1):"x"===t&&1===S.length&&"0"===S[0]?(A=_,S.push(t),r=t,T+1):/[^\d]/.test(t)?(B(S.join("")),A=l,T):(S.push(t),r=t,T+1)}function X(){return"f"===t&&(S.push(t),r=t,T+=1),/[eE]/.test(t)?(S.push(t),r=t,T+1):("-"!==t&&"+"!==t||!/[eE]/.test(r))&&/[^\d]/.test(t)?(B(S.join("")),A=l,T):(S.push(t),r=t,T+1)}function K(){if(/[^\d\w_]/.test(t)){var e=S.join("");return A=N[e]?y:F[e]?g:m,B(S.join("")),A=l,T}return S.push(t),r=t,T+1}};var n=r(399),i=r(9746),a=r(9525),o=r(9458),s=r(3585),l=999,u=9999,c=0,f=1,d=2,h=3,p=4,v=5,m=6,g=7,y=8,x=9,b=10,_=11,w=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},3585:function(e,t,r){var n=r(9525);n=n.slice().filter((function(e){return!/^(gl\_|texture)/.test(e)})),e.exports=n.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(e){e.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(e,t,r){var n=r(399);e.exports=n.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(e){e.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(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},8096:function(e,t,r){var n=r(3193);e.exports=function(e,t){var r=n(t),i=[];return i=(i=i.concat(r(e))).concat(r(null))}},6832:function(e){e.exports=function(e){"string"===typeof e&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n0;)for(var s=(e=o.pop()).adjacent,l=0;l<=r;++l){var u=s[l];if(u.boundary&&!(u.lastVisited<=-n)){for(var c=u.vertices,f=0;f<=r;++f){var d=c[f];i[f]=d<0?t:a[d]}var h=this.orient();if(h>0)return u;u.lastVisited=-n,0===h&&o.push(u)}}return null},c.walk=function(e,t){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,a=this.tuple,o=t?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];e:for(;!s.boundary;){for(var l=s.vertices,u=s.adjacent,c=0;c<=n;++c)a[c]=i[l[c]];for(s.lastVisited=r,c=0;c<=n;++c){var f=u[c];if(!(f.lastVisited>=r)){var d=a[c];a[c]=e;var h=this.orient();if(a[c]=d,h<0){s=f;continue e}f.boundary?f.lastVisited=-r:f.lastVisited=r}}return}return s},c.addPeaks=function(e,t){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,l=this.tuple,u=this.interior,c=this.simplices,f=[t];t.lastVisited=r,t.vertices[t.vertices.indexOf(-1)]=r,t.boundary=!1,u.push(t);for(var d=[];f.length>0;){var h=(t=f.pop()).vertices,p=t.adjacent,v=h.indexOf(r);if(!(v<0))for(var m=0;m<=n;++m)if(m!==v){var g=p[m];if(g.boundary&&!(g.lastVisited>=r)){var y=g.vertices;if(g.lastVisited!==-r){for(var x=0,b=0;b<=n;++b)y[b]<0?(x=b,l[b]=e):l[b]=i[y[b]];if(this.orient()>0){y[x]=r,g.boundary=!1,u.push(g),f.push(g),g.lastVisited=r;continue}g.lastVisited=-r}var _=g.adjacent,w=h.slice(),k=p.slice(),T=new a(w,k,!0);c.push(T);var M=_.indexOf(t);if(!(M<0))for(_[M]=T,k[v]=g,w[m]=-1,k[m]=t,p[m]=T,T.flip(),b=0;b<=n;++b){var A=w[b];if(!(A<0||A===r)){for(var S=new Array(n-1),E=0,C=0;C<=n;++C){var L=w[C];L<0||C===b||(S[E++]=L)}d.push(new o(S,T,b))}}}}}for(d.sort(s),m=0;m+1=0?o[l++]=s[c]:u=1&c;if(u===(1&e)){var f=o[0];o[0]=o[1],o[1]=f}t.push(o)}}return t}},9014:function(e,t,r){"use strict";var n=r(5070),i=0,a=1;function o(e,t,r,n,i){this.mid=e,this.left=t,this.right=r,this.leftPoints=n,this.rightPoints=i,this.count=(t?t.count:0)+(r?r.count:0)+n.length}e.exports=function(e){return e&&0!==e.length?new x(y(e)):new x(null)};var s=o.prototype;function l(e,t){e.mid=t.mid,e.left=t.left,e.right=t.right,e.leftPoints=t.leftPoints,e.rightPoints=t.rightPoints,e.count=t.count}function u(e,t){var r=y(t);e.mid=r.mid,e.left=r.left,e.right=r.right,e.leftPoints=r.leftPoints,e.rightPoints=r.rightPoints,e.count=r.count}function c(e,t){var r=e.intervals([]);r.push(t),u(e,r)}function f(e,t){var r=e.intervals([]),n=r.indexOf(t);return n<0?i:(r.splice(n,1),u(e,r),a)}function d(e,t,r){for(var n=0;n=0&&e[n][1]>=t;--n){var i=r(e[n]);if(i)return i}}function p(e,t){for(var r=0;r>1],i=[],a=[],s=[];for(r=0;r3*(t+1)?c(this,e):this.left.insert(e):this.left=y([e]);else if(e[0]>this.mid)this.right?4*(this.right.count+1)>3*(t+1)?c(this,e):this.right.insert(e):this.right=y([e]);else{var r=n.ge(this.leftPoints,e,m),i=n.ge(this.rightPoints,e,g);this.leftPoints.splice(r,0,e),this.rightPoints.splice(i,0,e)}},s.remove=function(e){var t=this.count-this.leftPoints;if(e[1]3*(t-1)?f(this,e):2===(u=this.left.remove(e))?(this.left=null,this.count-=1,a):(u===a&&(this.count-=1),u):i;if(e[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(t-1)?f(this,e):2===(u=this.right.remove(e))?(this.right=null,this.count-=1,a):(u===a&&(this.count-=1),u):i;if(1===this.count)return this.leftPoints[0]===e?2:i;if(1===this.leftPoints.length&&this.leftPoints[0]===e){if(this.left&&this.right){for(var r=this,o=this.left;o.right;)r=o,o=o.right;if(r===this)o.right=this.right;else{var s=this.left,u=this.right;r.count-=o.count,r.right=o.left,o.left=s,o.right=u}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=n.ge(this.leftPoints,e,m);sthis.mid?this.right&&(r=this.right.queryPoint(e,t))?r:h(this.rightPoints,e,t):p(this.leftPoints,t);var r},s.queryInterval=function(e,t,r){var n;return ethis.mid&&this.right&&(n=this.right.queryInterval(e,t,r))?n:tthis.mid?h(this.rightPoints,e,r):p(this.leftPoints,r)};var b=x.prototype;b.insert=function(e){this.root?this.root.insert(e):this.root=new o(e[0],null,null,[e],[e])},b.remove=function(e){if(this.root){var t=this.root.remove(e);return 2===t&&(this.root=null),t!==i}return!1},b.queryPoint=function(e,t){if(this.root)return this.root.queryPoint(e,t)},b.queryInterval=function(e,t,r){if(e<=t&&this.root)return this.root.queryInterval(e,t,r)},Object.defineProperty(b,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(b,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}})},9560:function(e){"use strict";e.exports=function(e){for(var t=new Array(e),r=0;r13)&&32!==t&&133!==t&&160!==t&&5760!==t&&6158!==t&&(t<8192||t>8205)&&8232!==t&&8233!==t&&8239!==t&&8287!==t&&8288!==t&&12288!==t&&65279!==t)return!1;return!0}},3578:function(e){e.exports=function(e,t,r){return e*(1-r)+t*r}},7191:function(e,t,r){var n=r(4690),i=r(9823),a=r(7332),o=r(7787),s=r(7437),l=r(2142),u={length:r(4693),normalize:r(899),dot:r(9305),cross:r(903)},c=i(),f=i(),d=[0,0,0,0],h=[[0,0,0],[0,0,0],[0,0,0]],p=[0,0,0];function v(e,t,r,n,i){e[0]=t[0]*n+r[0]*i,e[1]=t[1]*n+r[1]*i,e[2]=t[2]*n+r[2]*i}e.exports=function(e,t,r,i,m,g){if(t||(t=[0,0,0]),r||(r=[0,0,0]),i||(i=[0,0,0]),m||(m=[0,0,0,1]),g||(g=[0,0,0,1]),!n(c,e))return!1;if(a(f,c),f[3]=0,f[7]=0,f[11]=0,f[15]=1,Math.abs(o(f)<1e-8))return!1;var y,x,b=c[3],_=c[7],w=c[11],k=c[12],T=c[13],M=c[14],A=c[15];if(0!==b||0!==_||0!==w){if(d[0]=b,d[1]=_,d[2]=w,d[3]=A,!s(f,f))return!1;l(f,f),function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3];e[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,e[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,e[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,e[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o}(m,d,f)}else m[0]=m[1]=m[2]=0,m[3]=1;if(t[0]=k,t[1]=T,t[2]=M,x=c,(y=h)[0][0]=x[0],y[0][1]=x[1],y[0][2]=x[2],y[1][0]=x[4],y[1][1]=x[5],y[1][2]=x[6],y[2][0]=x[8],y[2][1]=x[9],y[2][2]=x[10],r[0]=u.length(h[0]),u.normalize(h[0],h[0]),i[0]=u.dot(h[0],h[1]),v(h[1],h[1],h[0],1,-i[0]),r[1]=u.length(h[1]),u.normalize(h[1],h[1]),i[0]/=r[1],i[1]=u.dot(h[0],h[2]),v(h[2],h[2],h[0],1,-i[1]),i[2]=u.dot(h[1],h[2]),v(h[2],h[2],h[1],1,-i[2]),r[2]=u.length(h[2]),u.normalize(h[2],h[2]),i[1]/=r[2],i[2]/=r[2],u.cross(p,h[1],h[2]),u.dot(h[0],p)<0)for(var S=0;S<3;S++)r[S]*=-1,h[S][0]*=-1,h[S][1]*=-1,h[S][2]*=-1;return g[0]=.5*Math.sqrt(Math.max(1+h[0][0]-h[1][1]-h[2][2],0)),g[1]=.5*Math.sqrt(Math.max(1-h[0][0]+h[1][1]-h[2][2],0)),g[2]=.5*Math.sqrt(Math.max(1-h[0][0]-h[1][1]+h[2][2],0)),g[3]=.5*Math.sqrt(Math.max(1+h[0][0]+h[1][1]+h[2][2],0)),h[2][1]>h[1][2]&&(g[0]=-g[0]),h[0][2]>h[2][0]&&(g[1]=-g[1]),h[1][0]>h[0][1]&&(g[2]=-g[2]),!0}},4690:function(e){e.exports=function(e,t){var r=t[15];if(0===r)return!1;for(var n=1/r,i=0;i<16;i++)e[i]=t[i]*n;return!0}},7649:function(e,t,r){var n=r(1868),i=r(1102),a=r(7191),o=r(7787),s=r(1116),l=f(),u=f(),c=f();function f(){return{translate:d(),scale:d(1),skew:d(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function d(e){return[e||0,e||0,e||0]}e.exports=function(e,t,r,f){if(0===o(t)||0===o(r))return!1;var d=a(t,l.translate,l.scale,l.skew,l.perspective,l.quaternion),h=a(r,u.translate,u.scale,u.skew,u.perspective,u.quaternion);return!(!d||!h)&&(n(c.translate,l.translate,u.translate,f),n(c.skew,l.skew,u.skew,f),n(c.scale,l.scale,u.scale,f),n(c.perspective,l.perspective,u.perspective,f),s(c.quaternion,l.quaternion,u.quaternion,f),i(e,c.translate,c.scale,c.skew,c.perspective,c.quaternion),!0)}},1102:function(e,t,r){var n={identity:r(9947),translate:r(998),multiply:r(104),create:r(9823),scale:r(3668),fromRotationTranslation:r(7280)},i=(n.create(),n.create());e.exports=function(e,t,r,a,o,s){return n.identity(e),n.fromRotationTranslation(e,s,t),e[3]=o[0],e[7]=o[1],e[11]=o[2],e[15]=o[3],n.identity(i),0!==a[2]&&(i[9]=a[2],n.multiply(e,e,i)),0!==a[1]&&(i[9]=0,i[8]=a[1],n.multiply(e,e,i)),0!==a[0]&&(i[8]=0,i[4]=a[0],n.multiply(e,e,i)),n.scale(e,e,r),e}},9298:function(e,t,r){"use strict";var n=r(5070),i=r(7649),a=r(7437),o=r(6109),s=r(7115),l=r(5240),u=r(3012),c=r(998),f=(r(3668),r(899)),d=[0,0,0];function h(e){this._components=e.slice(),this._time=[0],this.prevMatrix=e.slice(),this.nextMatrix=e.slice(),this.computedMatrix=e.slice(),this.computedInverse=e.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]}e.exports=function(e){return new h((e=e||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var p=h.prototype;p.recalcMatrix=function(e){var t=this._time,r=n.le(t,e),o=this.computedMatrix;if(!(r<0)){var s=this._components;if(r===t.length-1)for(var l=16*r,u=0;u<16;++u)o[u]=s[l++];else{var c=t[r+1]-t[r],d=(l=16*r,this.prevMatrix),h=!0;for(u=0;u<16;++u)d[u]=s[l++];var p=this.nextMatrix;for(u=0;u<16;++u)p[u]=s[l++],h=h&&d[u]===p[u];if(c<1e-6||h)for(u=0;u<16;++u)o[u]=d[u];else i(o,d,p,(e-t[r])/c)}var v=this.computedUp;v[0]=o[1],v[1]=o[5],v[2]=o[9],f(v,v);var m=this.computedInverse;a(m,o);var g=this.computedEye,y=m[15];g[0]=m[12]/y,g[1]=m[13]/y,g[2]=m[14]/y;var x=this.computedCenter,b=Math.exp(this.computedRadius[0]);for(u=0;u<3;++u)x[u]=g[u]-o[2+4*u]*b}},p.idle=function(e){if(!(e1&&n(e[o[c-2]],e[o[c-1]],u)<=0;)c-=1,o.pop();for(o.push(l),c=s.length;c>1&&n(e[s[c-2]],e[s[c-1]],u)>=0;)c-=1,s.pop();s.push(l)}r=new Array(s.length+o.length-2);for(var f=0,d=(i=0,o.length);i0;--h)r[f++]=s[h];return r};var n=r(417)[3]},6145:function(e,t,r){"use strict";e.exports=function(e,t){t||(t=e,e=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(e){var t=!1;return"altKey"in e&&(t=t||e.altKey!==o.alt,o.alt=!!e.altKey),"shiftKey"in e&&(t=t||e.shiftKey!==o.shift,o.shift=!!e.shiftKey),"ctrlKey"in e&&(t=t||e.ctrlKey!==o.control,o.control=!!e.ctrlKey),"metaKey"in e&&(t=t||e.metaKey!==o.meta,o.meta=!!e.metaKey),t}function u(e,s){var u=n.x(s),c=n.y(s);"buttons"in s&&(e=0|s.buttons),(e!==r||u!==i||c!==a||l(s))&&(r=0|e,i=u||0,a=c||0,t&&t(r,i,a,o))}function c(e){u(0,e)}function f(){(r||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,r=0,o.shift=o.alt=o.control=o.meta=!1,t&&t(0,0,0,o))}function d(e){l(e)&&t&&t(r,i,a,o)}function h(e){0===n.buttons(e)?u(0,e):u(r,e)}function p(e){u(r|n.buttons(e),e)}function v(e){u(r&~n.buttons(e),e)}function m(){s||(s=!0,e.addEventListener("mousemove",h),e.addEventListener("mousedown",p),e.addEventListener("mouseup",v),e.addEventListener("mouseleave",c),e.addEventListener("mouseenter",c),e.addEventListener("mouseout",c),e.addEventListener("mouseover",c),e.addEventListener("blur",f),e.addEventListener("keyup",d),e.addEventListener("keydown",d),e.addEventListener("keypress",d),e!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",d),window.addEventListener("keydown",d),window.addEventListener("keypress",d)))}m();var g={element:e};return Object.defineProperties(g,{enabled:{get:function(){return s},set:function(t){t?m():s&&(s=!1,e.removeEventListener("mousemove",h),e.removeEventListener("mousedown",p),e.removeEventListener("mouseup",v),e.removeEventListener("mouseleave",c),e.removeEventListener("mouseenter",c),e.removeEventListener("mouseout",c),e.removeEventListener("mouseover",c),e.removeEventListener("blur",f),e.removeEventListener("keyup",d),e.removeEventListener("keydown",d),e.removeEventListener("keypress",d),e!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",d),window.removeEventListener("keydown",d),window.removeEventListener("keypress",d)))},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),g};var n=r(4110)},2565:function(e){var t={left:0,top:0};e.exports=function(e,r,n){r=r||e.currentTarget||e.srcElement,Array.isArray(n)||(n=[0,0]);var i,a=e.clientX||0,o=e.clientY||0,s=(i=r)===window||i===document||i===document.body?t:i.getBoundingClientRect();return n[0]=a-s.left,n[1]=o-s.top,n}},4110:function(e,t){"use strict";function r(e){return e.target||e.srcElement||window}t.buttons=function(e){if("object"===typeof e){if("buttons"in e)return e.buttons;if("which"in e){if(2===(t=e.which))return 4;if(3===t)return 2;if(t>0)return 1<=0)return 1< 0"),"function"!==typeof e.vertex&&t("Must specify vertex creation function"),"function"!==typeof e.cell&&t("Must specify cell creation function"),"function"!==typeof e.phase&&t("Must specify phase function");for(var s=e.getters||[],l=new Array(a),u=0;u=0?l[u]=!0:l[u]=!1;return function(e,t,r,a,o,s){var l=[s,o].join(",");return(0,i[l])(e,t,r,n.mallocUint32,n.freeUint32)}(e.vertex,e.cell,e.phase,0,r,l)};var i={"false,0,1":function(e,t,r,n,i){return function(a,o,s,l){var u,c=0|a.shape[0],f=0|a.shape[1],d=a.data,h=0|a.offset,p=0|a.stride[0],v=0|a.stride[1],m=h,g=0|-p,y=0,x=0|-v,b=0,_=-p-v|0,w=0,k=0|p,T=v-p*c|0,M=0,A=0,S=0,E=2*c|0,C=n(E),L=n(E),P=0,O=0,I=-1,D=-1,R=0,z=0|-c,F=0|c,N=0,B=-c-1|0,j=c-1|0,U=0,V=0,H=0;for(M=0;M0){if(A=1,C[P++]=r(d[m],o,s,l),m+=k,c>0)for(M=1,u=d[m],O=C[P]=r(u,o,s,l),R=C[P+I],N=C[P+z],U=C[P+B],O===R&&O===N&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,R,N,U,o,s,l),V=L[P]=S++),P+=1,m+=k,M=2;M0)for(M=1,u=d[m],O=C[P]=r(u,o,s,l),R=C[P+I],N=C[P+z],U=C[P+B],O===R&&O===N&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,R,N,U,o,s,l),V=L[P]=S++,U!==N&&t(L[P+z],V,b,w,N,U,o,s,l)),P+=1,m+=k,M=2;M0){if(M=1,C[P++]=r(d[m],o,s,l),m+=k,f>0)for(A=1,u=d[m],O=C[P]=r(u,o,s,l),N=C[P+z],R=C[P+I],U=C[P+B],O===N&&O===R&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,N,R,U,o,s,l),V=L[P]=S++),P+=1,m+=k,A=2;A0)for(A=1,u=d[m],O=C[P]=r(u,o,s,l),N=C[P+z],R=C[P+I],U=C[P+B],O===N&&O===R&&O===U||(y=d[m+g],b=d[m+x],w=d[m+_],e(M,A,u,y,b,w,O,N,R,U,o,s,l),V=L[P]=S++,U!==N&&t(L[P+z],V,w,y,U,N,o,s,l)),P+=1,m+=k,A=2;A2&&a[1]>2&&n(i.pick(-1,-1).lo(1,1).hi(a[0]-2,a[1]-2),e.pick(-1,-1,0).lo(1,1).hi(a[0]-2,a[1]-2),e.pick(-1,-1,1).lo(1,1).hi(a[0]-2,a[1]-2)),a[1]>2&&(r(i.pick(0,-1).lo(1).hi(a[1]-2),e.pick(0,-1,1).lo(1).hi(a[1]-2)),t(e.pick(0,-1,0).lo(1).hi(a[1]-2))),a[1]>2&&(r(i.pick(a[0]-1,-1).lo(1).hi(a[1]-2),e.pick(a[0]-1,-1,1).lo(1).hi(a[1]-2)),t(e.pick(a[0]-1,-1,0).lo(1).hi(a[1]-2))),a[0]>2&&(r(i.pick(-1,0).lo(1).hi(a[0]-2),e.pick(-1,0,0).lo(1).hi(a[0]-2)),t(e.pick(-1,0,1).lo(1).hi(a[0]-2))),a[0]>2&&(r(i.pick(-1,a[1]-1).lo(1).hi(a[0]-2),e.pick(-1,a[1]-1,0).lo(1).hi(a[0]-2)),t(e.pick(-1,a[1]-1,1).lo(1).hi(a[0]-2))),e.set(0,0,0,0),e.set(0,0,1,0),e.set(a[0]-1,0,0,0),e.set(a[0]-1,0,1,0),e.set(0,a[1]-1,0,0),e.set(0,a[1]-1,1,0),e.set(a[0]-1,a[1]-1,0,0),e.set(a[0]-1,a[1]-1,1,0),e}}e.exports=function(e,t,r){return Array.isArray(r)||(r=n(t.dimension,"string"===typeof r?r:"clamp")),0===t.size?e:0===t.dimension?(e.set(0),e):function(e){var t=e.join();if(a=c[t])return a;for(var r=e.length,n=[f,d],i=1;i<=r;++i)n.push(h(i));var a=p.apply(void 0,n);return c[t]=a,a}(r)(e,t)}},3581:function(e){"use strict";function t(e,t){var r=Math.floor(t),n=t-r,i=0<=r&&r0;){x<64?(l=x,x=0):(l=64,x-=64);for(var b=0|e[1];b>0;){b<64?(u=b,b=0):(u=64,b-=64),n=g+x*f+b*d,o=y+x*p+b*v;var _=0,w=0,k=0,T=h,M=f-c*h,A=d-l*f,S=m,E=p-c*m,C=v-l*p;for(k=0;k0;){v<64?(l=v,v=0):(l=64,v-=64);for(var m=0|e[0];m>0;){m<64?(s=m,m=0):(s=64,m-=64),n=h+v*c+m*u,o=p+v*d+m*f;var g=0,y=0,x=c,b=u-l*c,_=d,w=f-l*d;for(y=0;y0;){y<64?(u=y,y=0):(u=64,y-=64);for(var x=0|e[0];x>0;){x<64?(s=x,x=0):(s=64,x-=64);for(var b=0|e[1];b>0;){b<64?(l=b,b=0):(l=64,b-=64),n=m+y*d+x*c+b*f,o=g+y*v+x*h+b*p;var _=0,w=0,k=0,T=d,M=c-u*d,A=f-s*c,S=v,E=h-u*v,C=p-s*h;for(k=0;kr;){g=0,y=v-o;t:for(m=0;mb)break t;y+=f,g+=d}for(g=v,y=v-o,m=0;m>1,q=H-j,W=H+j,G=U,Y=q,Z=H,X=W,K=V,$=i+1,J=a-1,Q=!0,ee=0,te=0,re=0,ne=f,ie=t(ne),ae=t(ne);M=l*G,A=l*Y,B=s;e:for(T=0;T0){m=G,G=Y,Y=m;break e}if(re<0)break e;B+=h}M=l*X,A=l*K,B=s;e:for(T=0;T0){m=X,X=K,K=m;break e}if(re<0)break e;B+=h}M=l*G,A=l*Z,B=s;e:for(T=0;T0){m=G,G=Z,Z=m;break e}if(re<0)break e;B+=h}M=l*Y,A=l*Z,B=s;e:for(T=0;T0){m=Y,Y=Z,Z=m;break e}if(re<0)break e;B+=h}M=l*G,A=l*X,B=s;e:for(T=0;T0){m=G,G=X,X=m;break e}if(re<0)break e;B+=h}M=l*Z,A=l*X,B=s;e:for(T=0;T0){m=Z,Z=X,X=m;break e}if(re<0)break e;B+=h}M=l*Y,A=l*K,B=s;e:for(T=0;T0){m=Y,Y=K,K=m;break e}if(re<0)break e;B+=h}M=l*Y,A=l*Z,B=s;e:for(T=0;T0){m=Y,Y=Z,Z=m;break e}if(re<0)break e;B+=h}M=l*X,A=l*K,B=s;e:for(T=0;T0){m=X,X=K,K=m;break e}if(re<0)break e;B+=h}for(M=l*G,A=l*Y,S=l*Z,E=l*X,C=l*K,L=l*U,P=l*H,O=l*V,N=0,B=s,T=0;T0)){if(re<0){for(M=l*b,A=l*$,S=l*J,B=s,T=0;T0)for(;;){for(_=s+J*l,N=0,T=0;T0)){for(_=s+J*l,N=0,T=0;TV){e:for(;;){for(_=s+$*l,N=0,B=s,T=0;T1&&n?s(r,n[0],n[1]):s(r)}(e,t,l);return n(l,u)}},8729:function(e,t,r){"use strict";var n=r(8139),i={};e.exports=function(e){var t=e.order,r=e.dtype,a=[t,r].join(":"),o=i[a];return o||(i[a]=o=n(t,r)),o(e),e}},5050:function(e,t,r){var n=r(4780),i="undefined"!==typeof Float64Array;function a(e,t){return e[0]-t[0]}function o(){var e,t=this.stride,r=new Array(t.length);for(e=0;e=0&&(t+=a*(r=0|e),i-=r),new n(this.data,i,a,t)},i.step=function(e){var t=this.shape[0],r=this.stride[0],i=this.offset,a=0,o=Math.ceil;return"number"===typeof e&&((a=0|e)<0?(i+=r*(t-1),t=o(-t/a)):t=o(t/a),r*=a),new n(this.data,t,r,i)},i.transpose=function(e){e=void 0===e?0:0|e;var t=this.shape,r=this.stride;return new n(this.data,t[e],r[e],this.offset)},i.pick=function(e){var r=[],n=[],i=this.offset;return"number"===typeof e&&e>=0?i=i+this.stride[0]*e|0:(r.push(this.shape[0]),n.push(this.stride[0])),(0,t[r.length+1])(this.data,r,n,i)},function(e,t,r,i){return new n(e,t[0],r[0],i)}},2:function(e,t,r){function n(e,t,r,n,i,a){this.data=e,this.shape=[t,r],this.stride=[n,i],this.offset=0|a}var i=n.prototype;return i.dtype=e,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(t,r,n){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r,n):this.data[this.offset+this.stride[0]*t+this.stride[1]*r]=n},i.get=function(t,r){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r):this.data[this.offset+this.stride[0]*t+this.stride[1]*r]},i.index=function(e,t){return this.offset+this.stride[0]*e+this.stride[1]*t},i.hi=function(e,t){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,this.stride[0],this.stride[1],this.offset)},i.lo=function(e,t){var r=this.offset,i=0,a=this.shape[0],o=this.shape[1],s=this.stride[0],l=this.stride[1];return"number"===typeof e&&e>=0&&(r+=s*(i=0|e),a-=i),"number"===typeof t&&t>=0&&(r+=l*(i=0|t),o-=i),new n(this.data,a,o,s,l,r)},i.step=function(e,t){var r=this.shape[0],i=this.shape[1],a=this.stride[0],o=this.stride[1],s=this.offset,l=0,u=Math.ceil;return"number"===typeof e&&((l=0|e)<0?(s+=a*(r-1),r=u(-r/l)):r=u(r/l),a*=l),"number"===typeof t&&((l=0|t)<0?(s+=o*(i-1),i=u(-i/l)):i=u(i/l),o*=l),new n(this.data,r,i,a,o,s)},i.transpose=function(e,t){e=void 0===e?0:0|e,t=void 0===t?1:0|t;var r=this.shape,i=this.stride;return new n(this.data,r[e],r[t],i[e],i[t],this.offset)},i.pick=function(e,r){var n=[],i=[],a=this.offset;return"number"===typeof e&&e>=0?a=a+this.stride[0]*e|0:(n.push(this.shape[0]),i.push(this.stride[0])),"number"===typeof r&&r>=0?a=a+this.stride[1]*r|0:(n.push(this.shape[1]),i.push(this.stride[1])),(0,t[n.length+1])(this.data,n,i,a)},function(e,t,r,i){return new n(e,t[0],t[1],r[0],r[1],i)}},3:function(e,t,r){function n(e,t,r,n,i,a,o,s){this.data=e,this.shape=[t,r,n],this.stride=[i,a,o],this.offset=0|s}var i=n.prototype;return i.dtype=e,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 e=Math.abs(this.stride[0]),t=Math.abs(this.stride[1]),r=Math.abs(this.stride[2]);return e>t?t>r?[2,1,0]:e>r?[1,2,0]:[1,0,2]:e>r?[2,0,1]:r>t?[0,1,2]:[0,2,1]}}),i.set=function(t,r,n,i){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n,i):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n]=i},i.get=function(t,r,n){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n]},i.index=function(e,t,r){return this.offset+this.stride[0]*e+this.stride[1]*t+this.stride[2]*r},i.hi=function(e,t,r){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,"number"!==typeof r||r<0?this.shape[2]:0|r,this.stride[0],this.stride[1],this.stride[2],this.offset)},i.lo=function(e,t,r){var i=this.offset,a=0,o=this.shape[0],s=this.shape[1],l=this.shape[2],u=this.stride[0],c=this.stride[1],f=this.stride[2];return"number"===typeof e&&e>=0&&(i+=u*(a=0|e),o-=a),"number"===typeof t&&t>=0&&(i+=c*(a=0|t),s-=a),"number"===typeof r&&r>=0&&(i+=f*(a=0|r),l-=a),new n(this.data,o,s,l,u,c,f,i)},i.step=function(e,t,r){var i=this.shape[0],a=this.shape[1],o=this.shape[2],s=this.stride[0],l=this.stride[1],u=this.stride[2],c=this.offset,f=0,d=Math.ceil;return"number"===typeof e&&((f=0|e)<0?(c+=s*(i-1),i=d(-i/f)):i=d(i/f),s*=f),"number"===typeof t&&((f=0|t)<0?(c+=l*(a-1),a=d(-a/f)):a=d(a/f),l*=f),"number"===typeof r&&((f=0|r)<0?(c+=u*(o-1),o=d(-o/f)):o=d(o/f),u*=f),new n(this.data,i,a,o,s,l,u,c)},i.transpose=function(e,t,r){e=void 0===e?0:0|e,t=void 0===t?1:0|t,r=void 0===r?2:0|r;var i=this.shape,a=this.stride;return new n(this.data,i[e],i[t],i[r],a[e],a[t],a[r],this.offset)},i.pick=function(e,r,n){var i=[],a=[],o=this.offset;return"number"===typeof e&&e>=0?o=o+this.stride[0]*e|0:(i.push(this.shape[0]),a.push(this.stride[0])),"number"===typeof r&&r>=0?o=o+this.stride[1]*r|0:(i.push(this.shape[1]),a.push(this.stride[1])),"number"===typeof n&&n>=0?o=o+this.stride[2]*n|0:(i.push(this.shape[2]),a.push(this.stride[2])),(0,t[i.length+1])(this.data,i,a,o)},function(e,t,r,i){return new n(e,t[0],t[1],t[2],r[0],r[1],r[2],i)}},4:function(e,t,r){function n(e,t,r,n,i,a,o,s,l,u){this.data=e,this.shape=[t,r,n,i],this.stride=[a,o,s,l],this.offset=0|u}var i=n.prototype;return i.dtype=e,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:r}),i.set=function(t,r,n,i,a){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i,a):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]=a},i.get=function(t,r,n,i){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]},i.index=function(e,t,r,n){return this.offset+this.stride[0]*e+this.stride[1]*t+this.stride[2]*r+this.stride[3]*n},i.hi=function(e,t,r,i){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,"number"!==typeof r||r<0?this.shape[2]:0|r,"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(e,t,r,i){var a=this.offset,o=0,s=this.shape[0],l=this.shape[1],u=this.shape[2],c=this.shape[3],f=this.stride[0],d=this.stride[1],h=this.stride[2],p=this.stride[3];return"number"===typeof e&&e>=0&&(a+=f*(o=0|e),s-=o),"number"===typeof t&&t>=0&&(a+=d*(o=0|t),l-=o),"number"===typeof r&&r>=0&&(a+=h*(o=0|r),u-=o),"number"===typeof i&&i>=0&&(a+=p*(o=0|i),c-=o),new n(this.data,s,l,u,c,f,d,h,p,a)},i.step=function(e,t,r,i){var a=this.shape[0],o=this.shape[1],s=this.shape[2],l=this.shape[3],u=this.stride[0],c=this.stride[1],f=this.stride[2],d=this.stride[3],h=this.offset,p=0,v=Math.ceil;return"number"===typeof e&&((p=0|e)<0?(h+=u*(a-1),a=v(-a/p)):a=v(a/p),u*=p),"number"===typeof t&&((p=0|t)<0?(h+=c*(o-1),o=v(-o/p)):o=v(o/p),c*=p),"number"===typeof r&&((p=0|r)<0?(h+=f*(s-1),s=v(-s/p)):s=v(s/p),f*=p),"number"===typeof i&&((p=0|i)<0?(h+=d*(l-1),l=v(-l/p)):l=v(l/p),d*=p),new n(this.data,a,o,s,l,u,c,f,d,h)},i.transpose=function(e,t,r,i){e=void 0===e?0:0|e,t=void 0===t?1:0|t,r=void 0===r?2:0|r,i=void 0===i?3:0|i;var a=this.shape,o=this.stride;return new n(this.data,a[e],a[t],a[r],a[i],o[e],o[t],o[r],o[i],this.offset)},i.pick=function(e,r,n,i){var a=[],o=[],s=this.offset;return"number"===typeof e&&e>=0?s=s+this.stride[0]*e|0:(a.push(this.shape[0]),o.push(this.stride[0])),"number"===typeof r&&r>=0?s=s+this.stride[1]*r|0:(a.push(this.shape[1]),o.push(this.stride[1])),"number"===typeof n&&n>=0?s=s+this.stride[2]*n|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,t[a.length+1])(this.data,a,o,s)},function(e,t,r,i){return new n(e,t[0],t[1],t[2],t[3],r[0],r[1],r[2],r[3],i)}},5:function(e,t,r){function n(e,t,r,n,i,a,o,s,l,u,c,f){this.data=e,this.shape=[t,r,n,i,a],this.stride=[o,s,l,u,c],this.offset=0|f}var i=n.prototype;return i.dtype=e,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:r}),i.set=function(t,r,n,i,a,o){return"generic"===e?this.data.set(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a,o):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]=o},i.get=function(t,r,n,i,a){return"generic"===e?this.data.get(this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a):this.data[this.offset+this.stride[0]*t+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]},i.index=function(e,t,r,n,i){return this.offset+this.stride[0]*e+this.stride[1]*t+this.stride[2]*r+this.stride[3]*n+this.stride[4]*i},i.hi=function(e,t,r,i,a){return new n(this.data,"number"!==typeof e||e<0?this.shape[0]:0|e,"number"!==typeof t||t<0?this.shape[1]:0|t,"number"!==typeof r||r<0?this.shape[2]:0|r,"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(e,t,r,i,a){var o=this.offset,s=0,l=this.shape[0],u=this.shape[1],c=this.shape[2],f=this.shape[3],d=this.shape[4],h=this.stride[0],p=this.stride[1],v=this.stride[2],m=this.stride[3],g=this.stride[4];return"number"===typeof e&&e>=0&&(o+=h*(s=0|e),l-=s),"number"===typeof t&&t>=0&&(o+=p*(s=0|t),u-=s),"number"===typeof r&&r>=0&&(o+=v*(s=0|r),c-=s),"number"===typeof i&&i>=0&&(o+=m*(s=0|i),f-=s),"number"===typeof a&&a>=0&&(o+=g*(s=0|a),d-=s),new n(this.data,l,u,c,f,d,h,p,v,m,g,o)},i.step=function(e,t,r,i,a){var o=this.shape[0],s=this.shape[1],l=this.shape[2],u=this.shape[3],c=this.shape[4],f=this.stride[0],d=this.stride[1],h=this.stride[2],p=this.stride[3],v=this.stride[4],m=this.offset,g=0,y=Math.ceil;return"number"===typeof e&&((g=0|e)<0?(m+=f*(o-1),o=y(-o/g)):o=y(o/g),f*=g),"number"===typeof t&&((g=0|t)<0?(m+=d*(s-1),s=y(-s/g)):s=y(s/g),d*=g),"number"===typeof r&&((g=0|r)<0?(m+=h*(l-1),l=y(-l/g)):l=y(l/g),h*=g),"number"===typeof i&&((g=0|i)<0?(m+=p*(u-1),u=y(-u/g)):u=y(u/g),p*=g),"number"===typeof a&&((g=0|a)<0?(m+=v*(c-1),c=y(-c/g)):c=y(c/g),v*=g),new n(this.data,o,s,l,u,c,f,d,h,p,v,m)},i.transpose=function(e,t,r,i,a){e=void 0===e?0:0|e,t=void 0===t?1:0|t,r=void 0===r?2:0|r,i=void 0===i?3:0|i,a=void 0===a?4:0|a;var o=this.shape,s=this.stride;return new n(this.data,o[e],o[t],o[r],o[i],o[a],s[e],s[t],s[r],s[i],s[a],this.offset)},i.pick=function(e,r,n,i,a){var o=[],s=[],l=this.offset;return"number"===typeof e&&e>=0?l=l+this.stride[0]*e|0:(o.push(this.shape[0]),s.push(this.stride[0])),"number"===typeof r&&r>=0?l=l+this.stride[1]*r|0:(o.push(this.shape[1]),s.push(this.stride[1])),"number"===typeof n&&n>=0?l=l+this.stride[2]*n|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,t[o.length+1])(this.data,o,s,l)},function(e,t,r,i){return new n(e,t[0],t[1],t[2],t[3],t[4],r[0],r[1],r[2],r[3],r[4],i)}}};function l(e,t){var r=-1===t?"T":String(t),n=s[r];return-1===t?n(e):0===t?n(e,u[e][0]):n(e,u[e],o)}var u={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};e.exports=function(e,t,r,a){if(void 0===e)return(0,u.array[0])([]);"number"===typeof e&&(e=[e]),void 0===t&&(t=[e.length]);var o=t.length;if(void 0===r){r=new Array(o);for(var s=o-1,c=1;s>=0;--s)r[s]=c,c*=t[s]}if(void 0===a)for(a=0,s=0;s>>0;e.exports=function(e,t){if(isNaN(e)||isNaN(t))return NaN;if(e===t)return e;if(0===e)return t<0?-i:i;var r=n.hi(e),o=n.lo(e);return t>e===e>0?o===a?(r+=1,o=0):o+=1:0===o?(o=a,r-=1):o-=1,n.pack(o,r)}},115:function(e,t){t.vertexNormals=function(e,t,r){for(var n=t.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;oa){var b=i[u],_=1/Math.sqrt(m*y);for(x=0;x<3;++x){var w=(x+1)%3,k=(x+2)%3;b[x]+=_*(g[w]*v[k]-g[k]*v[w])}}}for(o=0;oa)for(_=1/Math.sqrt(T),x=0;x<3;++x)b[x]*=_;else for(x=0;x<3;++x)b[x]=0}return i},t.faceNormals=function(e,t,r){for(var n=e.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;oa?1/Math.sqrt(h):0,u=0;u<3;++u)d[u]*=h;i[o]=d}return i}},567:function(e){"use strict";e.exports=function(e,t,r,n,i,a,o,s,l,u){var c=t+a+u;if(f>0){var f=Math.sqrt(c+1);e[0]=.5*(o-l)/f,e[1]=.5*(s-n)/f,e[2]=.5*(r-a)/f,e[3]=.5*f}else{var d=Math.max(t,a,u);f=Math.sqrt(2*d-c+1),t>=d?(e[0]=.5*f,e[1]=.5*(i+r)/f,e[2]=.5*(s+n)/f,e[3]=.5*(o-l)/f):a>=d?(e[0]=.5*(r+i)/f,e[1]=.5*f,e[2]=.5*(l+o)/f,e[3]=.5*(s-n)/f):(e[0]=.5*(n+s)/f,e[1]=.5*(o+l)/f,e[2]=.5*f,e[3]=.5*(r-i)/f)}return e}},7774:function(e,t,r){"use strict";e.exports=function(e){var t=(e=e||{}).center||[0,0,0],r=e.rotation||[0,0,0,1],n=e.radius||1;t=[].slice.call(t,0,3),c(r=[].slice.call(r,0,4),r);var i=new f(r,t,Math.log(n));return i.setDistanceLimits(e.zoomMin,e.zoomMax),("eye"in e||"up"in e)&&i.lookAt(0,e.eye,e.center,e.up),i};var n=r(8444),i=r(3012),a=r(5950),o=r(7437),s=r(567);function l(e,t,r){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2)+Math.pow(r,2))}function u(e,t,r,n){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2)+Math.pow(r,2)+Math.pow(n,2))}function c(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=u(r,n,i,a);o>1e-6?(e[0]=r/o,e[1]=n/o,e[2]=i/o,e[3]=a/o):(e[0]=e[1]=e[2]=0,e[3]=1)}function f(e,t,r){this.radius=n([r]),this.center=n(t),this.rotation=n(e),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 d=f.prototype;d.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},d.recalcMatrix=function(e){this.radius.curve(e),this.center.curve(e),this.rotation.curve(e);var t=this.computedRotation;c(t,t);var r=this.computedMatrix;a(r,t);var n=this.computedCenter,i=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);i[0]=n[0]+s*r[2],i[1]=n[1]+s*r[6],i[2]=n[2]+s*r[10],o[0]=r[1],o[1]=r[5],o[2]=r[9];for(var l=0;l<3;++l){for(var u=0,f=0;f<3;++f)u+=r[l+4*f]*i[f];r[12+l]=-u}},d.getMatrix=function(e,t){this.recalcMatrix(e);var r=this.computedMatrix;if(t){for(var n=0;n<16;++n)t[n]=r[n];return t}return r},d.idle=function(e){this.center.idle(e),this.radius.idle(e),this.rotation.idle(e)},d.flush=function(e){this.center.flush(e),this.radius.flush(e),this.rotation.flush(e)},d.pan=function(e,t,r,n){t=t||0,r=r||0,n=n||0,this.recalcMatrix(e);var i=this.computedMatrix,a=i[1],o=i[5],s=i[9],u=l(a,o,s);a/=u,o/=u,s/=u;var c=i[0],f=i[4],d=i[8],h=c*a+f*o+d*s,p=l(c-=a*h,f-=o*h,d-=s*h);c/=p,f/=p,d/=p;var v=i[2],m=i[6],g=i[10],y=v*a+m*o+g*s,x=v*c+m*f+g*d,b=l(v-=y*a+x*c,m-=y*o+x*f,g-=y*s+x*d);v/=b,m/=b,g/=b;var _=c*t+a*r,w=f*t+o*r,k=d*t+s*r;this.center.move(e,_,w,k);var T=Math.exp(this.computedRadius[0]);T=Math.max(1e-4,T+n),this.radius.set(e,Math.log(T))},d.rotate=function(e,t,r,n){this.recalcMatrix(e),t=t||0,r=r||0;var i=this.computedMatrix,a=i[0],o=i[4],s=i[8],c=i[1],f=i[5],d=i[9],h=i[2],p=i[6],v=i[10],m=t*a+r*c,g=t*o+r*f,y=t*s+r*d,x=-(p*y-v*g),b=-(v*m-h*y),_=-(h*g-p*m),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(b,2)-Math.pow(_,2))),k=u(x,b,_,w);k>1e-6?(x/=k,b/=k,_/=k,w/=k):(x=b=_=0,w=1);var T=this.computedRotation,M=T[0],A=T[1],S=T[2],E=T[3],C=M*w+E*x+A*_-S*b,L=A*w+E*b+S*x-M*_,P=S*w+E*_+M*b-A*x,O=E*w-M*x-A*b-S*_;if(n){x=h,b=p,_=v;var I=Math.sin(n)/l(x,b,_);x*=I,b*=I,_*=I,O=O*(w=Math.cos(t))-(C=C*w+O*x+L*_-P*b)*x-(L=L*w+O*b+P*x-C*_)*b-(P=P*w+O*_+C*b-L*x)*_}var D=u(C,L,P,O);D>1e-6?(C/=D,L/=D,P/=D,O/=D):(C=L=P=0,O=1),this.rotation.set(e,C,L,P,O)},d.lookAt=function(e,t,r,n){this.recalcMatrix(e),r=r||this.computedCenter,t=t||this.computedEye,n=n||this.computedUp;var a=this.computedMatrix;i(a,t,r,n);var o=this.computedRotation;s(o,a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10]),c(o,o),this.rotation.set(e,o[0],o[1],o[2],o[3]);for(var l=0,u=0;u<3;++u)l+=Math.pow(r[u]-t[u],2);this.radius.set(e,.5*Math.log(Math.max(l,1e-6))),this.center.set(e,r[0],r[1],r[2])},d.translate=function(e,t,r,n){this.center.move(e,t||0,r||0,n||0)},d.setMatrix=function(e,t){var r=this.computedRotation;s(r,t[0],t[1],t[2],t[4],t[5],t[6],t[8],t[9],t[10]),c(r,r),this.rotation.set(e,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;o(n,t);var i=n[15];if(Math.abs(i)>1e-6){var a=n[12]/i,l=n[13]/i,u=n[14]/i;this.recalcMatrix(e);var f=Math.exp(this.computedRadius[0]);this.center.set(e,a-n[2]*f,l-n[6]*f,u-n[10]*f),this.radius.idle(e)}else this.center.idle(e),this.radius.idle(e)},d.setDistance=function(e,t){t>0&&this.radius.set(e,Math.log(t))},d.setDistanceLimits=function(e,t){e=e>0?Math.log(e):-1/0,t=t>0?Math.log(t):1/0,t=Math.max(t,e),this.radius.bounds[0][0]=e,this.radius.bounds[1][0]=t},d.getDistanceLimits=function(e){var t=this.radius.bounds;return e?(e[0]=Math.exp(t[0][0]),e[1]=Math.exp(t[1][0]),e):[Math.exp(t[0][0]),Math.exp(t[1][0])]},d.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]}},d.fromJSON=function(e){var t=this.lastT(),r=e.center;r&&this.center.set(t,r[0],r[1],r[2]);var n=e.rotation;n&&this.rotation.set(t,n[0],n[1],n[2],n[3]);var i=e.distance;i&&i>0&&this.radius.set(t,Math.log(i)),this.setDistanceLimits(e.zoomMin,e.zoomMax)}},4930:function(e,t,r){"use strict";var n=r(6184);e.exports=function(e,t,r){return n(r="undefined"!==typeof r?r+"":" ",t)+e}},4405:function(e){e.exports=function(e,t){t||(t=[0,""]),e=String(e);var r=parseFloat(e,10);return t[0]=r,t[1]=e.match(/[\d.\-\+]*\s*(.*)/)[1]||"",t}},4166:function(e,t,r){"use strict";e.exports=function(e,t){for(var r=0|t.length,i=e.length,a=[new Array(r),new Array(r)],o=0;o0){o=a[c][r][0],l=c;break}s=o[1^l];for(var f=0;f<2;++f)for(var d=a[f][r],h=0;h0&&(o=p,s=v,l=f)}return i||o&&u(o,l),s}function f(e,r){var i=a[r][e][0],o=[e];u(i,r);for(var s=i[1^r];;){for(;s!==e;)o.push(s),s=c(o[o.length-2],s,!1);if(a[0][e].length+a[1][e].length===0)break;var l=o[o.length-1],f=e,d=o[1],h=c(l,f,!0);if(n(t[l],t[f],t[d],t[h])<0)break;o.push(e),s=c(l,f)}return o}function d(e,t){return t[1]===t[t.length-1]}for(o=0;o0;){a[0][o].length;var v=f(o,h);d(0,v)?p.push.apply(p,v):(p.length>0&&l.push(p),p=v)}p.length>0&&l.push(p)}return l};var n=r(9398)},3959:function(e,t,r){"use strict";e.exports=function(e,t){for(var r=n(e,t.length),i=new Array(t.length),a=new Array(t.length),o=[],s=0;s0;){i[h=o.pop()]=!1;var u=r[h];for(s=0;s0}))).length,m=new Array(v),g=new Array(v);for(h=0;h0;){var N=z.pop(),B=E[N];l(B,(function(e,t){return e-t}));var j,U=B.length,V=F[N];for(0===V&&(j=[H=p[N]]),h=0;h=0||(F[q]=1^V,z.push(q),0===V&&(R(H=p[q])||(H.reverse(),j.push(H))))}0===V&&r.push(j)}return r};var n=r(8348),i=r(4166),a=r(211),o=r(9660),s=r(9662),l=r(1215),u=r(3959);function c(e,t){for(var r=new Array(e),n=0;n0&&t[i]===r[0]))return 1;a=e[i-1]}for(var s=1;a;){var l=a.key,u=n(r,l[0],l[1]);if(l[0][0]0))return 0;s=-1,a=a.right}else if(u>0)a=a.left;else{if(!(u<0))return 0;s=1,a=a.right}}return s}}(g.slabs,g.coordinates);return 0===a.length?y:function(e,t){return function(r){return e(r[0],r[1])?0:t(r)}}(l(a),y)};var n=r(417)[3],i=r(4385),a=r(9014),o=r(5070);function s(){return!0}function l(e){for(var t={},r=0;r=u?(T=1,y=u+2*d+p):y=d*(T=-d/u)+p):(T=0,h>=0?(M=0,y=p):-h>=f?(M=1,y=f+2*h+p):y=h*(M=-h/f)+p);else if(M<0)M=0,d>=0?(T=0,y=p):-d>=u?(T=1,y=u+2*d+p):y=d*(T=-d/u)+p;else{var A=1/k;y=(T*=A)*(u*T+c*(M*=A)+2*d)+M*(c*T+f*M+2*h)+p}else T<0?(b=f+h)>(x=c+d)?(_=b-x)>=(w=u-2*c+f)?(T=1,M=0,y=u+2*d+p):y=(T=_/w)*(u*T+c*(M=1-T)+2*d)+M*(c*T+f*M+2*h)+p:(T=0,b<=0?(M=1,y=f+2*h+p):h>=0?(M=0,y=p):y=h*(M=-h/f)+p):M<0?(b=u+d)>(x=c+h)?(_=b-x)>=(w=u-2*c+f)?(M=1,T=0,y=f+2*h+p):y=(T=1-(M=_/w))*(u*T+c*M+2*d)+M*(c*T+f*M+2*h)+p:(M=0,b<=0?(T=1,y=u+2*d+p):d>=0?(T=0,y=p):y=d*(T=-d/u)+p):(_=f+h-c-d)<=0?(T=0,M=1,y=f+2*h+p):_>=(w=u-2*c+f)?(T=1,M=0,y=u+2*d+p):y=(T=_/w)*(u*T+c*(M=1-T)+2*d)+M*(c*T+f*M+2*h)+p;var S=1-T-M;for(l=0;l0){var u=e[r-1];if(0===n(s,u)&&a(u)!==l){r-=1;continue}}e[r++]=s}}return e.length=r,e}},6184:function(e){"use strict";var t,r="";e.exports=function(e,n){if("string"!==typeof e)throw new TypeError("expected a string");if(1===n)return e;if(2===n)return e+e;var i=e.length*n;if(t!==e||"undefined"===typeof t)t=e,r="";else if(r.length>=i)return r.substr(0,i);for(;i>r.length&&n>1;)1&n&&(r+=e),n>>=1,e+=e;return r=(r+=e).substr(0,i)}},8161:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},402:function(e){"use strict";e.exports=function(e){for(var t=e.length,r=e[e.length-1],n=t,i=t-2;i>=0;--i){var a=r;(l=(s=e[i])-((r=a+s)-a))&&(e[--n]=r,r=l)}var o=0;for(i=n;i0){if(a<=0)return o;n=i+a}else{if(!(i<0))return o;if(a>=0)return o;n=-(i+a)}var s=33306690738754716e-32*n;return o>=s||o<=-s?o:f(e,t,r)},function(e,t,r,n){var i=e[0]-n[0],a=t[0]-n[0],o=r[0]-n[0],s=e[1]-n[1],l=t[1]-n[1],u=r[1]-n[1],c=e[2]-n[2],f=t[2]-n[2],h=r[2]-n[2],p=a*u,v=o*l,m=o*s,g=i*u,y=i*l,x=a*s,b=c*(p-v)+f*(m-g)+h*(y-x),_=7771561172376103e-31*((Math.abs(p)+Math.abs(v))*Math.abs(c)+(Math.abs(m)+Math.abs(g))*Math.abs(f)+(Math.abs(y)+Math.abs(x))*Math.abs(h));return b>_||-b>_?b:d(e,t,r,n)}];function p(e){var t=h[e.length];return t||(t=h[e.length]=c(e.length)),t.apply(void 0,e)}function v(e,t,r,n,i,a,o){return function(t,r,s,l,u){switch(arguments.length){case 0:case 1:return 0;case 2:return n(t,r);case 3:return i(t,r,s);case 4:return a(t,r,s,l);case 5:return o(t,r,s,l,u)}for(var c=new Array(arguments.length),f=0;f0&&o>0||a<0&&o<0)return!1;var s=n(r,e,t),l=n(i,e,t);return!(s>0&&l>0||s<0&&l<0)&&(0!==a||0!==o||0!==s||0!==l||function(e,t,r,n){for(var i=0;i<2;++i){var a=e[i],o=t[i],s=Math.min(a,o),l=Math.max(a,o),u=r[i],c=n[i],f=Math.min(u,c);if(Math.max(u,c)=n?(i=f,(l+=1)=n?(i=f,(l+=1)>1,u=t[2*l+1];if(u===a)return l;a>1,u=t[2*l+1];if(u===a)return l;a>1,u=t[2*l+1];if(u===a)return l;a0)-(e<0)},t.abs=function(e){var t=e>>31;return(e^t)-t},t.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=r=((e>>>=t)>255)<<3,t|=r=((e>>>=r)>15)<<2,(t|=r=((e>>>=r)>3)<<1)|(e>>>=r)>>1},t.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},t.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},t.countTrailingZeros=r,t.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},t.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=n<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},t.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},t.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},t.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},t.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},6656:function(e,t,r){"use strict";var n=r(9392),i=r(9521);function a(e,t){var r=e.length,n=e.length-t.length,i=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return e[0]-t[0];case 2:return(s=e[0]+e[1]-t[0]-t[1])||i(e[0],e[1])-i(t[0],t[1]);case 3:var a=e[0]+e[1],o=t[0]+t[1];if(s=a+e[2]-(o+t[2]))return s;var s,l=i(e[0],e[1]),u=i(t[0],t[1]);return(s=i(l,e[2])-i(u,t[2]))||i(l+e[2],a)-i(u+t[2],o);default:var c=e.slice(0);c.sort();var f=t.slice(0);f.sort();for(var d=0;d>1,s=a(e[o],t);s<=0?(0===s&&(i=o),r=o+1):s>0&&(n=o-1)}return i}function c(e,t){for(var r=new Array(e.length),i=0,o=r.length;i=e.length||0!==a(e[m],s)););}return r}function f(e,t){if(t<0)return[];for(var r=[],i=(1<>>c&1&&u.push(i[c]);t.push(u)}return s(t)},t.skeleton=f,t.boundary=function(e){for(var t=[],r=0,n=e.length;r>1:(e>>1)-1}function x(e){for(var t=g(e);;){var r=t,n=2*e+1,i=2*(e+1),a=e;if(n0;){var r=y(e);if(!(r>=0&&t0){var e=T[0];return m(0,A-1),A-=1,x(0),e}return-1}function w(e,t){var r=T[e];return u[r]===t?e:(u[r]=-1/0,b(e),_(),u[r]=t,b((A+=1)-1))}function k(e){if(!c[e]){c[e]=!0;var t=s[e],r=l[e];s[r]>=0&&(s[r]=t),l[t]>=0&&(l[t]=r),M[t]>=0&&w(M[t],v(t)),M[r]>=0&&w(M[r],v(r))}}var T=[],M=new Array(a);for(f=0;f>1;f>=0;--f)x(f);for(;;){var S=_();if(S<0||u[S]>r)break;k(S)}var E=[];for(f=0;f=0&&r>=0&&t!==r){var n=M[t],i=M[r];n!==i&&L.push([n,i])}})),i.unique(i.normalize(L)),{positions:E,edges:L}};var n=r(417),i=r(6656)},6638:function(e,t,r){"use strict";e.exports=function(e,t){var r,a,o,s;if(t[0][0]t[1][0]))return i(t,e);r=t[1],a=t[0]}if(e[0][0]e[1][0]))return-i(e,t);o=e[1],s=e[0]}var l=n(r,a,s),u=n(r,a,o);if(l<0){if(u<=0)return l}else if(l>0){if(u>=0)return l}else if(u)return u;if(l=n(s,o,a),u=n(s,o,r),l<0){if(u<=0)return l}else if(l>0){if(u>=0)return l}else if(u)return u;return a[0]-s[0]};var n=r(417);function i(e,t){var r,i,a,o;if(t[0][0]t[1][0])){var s=Math.min(e[0][1],e[1][1]),l=Math.max(e[0][1],e[1][1]),u=Math.min(t[0][1],t[1][1]),c=Math.max(t[0][1],t[1][1]);return lc?s-c:l-c}r=t[1],i=t[0]}e[0][1]0)if(t[0]!==o[1][0])r=e,e=e.right;else{if(l=u(e.right,t))return l;e=e.left}else{if(t[0]!==o[1][0])return e;var l;if(l=u(e.right,t))return l;e=e.left}}return r}function c(e,t,r,n){this.y=e,this.index=t,this.start=r,this.closed=n}function f(e,t,r,n){this.x=e,this.segment=t,this.create=r,this.index=n}s.prototype.castUp=function(e){var t=n.le(this.coordinates,e[0]);if(t<0)return-1;this.slabs[t];var r=u(this.slabs[t],e),i=-1;if(r&&(i=r.value),this.coordinates[t]===e[0]){var s=null;if(r&&(s=r.key),t>0){var c=u(this.slabs[t-1],e);c&&(s?o(c.key,s)>0&&(s=c.key,i=c.value):(i=c.value,s=c.key))}var f=this.horizontal[t];if(f.length>0){var d=n.ge(f,e[1],l);if(d=f.length)return i;h=f[d]}}if(h.start)if(s){var p=a(s[0],s[1],[e[0],h.y]);s[0][0]>s[1][0]&&(p=-p),p>0&&(i=h.index)}else i=h.index;else h.y!==e[1]&&(i=h.index)}}}return i}},4670:function(e,t,r){"use strict";var n=r(9130),i=r(9662);function a(e,t){var r=i(n(e,t),[t[t.length-1]]);return r[r.length-1]}function o(e,t,r,n){var i=-t/(n-t);i<0?i=0:i>1&&(i=1);for(var a=1-i,o=e.length,s=new Array(o),l=0;l0||i>0&&c<0){var f=o(s,c,l,i);r.push(f),n.push(f.slice())}c<0?n.push(l.slice()):c>0?r.push(l.slice()):(r.push(l.slice()),n.push(l.slice())),i=c}return{positive:r,negative:n}},e.exports.positive=function(e,t){for(var r=[],n=a(e[e.length-1],t),i=e[e.length-1],s=e[0],l=0;l0||n>0&&u<0)&&r.push(o(i,u,s,n)),u>=0&&r.push(s.slice()),n=u}return r},e.exports.negative=function(e,t){for(var r=[],n=a(e[e.length-1],t),i=e[e.length-1],s=e[0],l=0;l0||n>0&&u<0)&&r.push(o(i,u,s,n)),u<=0&&r.push(s.slice()),n=u}return r}},8974:function(e,t,r){var n;!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(e){return function(e,t){var r,n,o,s,l,u,c,f,d,h=1,p=e.length,v="";for(n=0;n=0),s.type){case"b":r=parseInt(r,10).toString(2);break;case"c":r=String.fromCharCode(parseInt(r,10));break;case"d":case"i":r=parseInt(r,10);break;case"j":r=JSON.stringify(r,null,s.width?parseInt(s.width):0);break;case"e":r=s.precision?parseFloat(r).toExponential(s.precision):parseFloat(r).toExponential();break;case"f":r=s.precision?parseFloat(r).toFixed(s.precision):parseFloat(r);break;case"g":r=s.precision?String(Number(r.toPrecision(s.precision))):parseFloat(r);break;case"o":r=(parseInt(r,10)>>>0).toString(8);break;case"s":r=String(r),r=s.precision?r.substring(0,s.precision):r;break;case"t":r=String(!!r),r=s.precision?r.substring(0,s.precision):r;break;case"T":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=s.precision?r.substring(0,s.precision):r;break;case"u":r=parseInt(r,10)>>>0;break;case"v":r=r.valueOf(),r=s.precision?r.substring(0,s.precision):r;break;case"x":r=(parseInt(r,10)>>>0).toString(16);break;case"X":r=(parseInt(r,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?v+=r:(!i.number.test(s.type)||f&&!s.sign?d="":(d=f?"+":"-",r=r.toString().replace(i.sign,"")),u=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",c=s.width-(d+r).length,l=s.width&&c>0?u.repeat(c):"",v+=s.align?d+r+l:"0"===u?d+l+r:l+d+r)}return v}(function(e){if(s[e])return s[e];for(var t,r=e,n=[],a=0;r;){if(null!==(t=i.text.exec(r)))n.push(t[0]);else if(null!==(t=i.modulo.exec(r)))n.push("%");else{if(null===(t=i.placeholder.exec(r)))throw new SyntaxError("[sprintf] unexpected placeholder");if(t[2]){a|=1;var o=[],l=t[2],u=[];if(null===(u=i.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(o.push(u[1]);""!==(l=l.substring(u[0].length));)if(null!==(u=i.key_access.exec(l)))o.push(u[1]);else{if(null===(u=i.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");o.push(u[1])}t[2]=o}else a|=2;if(3===a)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");n.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return s[e]=n}(e),arguments)}function o(e,t){return a.apply(null,[e].concat(t||[]))}var s=Object.create(null);t.sprintf=a,t.vsprintf=o,"undefined"!==typeof window&&(window.sprintf=a,window.vsprintf=o,void 0===(n=function(){return{sprintf:a,vsprintf:o}}.call(t,r,t,e))||(e.exports=n))}()},4162:function(e,t,r){"use strict";e.exports=function(e,t){if(e.dimension<=0)return{positions:[],cells:[]};if(1===e.dimension)return function(e,t){for(var r=i(e,t),n=r.length,a=new Array(n),o=new Array(n),s=0;sn|0},vertex:function(e,t,r,n,i,a,o,s,l,u,c,f,d){var h=(o<<0)+(s<<1)+(l<<2)+(u<<3)|0;if(0!==h&&15!==h)switch(h){case 0:case 15:c.push([e-.5,t-.5]);break;case 1:c.push([e-.25-.25*(n+r-2*d)/(r-n),t-.25-.25*(i+r-2*d)/(r-i)]);break;case 2:c.push([e-.75-.25*(-n-r+2*d)/(n-r),t-.25-.25*(a+n-2*d)/(n-a)]);break;case 3:c.push([e-.5,t-.5-.5*(i+r+a+n-4*d)/(r-i+n-a)]);break;case 4:c.push([e-.25-.25*(a+i-2*d)/(i-a),t-.75-.25*(-i-r+2*d)/(i-r)]);break;case 5:c.push([e-.5-.5*(n+r+a+i-4*d)/(r-n+i-a),t-.5]);break;case 6:c.push([e-.5-.25*(-n-r+a+i)/(n-r+i-a),t-.5-.25*(-i-r+a+n)/(i-r+n-a)]);break;case 7:c.push([e-.75-.25*(a+i-2*d)/(i-a),t-.75-.25*(a+n-2*d)/(n-a)]);break;case 8:c.push([e-.75-.25*(-a-i+2*d)/(a-i),t-.75-.25*(-a-n+2*d)/(a-n)]);break;case 9:c.push([e-.5-.25*(n+r+-a-i)/(r-n+a-i),t-.5-.25*(i+r+-a-n)/(r-i+a-n)]);break;case 10:c.push([e-.5-.5*(-n-r-a-i+4*d)/(n-r+a-i),t-.5]);break;case 11:c.push([e-.25-.25*(-a-i+2*d)/(a-i),t-.75-.25*(i+r-2*d)/(r-i)]);break;case 12:c.push([e-.5,t-.5-.5*(-i-r-a-n+4*d)/(i-r+a-n)]);break;case 13:c.push([e-.75-.25*(n+r-2*d)/(r-n),t-.25-.25*(-a-n+2*d)/(a-n)]);break;case 14:c.push([e-.25-.25*(-n-r+2*d)/(n-r),t-.25-.25*(-i-r+2*d)/(i-r)])}},cell:function(e,t,r,n,i,a,o,s,l){i?s.push([e,t]):s.push([t,e])}});return function(e,t){var r=[],i=[];return n(e,r,i,t),{positions:r,cells:i}}}},o={}},6946:function(e,t,r){"use strict";e.exports=function e(t,r,i){i=i||{};var a=o[t];a||(a=o[t]={" ":{data:new Float32Array(0),shape:.2}});var s=a[r];if(!s)if(r.length<=1||!/\d/.test(r))s=a[r]=function(e){for(var t=e.cells,r=e.positions,n=new Float32Array(6*t.length),i=0,a=0,o=0;o0&&(f+=.02);var h=new Float32Array(c),p=0,v=-.5*f;for(d=0;dMath.max(r,n)?i[2]=1:r>Math.max(t,n)?i[0]=1:i[1]=1;for(var a=0,o=0,l=0;l<3;++l)a+=e[l]*e[l],o+=i[l]*e[l];for(l=0;l<3;++l)i[l]-=o/a*e[l];return s(i,i),i}function d(e,t,r,i,a,o,s,l){this.center=n(r),this.up=n(i),this.right=n(a),this.radius=n([o]),this.angle=n([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(e,t),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var u=0;u<16;++u)this.computedMatrix[u]=.5;this.recalcMatrix(0)}var h=d.prototype;h.setDistanceLimits=function(e,t){e=e>0?Math.log(e):-1/0,t=t>0?Math.log(t):1/0,t=Math.max(t,e),this.radius.bounds[0][0]=e,this.radius.bounds[1][0]=t},h.getDistanceLimits=function(e){var t=this.radius.bounds[0];return e?(e[0]=Math.exp(t[0][0]),e[1]=Math.exp(t[1][0]),e):[Math.exp(t[0][0]),Math.exp(t[1][0])]},h.recalcMatrix=function(e){this.center.curve(e),this.up.curve(e),this.right.curve(e),this.radius.curve(e),this.angle.curve(e);for(var t=this.computedUp,r=this.computedRight,n=0,i=0,a=0;a<3;++a)i+=t[a]*r[a],n+=t[a]*t[a];var l=Math.sqrt(n),c=0;for(a=0;a<3;++a)r[a]-=t[a]*i/n,c+=r[a]*r[a],t[a]/=l;var f=Math.sqrt(c);for(a=0;a<3;++a)r[a]/=f;var d=this.computedToward;o(d,t,r),s(d,d);var h=Math.exp(this.computedRadius[0]),p=this.computedAngle[0],v=this.computedAngle[1],m=Math.cos(p),g=Math.sin(p),y=Math.cos(v),x=Math.sin(v),b=this.computedCenter,_=m*y,w=g*y,k=x,T=-m*x,M=-g*x,A=y,S=this.computedEye,E=this.computedMatrix;for(a=0;a<3;++a){var C=_*r[a]+w*d[a]+k*t[a];E[4*a+1]=T*r[a]+M*d[a]+A*t[a],E[4*a+2]=C,E[4*a+3]=0}var L=E[1],P=E[5],O=E[9],I=E[2],D=E[6],R=E[10],z=P*R-O*D,F=O*I-L*R,N=L*D-P*I,B=u(z,F,N);for(z/=B,F/=B,N/=B,E[0]=z,E[4]=F,E[8]=N,a=0;a<3;++a)S[a]=b[a]+E[2+4*a]*h;for(a=0;a<3;++a){c=0;for(var j=0;j<3;++j)c+=E[a+4*j]*S[j];E[12+a]=-c}E[15]=1},h.getMatrix=function(e,t){this.recalcMatrix(e);var r=this.computedMatrix;if(t){for(var n=0;n<16;++n)t[n]=r[n];return t}return r};var p=[0,0,0];h.rotate=function(e,t,r,n){if(this.angle.move(e,t,r),n){this.recalcMatrix(e);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,u=0;u<3;++u)i[4*u]=o[u],i[4*u+1]=s[u],i[4*u+2]=l[u];for(a(i,i,n,p),u=0;u<3;++u)o[u]=i[4*u],s[u]=i[4*u+1];this.up.set(e,o[0],o[1],o[2]),this.right.set(e,s[0],s[1],s[2])}},h.pan=function(e,t,r,n){t=t||0,r=r||0,n=n||0,this.recalcMatrix(e);var i=this.computedMatrix,a=(Math.exp(this.computedRadius[0]),i[1]),o=i[5],s=i[9],l=u(a,o,s);a/=l,o/=l,s/=l;var c=i[0],f=i[4],d=i[8],h=c*a+f*o+d*s,p=u(c-=a*h,f-=o*h,d-=s*h),v=(c/=p)*t+a*r,m=(f/=p)*t+o*r,g=(d/=p)*t+s*r;this.center.move(e,v,m,g);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+n),this.radius.set(e,Math.log(y))},h.translate=function(e,t,r,n){this.center.move(e,t||0,r||0,n||0)},h.setMatrix=function(e,t,r,n){var a=1;"number"===typeof r&&(a=0|r),(a<0||a>3)&&(a=1);var o=(a+2)%3;t||(this.recalcMatrix(e),t=this.computedMatrix);var s=t[a],l=t[a+4],f=t[a+8];if(n){var d=Math.abs(s),h=Math.abs(l),p=Math.abs(f),v=Math.max(d,h,p);d===v?(s=s<0?-1:1,l=f=0):p===v?(f=f<0?-1:1,s=l=0):(l=l<0?-1:1,s=f=0)}else{var m=u(s,l,f);s/=m,l/=m,f/=m}var g,y,x=t[o],b=t[o+4],_=t[o+8],w=x*s+b*l+_*f,k=u(x-=s*w,b-=l*w,_-=f*w),T=l*(_/=k)-f*(b/=k),M=f*(x/=k)-s*_,A=s*b-l*x,S=u(T,M,A);if(T/=S,M/=S,A/=S,this.center.jump(e,q,W,G),this.radius.idle(e),this.up.jump(e,s,l,f),this.right.jump(e,x,b,_),2===a){var E=t[1],C=t[5],L=t[9],P=E*x+C*b+L*_,O=E*T+C*M+L*A;g=z<0?-Math.PI/2:Math.PI/2,y=Math.atan2(O,P)}else{var I=t[2],D=t[6],R=t[10],z=I*s+D*l+R*f,F=I*x+D*b+R*_,N=I*T+D*M+R*A;g=Math.asin(c(z)),y=Math.atan2(N,F)}this.angle.jump(e,y,g),this.recalcMatrix(e);var B=t[2],j=t[6],U=t[10],V=this.computedMatrix;i(V,t);var H=V[15],q=V[12]/H,W=V[13]/H,G=V[14]/H,Y=Math.exp(this.computedRadius[0]);this.center.jump(e,q-B*Y,W-j*Y,G-U*Y)},h.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},h.idle=function(e){this.center.idle(e),this.up.idle(e),this.right.idle(e),this.radius.idle(e),this.angle.idle(e)},h.flush=function(e){this.center.flush(e),this.up.flush(e),this.right.flush(e),this.radius.flush(e),this.angle.flush(e)},h.setDistance=function(e,t){t>0&&this.radius.set(e,Math.log(t))},h.lookAt=function(e,t,r,n){this.recalcMatrix(e),t=t||this.computedEye,r=r||this.computedCenter;var i=(n=n||this.computedUp)[0],a=n[1],o=n[2],s=u(i,a,o);if(!(s<1e-6)){i/=s,a/=s,o/=s;var l=t[0]-r[0],f=t[1]-r[1],d=t[2]-r[2],h=u(l,f,d);if(!(h<1e-6)){l/=h,f/=h,d/=h;var p=this.computedRight,v=p[0],m=p[1],g=p[2],y=i*v+a*m+o*g,x=u(v-=y*i,m-=y*a,g-=y*o);if(!(x<.01&&(x=u(v=a*d-o*f,m=o*l-i*d,g=i*f-a*l))<1e-6)){v/=x,m/=x,g/=x,this.up.set(e,i,a,o),this.right.set(e,v,m,g),this.center.set(e,r[0],r[1],r[2]),this.radius.set(e,Math.log(h));var b=a*g-o*m,_=o*v-i*g,w=i*m-a*v,k=u(b,_,w),T=i*l+a*f+o*d,M=v*l+m*f+g*d,A=(b/=k)*l+(_/=k)*f+(w/=k)*d,S=Math.asin(c(T)),E=Math.atan2(A,M),C=this.angle._state,L=C[C.length-1],P=C[C.length-2];L%=2*Math.PI;var O=Math.abs(L+2*Math.PI-E),I=Math.abs(L-E),D=Math.abs(L-2*Math.PI-E);O0?r.pop():new ArrayBuffer(e)}function p(e){return new Uint8Array(h(e),0,e)}function v(e){return new Uint16Array(h(2*e),0,e)}function m(e){return new Uint32Array(h(4*e),0,e)}function g(e){return new Int8Array(h(e),0,e)}function y(e){return new Int16Array(h(2*e),0,e)}function x(e){return new Int32Array(h(4*e),0,e)}function b(e){return new Float32Array(h(4*e),0,e)}function _(e){return new Float64Array(h(8*e),0,e)}function w(e){return o?new Uint8ClampedArray(h(e),0,e):p(e)}function k(e){return s?new BigUint64Array(h(8*e),0,e):null}function T(e){return l?new BigInt64Array(h(8*e),0,e):null}function M(e){return new DataView(h(e),0,e)}function A(e){e=n.nextPow2(e);var t=n.log2(e),r=f[t];return r.length>0?r.pop():new a(e)}t.free=function(e){if(a.isBuffer(e))f[n.log2(e.length)].push(e);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(e)&&(e=e.buffer),!e)return;var t=e.length||e.byteLength,r=0|n.log2(t);c[r].push(e)}},t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=function(e){d(e.buffer)},t.freeArrayBuffer=d,t.freeBuffer=function(e){f[n.log2(e.length)].push(e)},t.malloc=function(e,t){if(void 0===t||"arraybuffer"===t)return h(e);switch(t){case"uint8":return p(e);case"uint16":return v(e);case"uint32":return m(e);case"int8":return g(e);case"int16":return y(e);case"int32":return x(e);case"float":case"float32":return b(e);case"double":case"float64":return _(e);case"uint8_clamped":return w(e);case"bigint64":return T(e);case"biguint64":return k(e);case"buffer":return A(e);case"data":case"dataview":return M(e);default:return null}return null},t.mallocArrayBuffer=h,t.mallocUint8=p,t.mallocUint16=v,t.mallocUint32=m,t.mallocInt8=g,t.mallocInt16=y,t.mallocInt32=x,t.mallocFloat32=t.mallocFloat=b,t.mallocFloat64=t.mallocDouble=_,t.mallocUint8Clamped=w,t.mallocBigUint64=k,t.mallocBigInt64=T,t.mallocDataView=M,t.mallocBuffer=A,t.clearCache=function(){for(var e=0;e<32;++e)u.UINT8[e].length=0,u.UINT16[e].length=0,u.UINT32[e].length=0,u.INT8[e].length=0,u.INT16[e].length=0,u.INT32[e].length=0,u.FLOAT[e].length=0,u.DOUBLE[e].length=0,u.BIGUINT64[e].length=0,u.BIGINT64[e].length=0,u.UINT8C[e].length=0,c[e].length=0,f[e].length=0}},1731:function(e){"use strict";function t(e){this.roots=new Array(e),this.ranks=new Array(e);for(var t=0;t0&&(a=n.size),n.lineSpacing&&n.lineSpacing>0&&(o=n.lineSpacing),n.styletags&&n.styletags.breaklines&&(s.breaklines=!!n.styletags.breaklines),n.styletags&&n.styletags.bolds&&(s.bolds=!!n.styletags.bolds),n.styletags&&n.styletags.italics&&(s.italics=!!n.styletags.italics),n.styletags&&n.styletags.subscripts&&(s.subscripts=!!n.styletags.subscripts),n.styletags&&n.styletags.superscripts&&(s.superscripts=!!n.styletags.superscripts)),r.font=[n.fontStyle,n.fontVariant,n.fontWeight,a+"px",n.font].filter((function(e){return e})).join(" "),r.textAlign="start",r.textBaseline="alphabetic",r.direction="ltr",w(function(e,t,r,n,a,o){r=r.replace(/\n/g,""),r=!0===o.breaklines?r.replace(/\/g,"\n"):r.replace(/\/g," ");var s="",l=[];for(k=0;k-1?parseInt(e[1+i]):0,l=a>-1?parseInt(r[1+a]):0;s!==l&&(n=n.replace(F(),"?px "),A*=Math.pow(.75,l-s),n=n.replace("?px ",F())),M+=.25*C*(l-s)}if(!0===o.superscripts){var u=e.indexOf(p),f=r.indexOf(p),h=u>-1?parseInt(e[1+u]):0,v=f>-1?parseInt(r[1+f]):0;h!==v&&(n=n.replace(F(),"?px "),A*=Math.pow(.75,v-h),n=n.replace("?px ",F())),M-=.25*C*(v-h)}if(!0===o.bolds){var m=e.indexOf(c)>-1,y=r.indexOf(c)>-1;!m&&y&&(n=x?n.replace("italic ","italic bold "):"bold "+n),m&&!y&&(n=n.replace("bold ",""))}if(!0===o.italics){var x=e.indexOf(d)>-1,b=r.indexOf(d)>-1;!x&&b&&(n="italic "+n),x&&!b&&(n=n.replace("italic ",""))}t.font=n}for(w=0;w",a="",o=i.length,s=a.length,l=t[0]===p||t[0]===g,u=0,c=-s;u>-1&&-1!==(u=r.indexOf(i,u))&&-1!==(c=r.indexOf(a,u+o))&&!(c<=u);){for(var f=u;f=c)n[f]=null,r=r.substr(0,f)+" "+r.substr(f+1);else if(null!==n[f]){var d=n[f].indexOf(t[0]);-1===d?n[f]+=t:l&&(n[f]=n[f].substr(0,d+1)+(1+parseInt(n[f][d+1]))+n[f].substr(d+2))}var h=u+o,v=r.substr(h,c-h).indexOf(i);u=-1!==v?v:c+s}return n}function b(e,t){var r=n(e,128);return t?a(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function _(e,t,r,n){var i=b(e,n),a=function(e,t,r){for(var n=t.textAlign||"start",i=t.textBaseline||"alphabetic",a=[1<<30,1<<30],o=[0,0],s=e.length,l=0;l=0?r[a]:i}))},has___:{value:x((function(e){var r=y(e);return r?n in r:t.indexOf(e)>=0}))},set___:{value:x((function(e,i){var a,o=y(e);return o?o[n]=i:(a=t.indexOf(e))>=0?r[a]=i:(a=t.length,r[a]=i,t[a]=e),this}))},delete___:{value:x((function(e){var i,a,o=y(e);return o?n in o&&delete o[n]:!((i=t.indexOf(e))<0)&&(a=t.length-1,t[i]=void 0,r[i]=r[a],t[i]=t[a],t.length=a,r.length=a,!0)}))}})};v.prototype=Object.create(Object.prototype,{get:{value:function(e,t){return this.get___(e,t)},writable:!0,configurable:!0},has:{value:function(e){return this.has___(e)},writable:!0,configurable:!0},set:{value:function(e,t){return this.set___(e,t)},writable:!0,configurable:!0},delete:{value:function(e){return this.delete___(e)},writable:!0,configurable:!0}}),"function"===typeof r?function(){function n(){this instanceof v||b();var e,n=new r,i=void 0,a=!1;return e=t?function(e,t){return n.set(e,t),n.has(e)||(i||(i=new v),i.set(e,t)),this}:function(e,t){if(a)try{n.set(e,t)}catch(r){i||(i=new v),i.set___(e,t)}else n.set(e,t);return this},Object.create(v.prototype,{get___:{value:x((function(e,t){return i?n.has(e)?n.get(e):i.get___(e,t):n.get(e,t)}))},has___:{value:x((function(e){return n.has(e)||!!i&&i.has___(e)}))},set___:{value:x(e)},delete___:{value:x((function(e){var t=!!n.delete(e);return i&&i.delete___(e)||t}))},permitHostObjects___:{value:x((function(e){if(e!==m)throw new Error("bogus call to permitHostObjects___");a=!0}))}})}t&&"undefined"!==typeof Proxy&&(Proxy=void 0),n.prototype=v.prototype,e.exports=n,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():("undefined"!==typeof Proxy&&(Proxy=void 0),e.exports=v)}function m(e){e.permitHostObjects___&&e.permitHostObjects___(m)}function g(e){return!(e.substr(0,8)==l&&"___"===e.substr(e.length-3))}function y(e){if(e!==Object(e))throw new TypeError("Not an object: "+e);var t=e[u];if(t&&t.key===e)return t;if(s(e)){t={key:e};try{return o(e,u,{value:t,writable:!1,enumerable:!1,configurable:!1}),t}catch(r){return}}}function x(e){return e.prototype=null,Object.freeze(e)}function b(){h||"undefined"===typeof console||(h=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}}()},9222:function(e,t,r){var n=r(7178);e.exports=function(){var e={};return function(t){if(("object"!==typeof t||null===t)&&"function"!==typeof t)throw new Error("Weakmap-shim: Key must be object");var r=t.valueOf(e);return r&&r.identity===e?r:n(t,e)}}},7178:function(e){e.exports=function(e,t){var r={identity:t},n=e.valueOf;return Object.defineProperty(e,"valueOf",{value:function(e){return e!==t?n.apply(this,arguments):r},writable:!0}),r}},4037:function(e,t,r){var n=r(9222);e.exports=function(){var e=n();return{get:function(t,r){var n=e(t);return n.hasOwnProperty("value")?n.value:r},set:function(t,r){return e(t).value=r,this},has:function(t){return"value"in e(t)},delete:function(t){return delete e(t).value}}}},6183:function(e){"use strict";var t=function(){return function(e,t,r,n,i,a){var o=e[0],s=r[0],l=[0],u=s;n|=0;var c=0,f=s;for(c=0;c=0!==h>=0&&i.push(l[0]+.5+.5*(d+h)/(d-h)),n+=f,++l[0]}}};e.exports=function(e){return r={funcName:e.funcName},function(e){var t={};return function(r,n,i){var a=r.dtype,o=r.order,s=[a,o.join()].join(),l=t[s];return l||(t[s]=l=e([a,o])),l(r.shape.slice(0),r.data,r.stride,0|r.offset,n,i)}}(t.bind(void 0,r));var r}({funcName:"zeroCrossings"})},9584:function(e,t,r){"use strict";e.exports=function(e,t){var r=[];return t=+t||0,n(e.hi(e.shape[0]-1),r,t),r};var n=r(6183)},6601:function(){}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.loaded=!0,a.exports}return r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},r(7386)}()},e.exports=n()},12856:function(e,t,r){"use strict";function n(e,t){for(var r=0;rd)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,p.prototype),t}function p(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return g(e)}return v(e,t,r)}function v(e,t,r){if("string"===typeof e)return function(e,t){if("string"===typeof t&&""!==t||(t="utf8"),!p.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|_(e,t),n=h(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(te(e,Uint8Array)){var t=new Uint8Array(e);return x(t.buffer,t.byteOffset,t.byteLength)}return y(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e));if(te(e,ArrayBuffer)||e&&te(e.buffer,ArrayBuffer))return x(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(te(e,SharedArrayBuffer)||e&&te(e.buffer,SharedArrayBuffer)))return x(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return p.from(n,t,r);var i=function(e){if(p.isBuffer(e)){var t=0|b(e.length),r=h(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!==typeof e.length||re(e.length)?h(0):y(e):"Buffer"===e.type&&Array.isArray(e.data)?y(e.data):void 0}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return p.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(e))}function m(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function g(e){return m(e),h(e<0?0:0|b(e))}function y(e){for(var t=e.length<0?0:0|b(e.length),r=h(t),n=0;n=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return 0|e}function _(e,t){if(p.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||te(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(e));var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return J(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Q(e).length;default:if(i)return n?-1:J(e).length;t=(""+t).toLowerCase(),i=!0}}function w(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return z(this,t,r);case"utf8":case"utf-8":return O(this,t,r);case"ascii":return D(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return P(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function k(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function T(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),re(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=p.from(t,n)),p.isBuffer(t))return 0===t.length?-1:M(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):M(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function M(e,t,r,n,i){var a,o=1,s=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,l/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var c=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){for(var f=!0,d=0;di&&(n=i):n=i;var a,o=t.length;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function P(e,t,r){return 0===t&&r===e.length?u.fromByteArray(e):u.fromByteArray(e.slice(t,r))}function O(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,u=void 0,c=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=e[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=e[i+1],u=e[i+2],128===(192&l)&&128===(192&u)&&(f=(15&a)<<12|(63&l)<<6|63&u)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],128===(192&l)&&128===(192&u)&&128===(192&c)&&(f=(15&a)<<18|(63&l)<<12|(63&u)<<6|63&c)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=s}return function(e){var t=e.length;if(t<=I)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},p.byteLength=_,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;tr&&(e+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(e,t,r,n,i){if(te(e,Uint8Array)&&(e=p.from(e,e.offset,e.byteLength)),!p.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(e));if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0),s=Math.min(a,o),u=this.slice(n,i),c=e.slice(t,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return A(this,e,t,r);case"utf8":case"utf-8":return S(this,e,t,r);case"ascii":case"latin1":case"binary":return E(this,e,t,r);case"base64":return C(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,r,n,i,a){if(!p.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function j(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,r}function U(e,t,r,n,i){Z(t,n,i,e,r,7);var a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;var o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o>>=8,e[r+2]=o,o>>=8,e[r+1]=o,o>>=8,e[r]=o,r+8}function V(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function H(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,4),c.write(e,t,r,n,23,4),r+4}function q(e,t,r,n,i){return t=+t,r>>>=0,i||V(e,0,r,8),c.write(e,t,r,n,52,8),r+8}p.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},p.prototype.readUint8=p.prototype.readUInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),this[e]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]|this[e+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]<<8|this[e+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},p.prototype.readBigUInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,24),i=this[++e]+this[++e]*Math.pow(2,8)+this[++e]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=t*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e],i=this[++e]*Math.pow(2,24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+r;return(BigInt(n)<>>=0,t>>>=0,r||N(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},p.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||N(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},p.prototype.readInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},p.prototype.readInt16LE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt16BE=function(e,t){e>>>=0,t||N(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},p.prototype.readInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},p.prototype.readBigInt64LE=ie((function(e){X(e>>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=this[e+4]+this[e+5]*Math.pow(2,8)+this[e+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<>>=0,"offset");var t=this[e],r=this[e+7];void 0!==t&&void 0!==r||K(e,this.length-8);var n=(t<<24)+this[++e]*Math.pow(2,16)+this[++e]*Math.pow(2,8)+this[++e];return(BigInt(n)<>>=0,t||N(e,4,this.length),c.read(this,e,!0,23,4)},p.prototype.readFloatBE=function(e,t){return e>>>=0,t||N(e,4,this.length),c.read(this,e,!1,23,4)},p.prototype.readDoubleLE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!0,52,8)},p.prototype.readDoubleBE=function(e,t){return e>>>=0,t||N(e,8,this.length),c.read(this,e,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},p.prototype.writeUint8=p.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,255,0),this[t]=255&e,t+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigUInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},p.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);B(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},p.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},p.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},p.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},p.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},p.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},p.prototype.writeBigInt64LE=ie((function(e){return j(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=ie((function(e){return U(this,e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(e,t,r){return H(this,e,t,!0,r)},p.prototype.writeFloatBE=function(e,t,r){return H(this,e,t,!1,r)},p.prototype.writeDoubleLE=function(e,t,r){return q(this,e,t,!0,r)},p.prototype.writeDoubleBE=function(e,t,r){return q(this,e,t,!1,r)},p.prototype.copy=function(e,t,r,n){if(!p.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(a=t;a=n+4;r-=3)t="_".concat(e.slice(r-3,r)).concat(t);return"".concat(e.slice(0,r)).concat(t)}function Z(e,t,r,n,i,a){if(e>r||e3?0===t||t===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(t).concat(s," and <= ").concat(r).concat(s),new W.ERR_OUT_OF_RANGE("value",o,e)}!function(e,t,r){X(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||K(t,e.length-(r+1))}(n,i,a)}function X(e,t){if("number"!==typeof e)throw new W.ERR_INVALID_ARG_TYPE(t,"number",e)}function K(e,t,r){if(Math.floor(e)!==e)throw X(e,r),new W.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new W.ERR_BUFFER_OUT_OF_BOUNDS;throw new W.ERR_OUT_OF_RANGE(r||"offset",">= ".concat(r?1:0," and <= ").concat(t),e)}G("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?"".concat(e," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),G("ERR_INVALID_ARG_TYPE",(function(e,t){return'The "'.concat(e,'" argument must be of type number. Received type ').concat(l(t))}),TypeError),G("ERR_OUT_OF_RANGE",(function(e,t,r){var n='The value of "'.concat(e,'" is out of range.'),i=r;return Number.isInteger(r)&&Math.abs(r)>Math.pow(2,32)?i=Y(String(r)):"bigint"===typeof r&&(i=String(r),(r>Math.pow(BigInt(2),BigInt(32))||r<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),n+=" It must be ".concat(t,". Received ").concat(i)}),RangeError);var $=/[^+/0-9A-Za-z-_]/g;function J(e,t){var r;t=t||1/0;for(var n=e.length,i=null,a=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Q(e){return u.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace($,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function ee(e,t,r,n){var i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function te(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function re(e){return e!==e}var ne=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)t[n+i]=e[r]+e[i];return t}();function ie(e){return"undefined"===typeof BigInt?ae:e}function ae(){throw new Error("BigInt not supported")}},35791:function(e){"use strict";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var t=/(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,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(e){e||(e={});var i=e.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=t.test(i)&&!r.test(i)||!!e.tablet&&n.test(i);return!a&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},86781:function(e,t,r){"use strict";r.r(t),r.d(t,{sankeyCenter:function(){return d},sankeyCircular:function(){return L},sankeyJustify:function(){return f},sankeyLeft:function(){return u},sankeyRight:function(){return c}});var n=r(33064),i=r(15140),a=r(45879),o=r(2502),s=r.n(o);function l(e){return e.target.depth}function u(e){return e.depth}function c(e,t){return t-1-e.height}function f(e,t){return e.sourceLinks.length?e.depth:t-1}function d(e){return e.targetLinks.length?e.depth:e.sourceLinks.length?(0,n.VV)(e.sourceLinks,l)-1:0}function h(e){return function(){return e}}var p="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function v(e,t){return g(e.source,t.source)||e.index-t.index}function m(e,t){return g(e.target,t.target)||e.index-t.index}function g(e,t){return e.partOfCycle===t.partOfCycle?e.y0-t.y0:"top"===e.circularLinkType||"bottom"===t.circularLinkType?-1:1}function y(e){return e.value}function x(e){return(e.y0+e.y1)/2}function b(e){return x(e.source)}function _(e){return x(e.target)}function w(e){return e.index}function k(e){return e.nodes}function T(e){return e.links}function M(e,t){var r=e.get(t);if(!r)throw new Error("missing: "+t);return r}function A(e,t){return t(e)}var S=25,E=10,C=.3;function L(){var e,t,r=0,a=0,o=1,l=1,u=24,c=w,d=f,A=k,L=T,O=32,D=2,R=null;function F(){var f={nodes:A.apply(null,arguments),links:L.apply(null,arguments)};!function(e){e.nodes.forEach((function(e,t){e.index=t,e.sourceLinks=[],e.targetLinks=[]}));var t=(0,i.UI)(e.nodes,c);e.links.forEach((function(e,r){e.index=r;var n=e.source,i=e.target;"object"!==("undefined"===typeof n?"undefined":p(n))&&(n=e.source=M(t,n)),"object"!==("undefined"===typeof i?"undefined":p(i))&&(i=e.target=M(t,i)),n.sourceLinks.push(e),i.targetLinks.push(e)}))}(f),function(e,t,r){var n=0;if(null===r){for(var i=[],a=0;a0;--p)m(h*=.99,f),w();function v(i){if(t){var c=1/0;d.forEach((function(e){var r=l*t/(e.length+1);c=r0?t+S+E:t,bottom:r=r>0?r+S+E:r,left:a=a>0?a+S+E:a,right:i=i>0?i+S+E:i}}(s),p=function(e,t){var i=(0,n.Fp)(e.nodes,(function(e){return e.column})),s=o-r,c=l-a,f=s+t.right+t.left,d=c+t.top+t.bottom,h=s/f,p=c/d;return r=r*h+t.left,o=0==t.right?o:o*h,a=a*p+t.top,l*=p,e.nodes.forEach((function(e){e.x0=r+e.column*((o-r-u)/i),e.x1=e.x0+u})),p}(s,h);f*=p,s.links.forEach((function(e){e.width=e.value*f})),d.forEach((function(e){var t=e.length;e.forEach((function(e,r){e.depth==d.length-1&&1==t||0==e.depth&&1==t?(e.y0=l/2-e.value*f,e.y1=e.y0+e.value*f):e.partOfCycle?0==I(e,i)?(e.y0=l/2+r,e.y1=e.y0+e.value*f):"top"==e.circularLinkType?(e.y0=a+r,e.y1=e.y0+e.value*f):(e.y0=l-e.value*f-r,e.y1=e.y0+e.value*f):0==h.top||0==h.bottom?(e.y0=(l-a)/t*r,e.y1=e.y0+e.value*f):(e.y0=(l-a)/2-t/2+r,e.y1=e.y0+e.value*f)}))}))}function m(e,t){var r=d.length;d.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,t)>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==r-1&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else{var u=(0,n.J6)(i.sourceLinks,_),c=(0,n.J6)(i.targetLinks,b),f=((u&&c?(u+c)/2:u||c)-x(i))*e;i.y0+=f,i.y1+=f}}))}))}function w(){d.forEach((function(t){var r,n,i,o=a,s=t.length;for(t.sort(g),i=0;i0&&(r.y0+=n,r.y1+=n),o=r.y1+e;if((n=o-e-l)>0)for(o=r.y0-=n,r.y1-=n,i=s-2;i>=0;--i)(n=(r=t[i]).y1+e-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}(f,O,c),N(f);for(var h=0;h<4;h++)Z(f,l,c),X(f,0,c),G(f,a,l,c),Z(f,l,c),X(f,0,c);return function(e,t,r){var i=e.nodes,a=e.links,o=!1,s=!1;if(a.forEach((function(e){"top"==e.circularLinkType?o=!0:"bottom"==e.circularLinkType&&(s=!0)})),0==o||0==s){var l=(0,n.VV)(i,(function(e){return e.y0})),u=(r-t)/((0,n.Fp)(i,(function(e){return e.y1}))-l);i.forEach((function(e){var t=(e.y1-e.y0)*u;e.y0=(e.y0-l)*u,e.y1=e.y0+t})),a.forEach((function(e){e.y0=(e.y0-l)*u,e.y1=(e.y1-l)*u,e.width=e.width*u}))}}(f,a,l),z(f,D,l,c),f}function N(e){e.nodes.forEach((function(e){e.sourceLinks.sort(m),e.targetLinks.sort(v)})),e.nodes.forEach((function(e){var t=e.y0,r=t,n=e.y1,i=n;e.sourceLinks.forEach((function(e){e.circular?(e.y0=n-e.width/2,n-=e.width):(e.y0=t+e.width/2,t+=e.width)})),e.targetLinks.forEach((function(e){e.circular?(e.y1=i-e.width/2,i-=e.width):(e.y1=r+e.width/2,r+=e.width)}))}))}return F.nodeId=function(e){return arguments.length?(c="function"===typeof e?e:h(e),F):c},F.nodeAlign=function(e){return arguments.length?(d="function"===typeof e?e:h(e),F):d},F.nodeWidth=function(e){return arguments.length?(u=+e,F):u},F.nodePadding=function(t){return arguments.length?(e=+t,F):e},F.nodes=function(e){return arguments.length?(A="function"===typeof e?e:h(e),F):A},F.links=function(e){return arguments.length?(L="function"===typeof e?e:h(e),F):L},F.size=function(e){return arguments.length?(r=a=0,o=+e[0],l=+e[1],F):[o-r,l-a]},F.extent=function(e){return arguments.length?(r=+e[0][0],o=+e[1][0],a=+e[0][1],l=+e[1][1],F):[[r,a],[o,l]]},F.iterations=function(e){return arguments.length?(O=+e,F):O},F.circularLinkGap=function(e){return arguments.length?(D=+e,F):D},F.nodePaddingRatio=function(e){return arguments.length?(t=+e,F):t},F.sortNodes=function(e){return arguments.length?(R=e,F):R},F.update=function(e){return P(e,c),N(e),e.links.forEach((function(e){e.circular&&(e.circularLinkType=e.y0+e.y11||i>1)}function R(e,t,r){return e.sort(F),e.forEach((function(n,i){var a,o,s=0;if(J(n,r)&&D(n))n.circularPathData.verticalBuffer=s+n.width/2;else{for(var l=0;lo.source.column)){var u=e[l].circularPathData.verticalBuffer+e[l].width/2+t;s=u>s?u:s}n.circularPathData.verticalBuffer=s+n.width/2}})),e}function z(e,t,r,i){var o=(0,n.VV)(e.links,(function(e){return e.source.y0}));e.links.forEach((function(e){e.circular&&(e.circularPathData={})})),R(e.links.filter((function(e){return"top"==e.circularLinkType})),t,i),R(e.links.filter((function(e){return"bottom"==e.circularLinkType})),t,i),e.links.forEach((function(n){if(n.circular){if(n.circularPathData.arcRadius=n.width+E,n.circularPathData.leftNodeBuffer=5,n.circularPathData.rightNodeBuffer=5,n.circularPathData.sourceWidth=n.source.x1-n.source.x0,n.circularPathData.sourceX=n.source.x0+n.circularPathData.sourceWidth,n.circularPathData.targetX=n.target.x0,n.circularPathData.sourceY=n.y0,n.circularPathData.targetY=n.y1,J(n,i)&&D(n))n.circularPathData.leftSmallArcRadius=E+n.width/2,n.circularPathData.leftLargeArcRadius=E+n.width/2,n.circularPathData.rightSmallArcRadius=E+n.width/2,n.circularPathData.rightLargeArcRadius=E+n.width/2,"bottom"==n.circularLinkType?(n.circularPathData.verticalFullExtent=n.source.y1+S+n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.rightLargeArcRadius):(n.circularPathData.verticalFullExtent=n.source.y0-S-n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.rightLargeArcRadius);else{var s=n.source.column,l=n.circularLinkType,u=e.links.filter((function(e){return e.source.column==s&&e.circularLinkType==l}));"bottom"==n.circularLinkType?u.sort(B):u.sort(N);var c=0;u.forEach((function(e,r){e.circularLinkID==n.circularLinkID&&(n.circularPathData.leftSmallArcRadius=E+n.width/2+c,n.circularPathData.leftLargeArcRadius=E+n.width/2+r*t+c),c+=e.width})),s=n.target.column,u=e.links.filter((function(e){return e.target.column==s&&e.circularLinkType==l})),"bottom"==n.circularLinkType?u.sort(U):u.sort(j),c=0,u.forEach((function(e,r){e.circularLinkID==n.circularLinkID&&(n.circularPathData.rightSmallArcRadius=E+n.width/2+c,n.circularPathData.rightLargeArcRadius=E+n.width/2+r*t+c),c+=e.width})),"bottom"==n.circularLinkType?(n.circularPathData.verticalFullExtent=Math.max(r,n.source.y1,n.target.y1)+S+n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent-n.circularPathData.rightLargeArcRadius):(n.circularPathData.verticalFullExtent=o-S-n.circularPathData.verticalBuffer,n.circularPathData.verticalLeftInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.leftLargeArcRadius,n.circularPathData.verticalRightInnerExtent=n.circularPathData.verticalFullExtent+n.circularPathData.rightLargeArcRadius)}n.circularPathData.leftInnerExtent=n.circularPathData.sourceX+n.circularPathData.leftNodeBuffer,n.circularPathData.rightInnerExtent=n.circularPathData.targetX-n.circularPathData.rightNodeBuffer,n.circularPathData.leftFullExtent=n.circularPathData.sourceX+n.circularPathData.leftLargeArcRadius+n.circularPathData.leftNodeBuffer,n.circularPathData.rightFullExtent=n.circularPathData.targetX-n.circularPathData.rightLargeArcRadius-n.circularPathData.rightNodeBuffer}if(n.circular)n.path=function(e){return"top"==e.circularLinkType?"M"+e.circularPathData.sourceX+" "+e.circularPathData.sourceY+" L"+e.circularPathData.leftInnerExtent+" "+e.circularPathData.sourceY+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftSmallArcRadius+" 0 0 0 "+e.circularPathData.leftFullExtent+" "+(e.circularPathData.sourceY-e.circularPathData.leftSmallArcRadius)+" L"+e.circularPathData.leftFullExtent+" "+e.circularPathData.verticalLeftInnerExtent+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftLargeArcRadius+" 0 0 0 "+e.circularPathData.leftInnerExtent+" "+e.circularPathData.verticalFullExtent+" L"+e.circularPathData.rightInnerExtent+" "+e.circularPathData.verticalFullExtent+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightLargeArcRadius+" 0 0 0 "+e.circularPathData.rightFullExtent+" "+e.circularPathData.verticalRightInnerExtent+" L"+e.circularPathData.rightFullExtent+" "+(e.circularPathData.targetY-e.circularPathData.rightSmallArcRadius)+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightSmallArcRadius+" 0 0 0 "+e.circularPathData.rightInnerExtent+" "+e.circularPathData.targetY+" L"+e.circularPathData.targetX+" "+e.circularPathData.targetY:"M"+e.circularPathData.sourceX+" "+e.circularPathData.sourceY+" L"+e.circularPathData.leftInnerExtent+" "+e.circularPathData.sourceY+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftSmallArcRadius+" 0 0 1 "+e.circularPathData.leftFullExtent+" "+(e.circularPathData.sourceY+e.circularPathData.leftSmallArcRadius)+" L"+e.circularPathData.leftFullExtent+" "+e.circularPathData.verticalLeftInnerExtent+" A"+e.circularPathData.leftLargeArcRadius+" "+e.circularPathData.leftLargeArcRadius+" 0 0 1 "+e.circularPathData.leftInnerExtent+" "+e.circularPathData.verticalFullExtent+" L"+e.circularPathData.rightInnerExtent+" "+e.circularPathData.verticalFullExtent+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightLargeArcRadius+" 0 0 1 "+e.circularPathData.rightFullExtent+" "+e.circularPathData.verticalRightInnerExtent+" L"+e.circularPathData.rightFullExtent+" "+(e.circularPathData.targetY+e.circularPathData.rightSmallArcRadius)+" A"+e.circularPathData.rightLargeArcRadius+" "+e.circularPathData.rightSmallArcRadius+" 0 0 1 "+e.circularPathData.rightInnerExtent+" "+e.circularPathData.targetY+" L"+e.circularPathData.targetX+" "+e.circularPathData.targetY}(n);else{var f=(0,a.h5)().source((function(e){return[e.source.x0+(e.source.x1-e.source.x0),e.y0]})).target((function(e){return[e.target.x0,e.y1]}));n.path=f(n)}}))}function F(e,t){return V(e)==V(t)?"bottom"==e.circularLinkType?B(e,t):N(e,t):V(t)-V(e)}function N(e,t){return e.y0-t.y0}function B(e,t){return t.y0-e.y0}function j(e,t){return e.y1-t.y1}function U(e,t){return t.y1-e.y1}function V(e){return e.target.column-e.source.column}function H(e){return e.target.x0-e.source.x1}function q(e,t){var r=O(e),n=H(t)/Math.tan(r);return"up"==$(e)?e.y1+n:e.y1-n}function W(e,t){var r=O(e),n=H(t)/Math.tan(r);return"up"==$(e)?e.y1-n:e.y1+n}function G(e,t,r,n){e.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++)e.nodes.forEach((function(o){if(o.column==a){var u,c=s/(l+1),f=Math.pow(1-c,3),d=3*c*Math.pow(1-c,2),h=3*Math.pow(c,2)*(1-c),p=Math.pow(c,3),v=f*i.y0+d*i.y0+h*i.y1+p*i.y1,m=v-i.width/2,g=v+i.width/2;m>o.y0&&ma.y0&&i.y0a.y0&&i.y1a.y1)&&Y(e,u,t,r)}))):(g>o.y0&&go.y1)&&(u=g-o.y0+10,o=Y(o,u,t,r),e.nodes.forEach((function(e){A(e,n)!=A(o,n)&&e.column==o.column&&e.y0o.y1&&Y(e,u,t,r)})))}}))}}))}function Y(e,t,r,n){return e.y0+t>=r&&e.y1+t<=n&&(e.y0=e.y0+t,e.y1=e.y1+t,e.targetLinks.forEach((function(e){e.y1=e.y1+t})),e.sourceLinks.forEach((function(e){e.y0=e.y0+t}))),e}function Z(e,t,r,n){e.nodes.forEach((function(i){n&&i.y+(i.y1-i.y0)>t&&(i.y=i.y-(i.y+(i.y1-i.y0)-t));var a=e.links.filter((function(e){return A(e.source,r)==A(i,r)})),o=a.length;o>1&&a.sort((function(e,t){if(!e.circular&&!t.circular){if(e.target.column==t.target.column)return e.y1-t.y1;if(!K(e,t))return e.y1-t.y1;if(e.target.column>t.target.column){var r=W(t,e);return e.y1-r}if(t.target.column>e.target.column)return W(e,t)-t.y1}return e.circular&&!t.circular?"top"==e.circularLinkType?-1:1:t.circular&&!e.circular?"top"==t.circularLinkType?1:-1:e.circular&&t.circular?e.circularLinkType===t.circularLinkType&&"top"==e.circularLinkType?e.target.column===t.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:e.circularLinkType===t.circularLinkType&&"bottom"==e.circularLinkType?e.target.column===t.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:"top"==e.circularLinkType?-1:1:void 0}));var s=i.y0;a.forEach((function(e){e.y0=s+e.width/2,s+=e.width})),a.forEach((function(e,t){if("bottom"==e.circularLinkType){for(var r=t+1,n=0;r1&&n.sort((function(e,t){if(!e.circular&&!t.circular){if(e.source.column==t.source.column)return e.y0-t.y0;if(!K(e,t))return e.y0-t.y0;if(t.source.column0?"up":"down"}function J(e,t){return A(e.source,t)==A(e.target,t)}},30838:function(e,t,r){"use strict";r.r(t),r.d(t,{sankey:function(){return w},sankeyCenter:function(){return u},sankeyJustify:function(){return l},sankeyLeft:function(){return o},sankeyLinkHorizontal:function(){return A},sankeyRight:function(){return s}});var n=r(33064),i=r(15140);function a(e){return e.target.depth}function o(e){return e.depth}function s(e,t){return t-1-e.height}function l(e,t){return e.sourceLinks.length?e.depth:t-1}function u(e){return e.targetLinks.length?e.depth:e.sourceLinks.length?(0,n.VV)(e.sourceLinks,a)-1:0}function c(e){return function(){return e}}function f(e,t){return h(e.source,t.source)||e.index-t.index}function d(e,t){return h(e.target,t.target)||e.index-t.index}function h(e,t){return e.y0-t.y0}function p(e){return e.value}function v(e){return(e.y0+e.y1)/2}function m(e){return v(e.source)*e.value}function g(e){return v(e.target)*e.value}function y(e){return e.index}function x(e){return e.nodes}function b(e){return e.links}function _(e,t){var r=e.get(t);if(!r)throw new Error("missing: "+t);return r}function w(){var e=0,t=0,r=1,a=1,o=24,s=8,u=y,w=l,k=x,T=b,M=32,A=2/3;function S(){var l={nodes:k.apply(null,arguments),links:T.apply(null,arguments)};return function(e){e.nodes.forEach((function(e,t){e.index=t,e.sourceLinks=[],e.targetLinks=[]}));var t=(0,i.UI)(e.nodes,u);e.links.forEach((function(e,r){e.index=r;var n=e.source,i=e.target;"object"!==typeof n&&(n=e.source=_(t,n)),"object"!==typeof i&&(i=e.target=_(t,i)),n.sourceLinks.push(e),i.targetLinks.push(e)}))}(l),function(e){e.nodes.forEach((function(e){e.value=Math.max((0,n.Sm)(e.sourceLinks,p),(0,n.Sm)(e.targetLinks,p))}))}(l),function(t){var n,i,a;for(n=t.nodes,i=[],a=0;n.length;++a,n=i,i=[])n.forEach((function(e){e.depth=a,e.sourceLinks.forEach((function(e){i.indexOf(e.target)<0&&i.push(e.target)}))}));for(n=t.nodes,i=[],a=0;n.length;++a,n=i,i=[])n.forEach((function(e){e.height=a,e.targetLinks.forEach((function(e){i.indexOf(e.source)<0&&i.push(e.source)}))}));var s=(r-e-o)/(a-1);t.nodes.forEach((function(t){t.x1=(t.x0=e+Math.max(0,Math.min(a-1,Math.floor(w.call(null,t,a))))*s)+o}))}(l),function(e){var r=(0,i.b1)().key((function(e){return e.x0})).sortKeys(n.j2).entries(e.nodes).map((function(e){return e.values}));u(),d();for(var o=1,l=M;l>0;--l)f(o*=.99),d(),c(o),d();function u(){var i=(0,n.Fp)(r,(function(e){return e.length})),o=A*(a-t)/(i-1);s>o&&(s=o);var l=(0,n.VV)(r,(function(e){return(a-t-(e.length-1)*s)/(0,n.Sm)(e,p)}));r.forEach((function(e){e.forEach((function(e,t){e.y1=(e.y0=t)+e.value*l}))})),e.links.forEach((function(e){e.width=e.value*l}))}function c(e){r.forEach((function(t){t.forEach((function(t){if(t.targetLinks.length){var r=((0,n.Sm)(t.targetLinks,m)/(0,n.Sm)(t.targetLinks,p)-v(t))*e;t.y0+=r,t.y1+=r}}))}))}function f(e){r.slice().reverse().forEach((function(t){t.forEach((function(t){if(t.sourceLinks.length){var r=((0,n.Sm)(t.sourceLinks,g)/(0,n.Sm)(t.sourceLinks,p)-v(t))*e;t.y0+=r,t.y1+=r}}))}))}function d(){r.forEach((function(e){var r,n,i,o=t,l=e.length;for(e.sort(h),i=0;i0&&(r.y0+=n,r.y1+=n),o=r.y1+s;if((n=o-s-a)>0)for(o=r.y0-=n,r.y1-=n,i=l-2;i>=0;--i)(n=(r=e[i]).y1+s-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}(l),E(l),l}function E(e){e.nodes.forEach((function(e){e.sourceLinks.sort(d),e.targetLinks.sort(f)})),e.nodes.forEach((function(e){var t=e.y0,r=t;e.sourceLinks.forEach((function(e){e.y0=t+e.width/2,t+=e.width})),e.targetLinks.forEach((function(e){e.y1=r+e.width/2,r+=e.width}))}))}return S.update=function(e){return E(e),e},S.nodeId=function(e){return arguments.length?(u="function"===typeof e?e:c(e),S):u},S.nodeAlign=function(e){return arguments.length?(w="function"===typeof e?e:c(e),S):w},S.nodeWidth=function(e){return arguments.length?(o=+e,S):o},S.nodePadding=function(e){return arguments.length?(s=+e,S):s},S.nodes=function(e){return arguments.length?(k="function"===typeof e?e:c(e),S):k},S.links=function(e){return arguments.length?(T="function"===typeof e?e:c(e),S):T},S.size=function(n){return arguments.length?(e=t=0,r=+n[0],a=+n[1],S):[r-e,a-t]},S.extent=function(n){return arguments.length?(e=+n[0][0],r=+n[1][0],t=+n[0][1],a=+n[1][1],S):[[e,t],[r,a]]},S.iterations=function(e){return arguments.length?(M=+e,S):M},S}var k=r(45879);function T(e){return[e.source.x1,e.y0]}function M(e){return[e.target.x0,e.y1]}function A(){return(0,k.h5)().source(T).target(M)}},39898:function(e,t,r){var n,i;(function(){var a={version:"3.8.0"},o=[].slice,s=function(e){return o.call(e)},l=self.document;function u(e){return e&&(e.ownerDocument||e.document||e).documentElement}function c(e){return e&&(e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView)}if(l)try{s(l.documentElement.childNodes)[0].nodeType}catch(ga){s=function(e){for(var t=e.length,r=new Array(t);t--;)r[t]=e[t];return r}}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,d=f.setAttribute,h=f.setAttributeNS,p=this.CSSStyleDeclaration.prototype,v=p.setProperty;f.setAttribute=function(e,t){d.call(this,e,t+"")},f.setAttributeNS=function(e,t,r){h.call(this,e,t,r+"")},p.setProperty=function(e,t,r){v.call(this,e,t+"",r)}}function m(e,t){return et?1:e>=t?0:NaN}function g(e){return null===e?NaN:+e}function y(e){return!isNaN(e)}function x(e){return{left:function(t,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=t.length);n>>1;e(t[a],r)<0?n=a+1:i=a}return n},right:function(t,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=t.length);n>>1;e(t[a],r)>0?i=a:n=a+1}return n}}}a.ascending=m,a.descending=function(e,t){return te?1:t>=e?0:NaN},a.min=function(e,t){var r,n,i=-1,a=e.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++in&&(r=n)}else{for(;++i=n){r=n;break}for(;++in&&(r=n)}return r},a.max=function(e,t){var r,n,i=-1,a=e.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++ir&&(r=n)}else{for(;++i=n){r=n;break}for(;++ir&&(r=n)}return r},a.extent=function(e,t){var r,n,i,a=-1,o=e.length;if(1===arguments.length){for(;++a=n){r=i=n;break}for(;++an&&(r=n),i=n){r=i=n;break}for(;++an&&(r=n),i1)return o/(l-1)},a.deviation=function(){var e=a.variance.apply(this,arguments);return e?Math.sqrt(e):e};var b=x(m);function _(e){return e.length}a.bisectLeft=b.left,a.bisect=a.bisectRight=b.right,a.bisector=function(e){return x(1===e.length?function(t,r){return m(e(t),r)}:e)},a.shuffle=function(e,t,r){(a=arguments.length)<3&&(r=e.length,a<2&&(t=0));for(var n,i,a=r-t;a;)i=Math.random()*a--|0,n=e[a+t],e[a+t]=e[i+t],e[i+t]=n;return e},a.permute=function(e,t){for(var r=t.length,n=new Array(r);r--;)n[r]=e[t[r]];return n},a.pairs=function(e){for(var t=0,r=e.length-1,n=e[0],i=new Array(r<0?0:r);t=0;)for(t=(n=e[i]).length;--t>=0;)r[--o]=n[t];return r};var w=Math.abs;function k(e,t){for(var r in t)Object.defineProperty(e.prototype,r,{value:t[r],enumerable:!1})}function T(){this._=Object.create(null)}a.range=function(e,t,r){if(arguments.length<3&&(r=1,arguments.length<2&&(t=e,e=0)),(t-e)/r===1/0)throw new Error("infinite range");var n,i=[],a=function(e){for(var t=1;e*t%1;)t*=10;return t}(w(r)),o=-1;if(e*=a,t*=a,(r*=a)<0)for(;(n=e+r*++o)>t;)i.push(n/a);else for(;(n=e+r*++o)=n.length)return t?t.call(r,a):e?a.sort(e):a;for(var l,u,c,f,d=-1,h=a.length,p=n[s++],v=new T;++d=n.length)return e;var r=[],a=i[t++];return e.forEach((function(e,n){r.push({key:e,values:s(n,t)})})),a?r.sort((function(e,t){return a(e.key,t.key)})):r}return r.map=function(e,t){return o(t,e,0)},r.entries=function(e){return s(o(a.map,e,0),0)},r.key=function(e){return n.push(e),r},r.sortKeys=function(e){return i[n.length-1]=e,r},r.sortValues=function(t){return e=t,r},r.rollup=function(e){return t=e,r},r},a.set=function(e){var t=new D;if(e)for(var r=0,n=e.length;r=0&&(n=e.slice(r+1),e=e.slice(0,r)),e)return arguments.length<2?this[e].on(n):this[e].on(n,t);if(2===arguments.length){if(null==t)for(e in this)this.hasOwnProperty(e)&&this[e].on(n,null);return this}},a.event=null,a.requote=function(e){return e.replace(W,"\\$&")};var W=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,G={}.__proto__?function(e,t){e.__proto__=t}:function(e,t){for(var r in t)e[r]=t[r]};function Y(e){return G(e,$),e}var Z=function(e,t){return t.querySelector(e)},X=function(e,t){return t.querySelectorAll(e)},K=function(e,t){var r=e.matches||e[F(e,"matchesSelector")];return K=function(e,t){return r.call(e,t)},K(e,t)};"function"===typeof Sizzle&&(Z=function(e,t){return Sizzle(e,t)[0]||null},X=Sizzle,K=Sizzle.matchesSelector),a.selection=function(){return a.select(l.documentElement)};var $=a.selection.prototype=[];function J(e){return"function"===typeof e?e:function(){return Z(e,this)}}function Q(e){return"function"===typeof e?e:function(){return X(e,this)}}$.select=function(e){var t,r,n,i,a=[];e=J(e);for(var o=-1,s=this.length;++o=0&&"xmlns"!==(r=e.slice(0,t))&&(e=e.slice(t+1)),te.hasOwnProperty(r)?{space:te[r],local:e}:e}},$.attr=function(e,t){if(arguments.length<2){if("string"===typeof e){var r=this.node();return(e=a.ns.qualify(e)).local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}for(t in e)this.each(re(t,e[t]));return this}return this.each(re(e,t))},$.classed=function(e,t){if(arguments.length<2){if("string"===typeof e){var r=this.node(),n=(e=ae(e)).length,i=-1;if(t=r.classList){for(;++i=0;)(r=n[i])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},$.sort=function(e){e=pe.apply(this,arguments);for(var t=-1,r=this.length;++t0&&(e=e.slice(0,i));var l=xe.get(e);function u(){var t=this[n];t&&(this.removeEventListener(e,t,t.$),delete this[n])}return l&&(e=l,o=_e),i?t?function(){var i=o(t,s(arguments));u.call(this),this.addEventListener(e,this[n]=i,i.$=r),i._=t}:u:t?B:function(){var t,r=new RegExp("^__on([^.]+)"+a.requote(e)+"$");for(var n in this)if(t=n.match(r)){var i=this[n];this.removeEventListener(t[1],i,i.$),delete this[n]}}}a.selection.enter=me,a.selection.enter.prototype=ge,ge.append=$.append,ge.empty=$.empty,ge.node=$.node,ge.call=$.call,ge.size=$.size,ge.select=function(e){for(var t,r,n,i,a,o=[],s=-1,l=this.length;++s=t&&(t=i+1);!(o=s[t])&&++t1?Ie:e<-1?-Ie:Math.asin(e)}function Fe(e){return((e=Math.exp(e))+1/e)/2}var Ne=Math.SQRT2;a.interpolateZoom=function(e,t){var r,n,i=e[0],a=e[1],o=e[2],s=t[0],l=t[1],u=t[2],c=s-i,f=l-a,d=c*c+f*f;if(d0&&(e=e.transition().duration(v)),e.call(w.event)}function S(){s&&s.domain(o.range().map((function(e){return(e-d.x)/d.k})).map(o.invert)),f&&f.domain(u.range().map((function(e){return(e-d.y)/d.k})).map(u.invert))}function E(e){m++||e({type:"zoomstart"})}function C(e){S(),e({type:"zoom",scale:d.k,translate:[d.x,d.y]})}function L(e){--m||(e({type:"zoomend"}),t=null)}function P(){var e=this,t=_.of(e,arguments),r=0,n=a.select(c(e)).on(y,(function(){r=1,M(a.mouse(e),i),C(t)})).on(x,(function(){n.on(y,null).on(x,null),o(r),L(t)})),i=k(a.mouse(e)),o=Te(e);Ji.call(e),E(t)}function O(){var e,t=this,r=_.of(t,arguments),n={},o=0,s=".zoom-"+a.event.changedTouches[0].identifier,l="touchmove"+s,u="touchend"+s,c=[],f=a.select(t),h=Te(t);function p(){var r=a.touches(t);return e=d.k,r.forEach((function(e){e.identifier in n&&(n[e.identifier]=k(e))})),r}function v(){var e=a.event.target;a.select(e).on(l,m).on(u,y),c.push(e);for(var r=a.event.changedTouches,s=0,f=r.length;s1){g=h[0];var x=h[1],b=g[0]-x[0],_=g[1]-x[1];o=b*b+_*_}}function m(){var s,l,u,c,f=a.touches(t);Ji.call(t);for(var d=0,h=f.length;d360?e-=360:e<0&&(e+=360),e<60?n+(i-n)*e/60:e<180?i:e<240?n+(i-n)*(240-e)/60:n}(e))}return e=isNaN(e)?0:(e%=360)<0?e+360:e,t=isNaN(t)||t<0?0:t>1?1:t,n=2*(r=r<0?0:r>1?1:r)-(i=r<=.5?r*(1+t):r+t-r*t),new ot(a(e+120),a(e),a(e-120))}function Ge(e,t,r){return this instanceof Ge?(this.h=+e,this.c=+t,void(this.l=+r)):arguments.length<2?e instanceof Ge?new Ge(e.h,e.c,e.l):rt(e instanceof Xe?e.l:(e=ht((e=a.rgb(e)).r,e.g,e.b)).l,e.a,e.b):new Ge(e,t,r)}qe.brighter=function(e){return e=Math.pow(.7,arguments.length?e:1),new He(this.h,this.s,this.l/e)},qe.darker=function(e){return e=Math.pow(.7,arguments.length?e:1),new He(this.h,this.s,e*this.l)},qe.rgb=function(){return We(this.h,this.s,this.l)},a.hcl=Ge;var Ye=Ge.prototype=new Ve;function Ze(e,t,r){return isNaN(e)&&(e=0),isNaN(t)&&(t=0),new Xe(r,Math.cos(e*=De)*t,Math.sin(e)*t)}function Xe(e,t,r){return this instanceof Xe?(this.l=+e,this.a=+t,void(this.b=+r)):arguments.length<2?e instanceof Xe?new Xe(e.l,e.a,e.b):e instanceof Ge?Ze(e.h,e.c,e.l):ht((e=ot(e)).r,e.g,e.b):new Xe(e,t,r)}Ye.brighter=function(e){return new Ge(this.h,this.c,Math.min(100,this.l+Ke*(arguments.length?e:1)))},Ye.darker=function(e){return new Ge(this.h,this.c,Math.max(0,this.l-Ke*(arguments.length?e:1)))},Ye.rgb=function(){return Ze(this.h,this.c,this.l).rgb()},a.lab=Xe;var Ke=18,$e=.95047,Je=1,Qe=1.08883,et=Xe.prototype=new Ve;function tt(e,t,r){var n=(e+16)/116,i=n+t/500,a=n-r/200;return new ot(at(3.2404542*(i=nt(i)*$e)-1.5371385*(n=nt(n)*Je)-.4985314*(a=nt(a)*Qe)),at(-.969266*i+1.8760108*n+.041556*a),at(.0556434*i-.2040259*n+1.0572252*a))}function rt(e,t,r){return e>0?new Ge(Math.atan2(r,t)*Re,Math.sqrt(t*t+r*r),e):new Ge(NaN,NaN,e)}function nt(e){return e>.206893034?e*e*e:(e-4/29)/7.787037}function it(e){return e>.008856?Math.pow(e,1/3):7.787037*e+4/29}function at(e){return Math.round(255*(e<=.00304?12.92*e:1.055*Math.pow(e,1/2.4)-.055))}function ot(e,t,r){return this instanceof ot?(this.r=~~e,this.g=~~t,void(this.b=~~r)):arguments.length<2?e instanceof ot?new ot(e.r,e.g,e.b):ft(""+e,ot,We):new ot(e,t,r)}function st(e){return new ot(e>>16,e>>8&255,255&e)}function lt(e){return st(e)+""}et.brighter=function(e){return new Xe(Math.min(100,this.l+Ke*(arguments.length?e:1)),this.a,this.b)},et.darker=function(e){return new Xe(Math.max(0,this.l-Ke*(arguments.length?e:1)),this.a,this.b)},et.rgb=function(){return tt(this.l,this.a,this.b)},a.rgb=ot;var ut=ot.prototype=new Ve;function ct(e){return e<16?"0"+Math.max(0,e).toString(16):Math.min(255,e).toString(16)}function ft(e,t,r){var n,i,a,o=0,s=0,l=0;if(n=/([a-z]+)\((.*)\)/.exec(e=e.toLowerCase()))switch(i=n[2].split(","),n[1]){case"hsl":return r(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return t(vt(i[0]),vt(i[1]),vt(i[2]))}return(a=mt.get(e))?t(a.r,a.g,a.b):(null==e||"#"!==e.charAt(0)||isNaN(a=parseInt(e.slice(1),16))||(4===e.length?(o=(3840&a)>>4,o|=o>>4,s=240&a,s|=s>>4,l=15&a,l|=l<<4):7===e.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,l=255&a)),t(o,s,l))}function dt(e,t,r){var n,i,a=Math.min(e/=255,t/=255,r/=255),o=Math.max(e,t,r),s=o-a,l=(o+a)/2;return s?(i=l<.5?s/(o+a):s/(2-o-a),n=e==o?(t-r)/s+(t0&&l<1?0:n),new He(n,i,l)}function ht(e,t,r){var n=it((.4124564*(e=pt(e))+.3575761*(t=pt(t))+.1804375*(r=pt(r)))/$e),i=it((.2126729*e+.7151522*t+.072175*r)/Je);return Xe(116*i-16,500*(n-i),200*(i-it((.0193339*e+.119192*t+.9503041*r)/Qe)))}function pt(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function vt(e){var t=parseFloat(e);return"%"===e.charAt(e.length-1)?Math.round(2.55*t):t}ut.brighter=function(e){e=Math.pow(.7,arguments.length?e:1);var t=this.r,r=this.g,n=this.b,i=30;return t||r||n?(t&&t=200&&t<300||304===t){try{e=r.call(i,u)}catch(ga){return void o.error.call(i,ga)}o.load.call(i,e)}else o.error.call(i,u)}return self.XDomainRequest&&!("withCredentials"in u)&&/^(http(s)?:)?\/\//.test(e)&&(u=new XDomainRequest),"onload"in u?u.onload=u.onerror=f:u.onreadystatechange=function(){u.readyState>3&&f()},u.onprogress=function(e){var t=a.event;a.event=e;try{o.progress.call(i,u)}finally{a.event=t}},i.header=function(e,t){return e=(e+"").toLowerCase(),arguments.length<2?l[e]:(null==t?delete l[e]:l[e]=t+"",i)},i.mimeType=function(e){return arguments.length?(t=null==e?null:e+"",i):t},i.responseType=function(e){return arguments.length?(c=e,i):c},i.response=function(e){return r=e,i},["get","post"].forEach((function(e){i[e]=function(){return i.send.apply(i,[e].concat(s(arguments)))}})),i.send=function(r,n,a){if(2===arguments.length&&"function"===typeof n&&(a=n,n=null),u.open(r,e,!0),null==t||"accept"in l||(l.accept=t+",*/*"),u.setRequestHeader)for(var s in l)u.setRequestHeader(s,l[s]);return null!=t&&u.overrideMimeType&&u.overrideMimeType(t),null!=c&&(u.responseType=c),null!=a&&i.on("error",a).on("load",(function(e){a(null,e)})),o.beforesend.call(i,u),u.send(null==n?null:n),i},i.abort=function(){return u.abort(),i},a.rebind(i,o,"on"),null==n?i:i.get(function(e){return 1===e.length?function(t,r){e(null==t?r:null)}:e}(n))}mt.forEach((function(e,t){mt.set(e,st(t))})),a.functor=gt,a.xhr=yt(R),a.dsv=function(e,t){var r=new RegExp('["'+e+"\n]"),n=e.charCodeAt(0);function i(e,r,n){arguments.length<3&&(n=r,r=null);var i=xt(e,t,null==r?a:o(r),n);return i.row=function(e){return arguments.length?i.response(null==(r=e)?a:o(e)):r},i}function a(e){return i.parse(e.responseText)}function o(e){return function(t){return i.parse(t.responseText,e)}}function s(t){return t.map(l).join(e)}function l(e){return r.test(e)?'"'+e.replace(/\"/g,'""')+'"':e}return i.parse=function(e,t){var r;return i.parseRows(e,(function(e,n){if(r)return r(e,n-1);var i=function(t){for(var r={},n=e.length,i=0;i=l)return o;if(i)return i=!1,a;var t=u;if(34===e.charCodeAt(t)){for(var r=t;r++24?(isFinite(t)&&(clearTimeout(kt),kt=setTimeout(At,t)),wt=0):(wt=1,Tt(At))}function St(){for(var e=Date.now(),t=bt;t;)e>=t.t&&t.c(e-t.t)&&(t.c=null),t=t.n;return e}function Et(){for(var e,t=bt,r=1/0;t;)t.c?(t.t1&&(t=e[a[o-2]],r=e[a[o-1]],n=e[s],(r[0]-t[0])*(n[1]-t[1])-(r[1]-t[1])*(n[0]-t[0])<=0);)--o;a[o++]=s}return a.slice(0,o)}function Ot(e,t){return e[0]-t[0]||e[1]-t[1]}a.timer=function(){Mt.apply(this,arguments)},a.timer.flush=function(){St(),Et()},a.round=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},a.geom={},a.geom.hull=function(e){var t=Ct,r=Lt;if(arguments.length)return n(e);function n(e){if(e.length<3)return[];var n,i=gt(t),a=gt(r),o=e.length,s=[],l=[];for(n=0;n=0;--n)h.push(e[s[u[n]][2]]);for(n=+f;nEe)s=s.L;else{if(!((i=a-Kt(s,o))>Ee)){n>-Ee?(t=s.P,r=s):i>-Ee?(t=s,r=s.N):t=r=s;break}if(!s.R){t=s;break}s=s.R}var l=Wt(e);if(Bt.insert(t,l),t||r){if(t===r)return tr(t),r=Wt(t.site),Bt.insert(l,r),l.edge=r.edge=ir(t.site,l.site),er(t),void er(r);if(r){tr(t),tr(r);var u=t.site,c=u.x,f=u.y,d=e.x-c,h=e.y-f,p=r.site,v=p.x-c,m=p.y-f,g=2*(d*m-h*v),y=d*d+h*h,x=v*v+m*m,b={x:(m*y-h*x)/g+c,y:(d*x-v*y)/g+f};or(r.edge,u,p,b),l.edge=ir(u,e,null,b),r.edge=ir(e,p,null,b),er(t),er(r)}else l.edge=ir(t.site,l.site)}}function Xt(e,t){var r=e.site,n=r.x,i=r.y,a=i-t;if(!a)return n;var o=e.P;if(!o)return-1/0;var s=(r=o.site).x,l=r.y,u=l-t;if(!u)return s;var c=s-n,f=1/a-1/u,d=c/u;return f?(-d+Math.sqrt(d*d-2*f*(c*c/(-2*u)-l+u/2+i-a/2)))/f+n:(n+s)/2}function Kt(e,t){var r=e.N;if(r)return Xt(r,t);var n=e.site;return n.y===t?n.x:1/0}function $t(e){this.site=e,this.edges=[]}function Jt(e,t){return t.angle-e.angle}function Qt(){ur(this),this.x=this.y=this.arc=this.site=this.cy=null}function er(e){var t=e.P,r=e.N;if(t&&r){var n=t.site,i=e.site,a=r.site;if(n!==a){var o=i.x,s=i.y,l=n.x-o,u=n.y-s,c=a.x-o,f=2*(l*(m=a.y-s)-u*c);if(!(f>=-Ce)){var d=l*l+u*u,h=c*c+m*m,p=(m*d-u*h)/f,v=(l*h-c*d)/f,m=v+s,g=Ht.pop()||new Qt;g.arc=e,g.site=i,g.x=p+o,g.y=m+Math.sqrt(p*p+v*v),g.cy=m,e.circle=g;for(var y=null,x=Ut._;x;)if(g.y=s)return;if(d>p){if(a){if(a.y>=u)return}else a={x:m,y:l};r={x:m,y:u}}else{if(a){if(a.y1)if(d>p){if(a){if(a.y>=u)return}else a={x:(l-i)/n,y:l};r={x:(u-i)/n,y:u}}else{if(a){if(a.y=s)return}else a={x:o,y:n*o+i};r={x:s,y:n*s+i}}else{if(a){if(a.x0)){if(t/=d,d<0){if(t0){if(t>f)return;t>c&&(c=t)}if(t=i-l,d||!(t<0)){if(t/=d,d<0){if(t>f)return;t>c&&(c=t)}else if(d>0){if(t0)){if(t/=h,h<0){if(t0){if(t>f)return;t>c&&(c=t)}if(t=a-u,h||!(t<0)){if(t/=h,h<0){if(t>f)return;t>c&&(c=t)}else if(h>0){if(t0&&(e.a={x:l+c*d,y:u+c*h}),f<1&&(e.b={x:l+f*d,y:u+f*h}),e}}}}}),l=o.length;l--;)(!rr(t=o[l],e)||!s(t)||w(t.a.x-t.b.x)Ee||w(i-r)>Ee)&&(s.splice(o,0,new sr(ar(a.site,c,w(n-f)Ee?{x:f,y:w(t-f)Ee?{x:w(r-p)Ee?{x:d,y:w(t-d)Ee?{x:w(r-h)=r&&u.x<=i&&u.y>=n&&u.y<=o?[[r,o],[i,o],[i,n],[r,n]]:[]).point=e[s]})),t}function s(e){return e.map((function(e,t){return{x:Math.round(n(e,t)/Ee)*Ee,y:Math.round(i(e,t)/Ee)*Ee,i:t}}))}return o.links=function(e){return hr(s(e)).edges.filter((function(e){return e.l&&e.r})).map((function(t){return{source:e[t.l.i],target:e[t.r.i]}}))},o.triangles=function(e){var t=[];return hr(s(e)).cells.forEach((function(r,n){for(var i,a,o,s,l=r.site,u=r.edges.sort(Jt),c=-1,f=u.length,d=u[f-1].edge,h=d.l===l?d.r:d.l;++ca&&(i=t.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:_r(r,n)})),a=Tr.lastIndex;return av&&(v=l.x),l.y>m&&(m=l.y),u.push(l.x),c.push(l.y);else for(f=0;fv&&(v=x),b>m&&(m=b),u.push(x),c.push(b)}var _=v-h,k=m-p;function T(e,t,r,n,i,a,o,s){if(!isNaN(r)&&!isNaN(n))if(e.leaf){var l=e.x,u=e.y;if(null!=l)if(w(l-r)+w(u-n)<.01)M(e,t,r,n,i,a,o,s);else{var c=e.point;e.x=e.y=e.point=null,M(e,c,l,u,i,a,o,s),M(e,t,r,n,i,a,o,s)}else e.x=r,e.y=n,e.point=t}else M(e,t,r,n,i,a,o,s)}function M(e,t,r,n,i,a,o,s){var l=.5*(i+o),u=.5*(a+s),c=r>=l,f=n>=u,d=f<<1|c;e.leaf=!1,c?i=l:o=l,f?a=u:s=u,T(e=e.nodes[d]||(e.nodes[d]={leaf:!0,nodes:[],point:null,x:null,y:null}),t,r,n,i,a,o,s)}_>k?m=p+_:v=h+k;var A={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(e){T(A,e,+g(e,++f),+y(e,f),h,p,v,m)},visit:function(e){yr(e,A,h,p,v,m)},find:function(e){return function(e,t,r,n,i,a,o){var s,l=1/0;return function e(u,c,f,d,h){if(!(c>a||f>o||d=_)<<1|t>=b,k=w+4;w=0&&!(r=a.interpolators[n](e,t)););return r}function Ar(e,t){var r,n=[],i=[],a=e.length,o=t.length,s=Math.min(e.length,t.length);for(r=0;r=1)return 1;var t=e*e,r=t*e;return 4*(e<.5?r:3*(e-t)+r-.75)}function Rr(e){return 1-Math.cos(e*Ie)}function zr(e){return Math.pow(2,10*(e-1))}function Fr(e){return 1-Math.sqrt(1-e*e)}function Nr(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}function Br(e,t){return t-=e,function(r){return Math.round(e+t*r)}}function jr(e){var t,r,n,i=[e.a,e.b],a=[e.c,e.d],o=Vr(i),s=Ur(i,a),l=Vr(((t=a)[0]+=(n=-s)*(r=i)[0],t[1]+=n*r[1],t))||0;i[0]*a[1]=0?e.slice(0,r):e,i=r>=0?e.slice(r+1):"in";return n=Er.get(n)||Sr,i=Cr.get(i)||R,t=i(n.apply(null,o.call(arguments,1))),function(e){return e<=0?0:e>=1?1:t(e)}},a.interpolateHcl=function(e,t){e=a.hcl(e),t=a.hcl(t);var r=e.h,n=e.c,i=e.l,o=t.h-r,s=t.c-n,l=t.l-i;return isNaN(s)&&(s=0,n=isNaN(n)?t.c:n),isNaN(o)?(o=0,r=isNaN(r)?t.h:r):o>180?o-=360:o<-180&&(o+=360),function(e){return Ze(r+o*e,n+s*e,i+l*e)+""}},a.interpolateHsl=function(e,t){e=a.hsl(e),t=a.hsl(t);var r=e.h,n=e.s,i=e.l,o=t.h-r,s=t.s-n,l=t.l-i;return isNaN(s)&&(s=0,n=isNaN(n)?t.s:n),isNaN(o)?(o=0,r=isNaN(r)?t.h:r):o>180?o-=360:o<-180&&(o+=360),function(e){return We(r+o*e,n+s*e,i+l*e)+""}},a.interpolateLab=function(e,t){e=a.lab(e),t=a.lab(t);var r=e.l,n=e.a,i=e.b,o=t.l-r,s=t.a-n,l=t.b-i;return function(e){return tt(r+o*e,n+s*e,i+l*e)+""}},a.interpolateRound=Br,a.transform=function(e){var t=l.createElementNS(a.ns.prefix.svg,"g");return(a.transform=function(e){if(null!=e){t.setAttribute("transform",e);var r=t.transform.baseVal.consolidate()}return new jr(r?r.matrix:Hr)})(e)},jr.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var Hr={a:1,b:0,c:0,d:1,e:0,f:0};function qr(e){return e.length?e.pop()+",":""}function Wr(e,t){var r=[],n=[];return e=a.transform(e),t=a.transform(t),function(e,t,r,n){if(e[0]!==t[0]||e[1]!==t[1]){var i=r.push("translate(",null,",",null,")");n.push({i:i-4,x:_r(e[0],t[0])},{i:i-2,x:_r(e[1],t[1])})}else(t[0]||t[1])&&r.push("translate("+t+")")}(e.translate,t.translate,r,n),function(e,t,r,n){e!==t?(e-t>180?t+=360:t-e>180&&(e+=360),n.push({i:r.push(qr(r)+"rotate(",null,")")-2,x:_r(e,t)})):t&&r.push(qr(r)+"rotate("+t+")")}(e.rotate,t.rotate,r,n),function(e,t,r,n){e!==t?n.push({i:r.push(qr(r)+"skewX(",null,")")-2,x:_r(e,t)}):t&&r.push(qr(r)+"skewX("+t+")")}(e.skew,t.skew,r,n),function(e,t,r,n){if(e[0]!==t[0]||e[1]!==t[1]){var i=r.push(qr(r)+"scale(",null,",",null,")");n.push({i:i-4,x:_r(e[0],t[0])},{i:i-2,x:_r(e[1],t[1])})}else 1===t[0]&&1===t[1]||r.push(qr(r)+"scale("+t+")")}(e.scale,t.scale,r,n),e=t=null,function(e){for(var t,i=-1,a=n.length;++i0?r=t:(e.c=null,e.t=NaN,e=null,l.end({type:"end",alpha:r=0})):t>0&&(l.start({type:"start",alpha:r=t}),e=Mt(s.tick)),s):r},s.start=function(){var e,t,r,a=g.length,l=y.length,c=u[0],p=u[1];for(e=0;e=0;)r.push(i[n])}function sn(e,t){for(var r=[e],n=[];null!=(e=r.pop());)if(n.push(e),(a=e.children)&&(i=a.length))for(var i,a,o=-1;++o=0;)o.push(c=u[l]),c.parent=a,c.depth=a.depth+1;r&&(a.value=0),a.children=u}else r&&(a.value=+r.call(n,a,a.depth)||0),delete a.children;return sn(i,(function(t){var n,i;e&&(n=t.children)&&n.sort(e),r&&(i=t.parent)&&(i.value+=t.value)})),s}return n.sort=function(t){return arguments.length?(e=t,n):e},n.children=function(e){return arguments.length?(t=e,n):t},n.value=function(e){return arguments.length?(r=e,n):r},n.revalue=function(e){return r&&(on(e,(function(e){e.children&&(e.value=0)})),sn(e,(function(e){var t;e.children||(e.value=+r.call(n,e,e.depth)||0),(t=e.parent)&&(t.value+=e.value)}))),e},n},a.layout.partition=function(){var e=a.layout.hierarchy(),t=[1,1];function r(e,t,n,i){var a=e.children;if(e.x=t,e.y=e.depth*i,e.dx=n,e.dy=i,a&&(o=a.length)){var o,s,l,u=-1;for(n=e.value?n/e.value:0;++us&&(s=n),o.push(n)}for(r=0;ri&&(n=r,i=t);return n}function _n(e){return e.reduce(wn,0)}function wn(e,t){return e+t[1]}function kn(e,t){return Tn(e,Math.ceil(Math.log(t.length)/Math.LN2+1))}function Tn(e,t){for(var r=-1,n=+e[0],i=(e[1]-n)/t,a=[];++r<=t;)a[r]=i*r+n;return a}function Mn(e){return[a.min(e),a.max(e)]}function An(e,t){return e.value-t.value}function Sn(e,t){var r=e._pack_next;e._pack_next=t,t._pack_prev=e,t._pack_next=r,r._pack_prev=t}function En(e,t){e._pack_next=t,t._pack_prev=e}function Cn(e,t){var r=t.x-e.x,n=t.y-e.y,i=e.r+t.r;return.999*i*i>r*r+n*n}function Ln(e){if((t=e.children)&&(l=t.length)){var t,r,n,i,a,o,s,l,u=1/0,c=-1/0,f=1/0,d=-1/0;if(t.forEach(Pn),(r=t[0]).x=-r.r,r.y=0,x(r),l>1&&((n=t[1]).x=n.r,n.y=0,x(n),l>2))for(Dn(r,n,i=t[2]),x(i),Sn(r,i),r._pack_prev=i,Sn(i,n),n=r._pack_next,a=3;a0)for(o=-1;++o=f[0]&&l<=f[1]&&((s=u[a.bisect(d,l,1,p)-1]).y+=v,s.push(i[o]));return u}return i.value=function(e){return arguments.length?(t=e,i):t},i.range=function(e){return arguments.length?(r=gt(e),i):r},i.bins=function(e){return arguments.length?(n="number"===typeof e?function(t){return Tn(t,e)}:gt(e),i):n},i.frequency=function(t){return arguments.length?(e=!!t,i):e},i},a.layout.pack=function(){var e,t=a.layout.hierarchy().sort(An),r=0,n=[1,1];function i(i,a){var o=t.call(this,i,a),s=o[0],l=n[0],u=n[1],c=null==e?Math.sqrt:"function"===typeof e?e:function(){return e};if(s.x=s.y=0,sn(s,(function(e){e.r=+c(e.value)})),sn(s,Ln),r){var f=r*(e?1:Math.max(2*s.r/l,2*s.r/u))/2;sn(s,(function(e){e.r+=f})),sn(s,Ln),sn(s,(function(e){e.r-=f}))}return In(s,l/2,u/2,e?1:1/Math.max(2*s.r/l,2*s.r/u)),o}return i.size=function(e){return arguments.length?(n=e,i):n},i.radius=function(t){return arguments.length?(e=null==t||"function"===typeof t?t:+t,i):e},i.padding=function(e){return arguments.length?(r=+e,i):r},an(i,t)},a.layout.tree=function(){var e=a.layout.hierarchy().sort(null).value(null),t=Rn,r=[1,1],n=null;function i(i,a){var u=e.call(this,i,a),c=u[0],f=function(e){for(var t,r={A:null,children:[e]},n=[r];null!=(t=n.pop());)for(var i,a=t.children,o=0,s=a.length;oh.x&&(h=e),e.depth>p.depth&&(p=e)}));var v=t(d,h)/2-d.x,m=r[0]/(h.x+t(h,d)/2+v),g=r[1]/(p.depth||1);on(c,(function(e){e.x=(e.x+v)*m,e.y=e.depth*g}))}return u}function o(e){var r=e.children,n=e.parent.children,i=e.i?n[e.i-1]:null;if(r.length){!function(e){for(var t,r=0,n=0,i=e.children,a=i.length;--a>=0;)(t=i[a]).z+=r,t.m+=r,r+=t.s+(n+=t.c)}(e);var a=(r[0].z+r[r.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,r,n){if(r){for(var i,a=e,o=e,s=r,l=a.parent.children[0],u=a.m,c=o.m,f=s.m,d=l.m;s=Fn(s),a=zn(a),s&&a;)l=zn(l),(o=Fn(o)).a=e,(i=s.z+f-a.z-u+t(s._,a._))>0&&(Nn(Bn(s,e,n),e,i),u+=i,c+=i),f+=s.m,u+=a.m,d+=l.m,c+=o.m;s&&!Fn(o)&&(o.t=s,o.m+=f-c),a&&!zn(l)&&(l.t=a,l.m+=u-d,n=e)}return n}(e,i,e.parent.A||n[0])}function s(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function l(e){e.x*=r[0],e.y=e.depth*r[1]}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(e){return arguments.length?(n=null==(r=e)?l:null,i):n?null:r},i.nodeSize=function(e){return arguments.length?(n=null==(r=e)?null:l,i):n?r:null},an(i,e)},a.layout.cluster=function(){var e=a.layout.hierarchy().sort(null).value(null),t=Rn,r=[1,1],n=!1;function i(i,o){var s,l=e.call(this,i,o),u=l[0],c=0;sn(u,(function(e){var r=e.children;r&&r.length?(e.x=function(e){return e.reduce((function(e,t){return e+t.x}),0)/e.length}(r),e.y=function(e){return 1+a.max(e,(function(e){return e.y}))}(r)):(e.x=s?c+=t(e,s):0,e.y=0,s=e)}));var f=jn(u),d=Un(u),h=f.x-t(f,d)/2,p=d.x+t(d,f)/2;return sn(u,n?function(e){e.x=(e.x-u.x)*r[0],e.y=(u.y-e.y)*r[1]}:function(e){e.x=(e.x-h)/(p-h)*r[0],e.y=(1-(u.y?e.y/u.y:1))*r[1]}),l}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(e){return arguments.length?(n=null==(r=e),i):n?null:r},i.nodeSize=function(e){return arguments.length?(n=null!=(r=e),i):n?r:null},an(i,e)},a.layout.treemap=function(){var e,t=a.layout.hierarchy(),r=Math.round,n=[1,1],i=null,o=Vn,s=!1,l="squarify",u=.5*(1+Math.sqrt(5));function c(e,t){for(var r,n,i=-1,a=e.length;++i0;)s.push(r=u[i-1]),s.area+=r.area,"squarify"!==l||(n=h(s,v))<=d?(u.pop(),d=n):(s.area-=s.pop().area,p(s,v,a,!1),v=Math.min(a.dx,a.dy),s.length=s.area=0,d=1/0);s.length&&(p(s,v,a,!0),s.length=s.area=0),t.forEach(f)}}function d(e){var t=e.children;if(t&&t.length){var r,n=o(e),i=t.slice(),a=[];for(c(i,n.dx*n.dy/e.value),a.area=0;r=i.pop();)a.push(r),a.area+=r.area,null!=r.z&&(p(a,r.z?n.dx:n.dy,n,!i.length),a.length=a.area=0);t.forEach(d)}}function h(e,t){for(var r,n=e.area,i=0,a=1/0,o=-1,s=e.length;++oi&&(i=r));return t*=t,(n*=n)?Math.max(t*i*u/n,n/(t*a*u)):1/0}function p(e,t,n,i){var a,o=-1,s=e.length,l=n.x,u=n.y,c=t?r(e.area/t):0;if(t==n.dx){for((i||c>n.dy)&&(c=n.dy);++on.dx)&&(c=n.dx);++o1);return e+t*r*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var e=a.random.normal.apply(a,arguments);return function(){return Math.exp(e())}},bates:function(e){var t=a.random.irwinHall(e);return function(){return t()/e}},irwinHall:function(e){return function(){for(var t=0,r=0;r2?Kn:Gn,l=n?Yr:Gr;return i=o(e,t,l,r),a=o(t,e,l,Mr),s}function s(e){return i(e)}return s.invert=function(e){return a(e)},s.domain=function(t){return arguments.length?(e=t.map(Number),o()):e},s.range=function(e){return arguments.length?(t=e,o()):t},s.rangeRound=function(e){return s.range(e).interpolate(Br)},s.clamp=function(e){return arguments.length?(n=e,o()):n},s.interpolate=function(e){return arguments.length?(r=e,o()):r},s.ticks=function(t){return ti(e,t)},s.tickFormat=function(t,r){return d3_scale_linearTickFormat(e,t,r)},s.nice=function(t){return Qn(e,t),o()},s.copy=function(){return $n(e,t,r,n)},o()}function Jn(e,t){return a.rebind(e,t,"range","rangeRound","interpolate","clamp")}function Qn(e,t){return Yn(e,Zn(ei(e,t)[2])),Yn(e,Zn(ei(e,t)[2])),e}function ei(e,t){null==t&&(t=10);var r=qn(e),n=r[1]-r[0],i=Math.pow(10,Math.floor(Math.log(n/t)/Math.LN10)),a=t/n*i;return a<=.15?i*=10:a<=.35?i*=5:a<=.75&&(i*=2),r[0]=Math.ceil(r[0]/i)*i,r[1]=Math.floor(r[1]/i)*i+.5*i,r[2]=i,r}function ti(e,t){return a.range.apply(a,ei(e,t))}function ri(e,t,r,n){function i(e){return(r?Math.log(e<0?0:e):-Math.log(e>0?0:-e))/Math.log(t)}function a(e){return r?Math.pow(t,e):-Math.pow(t,-e)}function o(t){return e(i(t))}return o.invert=function(t){return a(e.invert(t))},o.domain=function(t){return arguments.length?(r=t[0]>=0,e.domain((n=t.map(Number)).map(i)),o):n},o.base=function(r){return arguments.length?(t=+r,e.domain(n.map(i)),o):t},o.nice=function(){var t=Yn(n.map(i),r?Math:ni);return e.domain(t),n=t.map(a),o},o.ticks=function(){var e=qn(n),o=[],s=e[0],l=e[1],u=Math.floor(i(s)),c=Math.ceil(i(l)),f=t%1?2:t;if(isFinite(c-u)){if(r){for(;u0;d--)o.push(a(u)*d);for(u=0;o[u]l;c--);o=o.slice(u,c)}return o},o.copy=function(){return ri(e.copy(),t,r,n)},Jn(o,e)}a.scale.linear=function(){return $n([0,1],[0,1],Mr,!1)},a.scale.log=function(){return ri(a.scale.linear().domain([0,1]),10,!0,[1,10])};var ni={floor:function(e){return-Math.ceil(-e)},ceil:function(e){return-Math.floor(-e)}};function ii(e,t,r){var n=ai(t),i=ai(1/t);function a(t){return e(n(t))}return a.invert=function(t){return i(e.invert(t))},a.domain=function(t){return arguments.length?(e.domain((r=t.map(Number)).map(n)),a):r},a.ticks=function(e){return ti(r,e)},a.tickFormat=function(e,t){return d3_scale_linearTickFormat(r,e,t)},a.nice=function(e){return a.domain(Qn(r,e))},a.exponent=function(o){return arguments.length?(n=ai(t=o),i=ai(1/t),e.domain(r.map(n)),a):t},a.copy=function(){return ii(e.copy(),t,r)},Jn(a,e)}function ai(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function oi(e,t){var r,n,i;function o(i){return n[((r.get(i)||("range"===t.t?r.set(i,e.push(i)):NaN))-1)%n.length]}function s(t,r){return a.range(e.length).map((function(e){return t+r*e}))}return o.domain=function(n){if(!arguments.length)return e;e=[],r=new T;for(var i,a=-1,s=n.length;++a0?r[n-1]:e[0],nf?0:1;if(u=Oe)return l(u,h)+(s?l(s,1-h):"")+"Z";var p,v,m,g,y,x,b,_,w,k,T,M,A=0,S=0,E=[];if((g=(+o.apply(this,arguments)||0)/2)&&(m=n===mi?Math.sqrt(s*s+u*u):+n.apply(this,arguments),h||(S*=-1),u&&(S=ze(m/u*Math.sin(g))),s&&(A=ze(m/s*Math.sin(g)))),u){y=u*Math.cos(c+S),x=u*Math.sin(c+S),b=u*Math.cos(f-S),_=u*Math.sin(f-S);var C=Math.abs(f-c-2*S)<=Le?0:1;if(S&&wi(y,x,b,_)===h^C){var L=(c+f)/2;y=u*Math.cos(L),x=u*Math.sin(L),b=_=null}}else y=x=0;if(s){w=s*Math.cos(f-A),k=s*Math.sin(f-A),T=s*Math.cos(c+A),M=s*Math.sin(c+A);var P=Math.abs(c-f+2*A)<=Le?0:1;if(A&&wi(w,k,T,M)===1-h^P){var O=(c+f)/2;w=s*Math.cos(O),k=s*Math.sin(O),T=M=null}}else w=k=0;if(d>Ee&&(p=Math.min(Math.abs(u-s)/2,+r.apply(this,arguments)))>.001){v=s0?0:1}function ki(e,t,r,n,i){var a=e[0]-t[0],o=e[1]-t[1],s=(i?n:-n)/Math.sqrt(a*a+o*o),l=s*o,u=-s*a,c=e[0]+l,f=e[1]+u,d=t[0]+l,h=t[1]+u,p=(c+d)/2,v=(f+h)/2,m=d-c,g=h-f,y=m*m+g*g,x=r-n,b=c*h-d*f,_=(g<0?-1:1)*Math.sqrt(Math.max(0,x*x*y-b*b)),w=(b*g-m*_)/y,k=(-b*m-g*_)/y,T=(b*g+m*_)/y,M=(-b*m+g*_)/y,A=w-p,S=k-v,E=T-p,C=M-v;return A*A+S*S>E*E+C*C&&(w=T,k=M),[[w-l,k-u],[w*r/x,k*r/x]]}function Ti(){return!0}function Mi(e){var t=Ct,r=Lt,n=Ti,i=Si,a=i.key,o=.7;function s(a){var s,l=[],u=[],c=-1,f=a.length,d=gt(t),h=gt(r);function p(){l.push("M",i(e(u),o))}for(;++c1&&i.push("H",n[0]),i.join("")},"step-before":Ci,"step-after":Li,basis:Ii,"basis-open":function(e){if(e.length<4)return Si(e);for(var t,r=[],n=-1,i=e.length,a=[0],o=[0];++n<3;)t=e[n],a.push(t[0]),o.push(t[1]);for(r.push(Di(Fi,a)+","+Di(Fi,o)),--n;++n9&&(i=3*t/Math.sqrt(i),o[s]=i*r,o[s+1]=i*n);for(s=-1;++s<=l;)i=(e[Math.min(l,s+1)][0]-e[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}(e))}});function Si(e){return e.length>1?e.join("L"):e+"Z"}function Ei(e){return e.join("L")+"Z"}function Ci(e){for(var t=0,r=e.length,n=e[0],i=[n[0],",",n[1]];++t1){s=t[1],a=e[l],l++,n+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1];for(var u=2;uLe)+",1 "+t}function l(e,t,r,n){return"Q 0,0 "+n}return a.radius=function(e){return arguments.length?(r=gt(e),a):r},a.source=function(t){return arguments.length?(e=gt(t),a):e},a.target=function(e){return arguments.length?(t=gt(e),a):t},a.startAngle=function(e){return arguments.length?(n=gt(e),a):n},a.endAngle=function(e){return arguments.length?(i=gt(e),a):i},a},a.svg.diagonal=function(){var e=Vi,t=Hi,r=Wi;function n(n,i){var a=e.call(this,n,i),o=t.call(this,n,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(r))[0]+"C"+l[1]+" "+l[2]+" "+l[3]}return n.source=function(t){return arguments.length?(e=gt(t),n):e},n.target=function(e){return arguments.length?(t=gt(e),n):t},n.projection=function(e){return arguments.length?(r=e,n):r},n},a.svg.diagonal.radial=function(){var e=a.svg.diagonal(),t=Wi,r=e.projection;return e.projection=function(e){return arguments.length?r(function(e){return function(){var t=e.apply(this,arguments),r=t[0],n=t[1]-Ie;return[r*Math.cos(n),r*Math.sin(n)]}}(t=e)):t},e},a.svg.symbol=function(){var e=Yi,t=Gi;function r(r,n){return(Xi.get(e.call(this,r,n))||Zi)(t.call(this,r,n))}return r.type=function(t){return arguments.length?(e=gt(t),r):e},r.size=function(e){return arguments.length?(t=gt(e),r):t},r};var Xi=a.map({circle:Zi,cross:function(e){var t=Math.sqrt(e/5)/2;return"M"+-3*t+","+-t+"H"+-t+"V"+-3*t+"H"+t+"V"+-t+"H"+3*t+"V"+t+"H"+t+"V"+3*t+"H"+-t+"V"+t+"H"+-3*t+"Z"},diamond:function(e){var t=Math.sqrt(e/(2*$i)),r=t*$i;return"M0,"+-t+"L"+r+",0 0,"+t+" "+-r+",0Z"},square:function(e){var t=Math.sqrt(e)/2;return"M"+-t+","+-t+"L"+t+","+-t+" "+t+","+t+" "+-t+","+t+"Z"},"triangle-down":function(e){var t=Math.sqrt(e/Ki),r=t*Ki/2;return"M0,"+r+"L"+t+","+-r+" "+-t+","+-r+"Z"},"triangle-up":function(e){var t=Math.sqrt(e/Ki),r=t*Ki/2;return"M0,"+-r+"L"+t+","+r+" "+-t+","+r+"Z"}});a.svg.symbolTypes=Xi.keys();var Ki=Math.sqrt(3),$i=Math.tan(30*De);$.transition=function(e){for(var t,r,n=ta||++ia,i=sa(e),a=[],o=ra||{time:Date.now(),ease:Dr,delay:0,duration:250},s=-1,l=this.length;++s0;)u[--d].call(e,o);if(a>=1)return f.event&&f.event.end.call(e,e.__data__,t),--c.count?delete c[n]:delete e[r],1}f||(a=i.time,o=Mt((function(e){var t=f.delay;if(o.t=t+a,t<=e)return d(e-t);o.c=d}),0,a),f=c[n]={tween:new T,time:a,timer:o,delay:i.delay,duration:i.duration,ease:i.ease,index:t},i=null,++c.count)}na.call=$.call,na.empty=$.empty,na.node=$.node,na.size=$.size,a.transition=function(e,t){return e&&e.transition?ta?e.transition(t):e:a.selection().transition(e)},a.transition.prototype=na,na.select=function(e){var t,r,n,i=this.id,a=this.namespace,o=[];e=J(e);for(var s=-1,l=this.length;++srect,.s>rect").attr("width",o[1]-o[0])}function v(e){e.select(".extent").attr("y",s[0]),e.selectAll(".extent,.e>rect,.w>rect").attr("height",s[1]-s[0])}function m(){var f,m,g=this,y=a.select(a.event.target),x=r.of(g,arguments),b=a.select(g),_=y.datum(),w=!/^(n|s)$/.test(_)&&n,k=!/^(e|w)$/.test(_)&&i,T=y.classed("extent"),M=Te(g),A=a.mouse(g),S=a.select(c(g)).on("keydown.brush",(function(){32==a.event.keyCode&&(T||(f=null,A[0]-=o[1],A[1]-=s[1],T=2),V())})).on("keyup.brush",(function(){32==a.event.keyCode&&2==T&&(A[0]+=o[1],A[1]+=s[1],T=0,V())}));if(a.event.changedTouches?S.on("touchmove.brush",L).on("touchend.brush",O):S.on("mousemove.brush",L).on("mouseup.brush",O),b.interrupt().selectAll("*").interrupt(),T)A[0]=o[0]-A[0],A[1]=s[0]-A[1];else if(_){var E=+/w$/.test(_),C=+/^n/.test(_);m=[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 L(){var e=a.mouse(g),t=!1;m&&(e[0]+=m[0],e[1]+=m[1]),T||(a.event.altKey?(f||(f=[(o[0]+o[1])/2,(s[0]+s[1])/2]),A[0]=o[+(e[0]>>1;t.dtype||(t.dtype="array"),"string"===typeof t.dtype?p=new(f(t.dtype))(m):t.dtype&&(p=t.dtype,Array.isArray(p)&&(p.length=m));for(var g=0;gr||s>1073741824){for(var d=0;dr+i||A>n+i||S=L)&&o!==s){var l=y[a];void 0===s&&(s=l.length);for(var u=o;u=m&&f<=w&&d>=g&&d<=k&&P.push(c)}var h=x[a],p=h[4*o+0],v=h[4*o+1],b=h[4*o+2],_=h[4*o+3],T=function(e,t){for(var r=null,n=0;null===r;)if(r=e[4*t+n],++n>e.length)return null;return r}(h,o+1),E=.5*i,O=a+1;t(r,n,E,O,p,v||b||_||T),t(r,n+E,E,O,v,b||_||T),t(r+E,n,E,O,b,_||T),t(r+E,n+E,E,O,_,T)}}(0,0,1,0,0,1),P},p;function E(e,t,r){for(var n=1,i=.5,a=.5,o=.5,s=0;s0){t+=Math.abs(o(e[0]));for(var r=1;r2){for(l=0;l=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r},t.radiansToLength=c,t.lengthToRadians=f,t.lengthToDegrees=function(e,t){return d(f(e,t))},t.bearingToAzimuth=function(e){var t=e%360;return t<0&&(t+=360),t},t.radiansToDegrees=d,t.degreesToRadians=function(e){return e%360*Math.PI/180},t.convertLength=function(e,t,r){if(void 0===t&&(t="kilometers"),void 0===r&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return c(f(e,t),r)},t.convertArea=function(e,r,n){if(void 0===r&&(r="meters"),void 0===n&&(n="kilometers"),!(e>=0))throw new Error("area must be a positive number");var i=t.areaFactors[r];if(!i)throw new Error("invalid original units");var a=t.areaFactors[n];if(!a)throw new Error("invalid final units");return e/i*a},t.isNumber=h,t.isObject=function(e){return!!e&&e.constructor===Object},t.validateBBox=function(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(4!==e.length&&6!==e.length)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach((function(e){if(!h(e))throw new Error("bbox must only contain numbers")}))},t.validateId=function(e){if(!e)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof e))throw new Error("id must be a number or a string")}},60302:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(23132);function i(e,t,r){if(null!==e)for(var n,a,o,s,l,u,c,f,d=0,h=0,p=e.type,v="FeatureCollection"===p,m="Feature"===p,g=v?e.features.length:1,y=0;yu||h>c||p>f)return l=i,u=r,c=h,f=p,void(o=0);var v=n.lineString([l,i],e.properties);if(!1===t(v,r,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function c(e,t){if(!e)throw new Error("geojson is required");l(e,(function(e,r,i){if(null!==e.geometry){var a=e.geometry.type,o=e.geometry.coordinates;switch(a){case"LineString":if(!1===t(e,r,i,0,0))return!1;break;case"Polygon":for(var s=0;se[0]&&(t[0]=e[0]),t[1]>e[1]&&(t[1]=e[1]),t[2]=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r},t.radiansToLength=c,t.lengthToRadians=f,t.lengthToDegrees=function(e,t){return d(f(e,t))},t.bearingToAzimuth=function(e){var t=e%360;return t<0&&(t+=360),t},t.radiansToDegrees=d,t.degreesToRadians=function(e){return e%360*Math.PI/180},t.convertLength=function(e,t,r){if(void 0===t&&(t="kilometers"),void 0===r&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return c(f(e,t),r)},t.convertArea=function(e,r,n){if(void 0===r&&(r="meters"),void 0===n&&(n="kilometers"),!(e>=0))throw new Error("area must be a positive number");var i=t.areaFactors[r];if(!i)throw new Error("invalid original units");var a=t.areaFactors[n];if(!a)throw new Error("invalid final units");return e/i*a},t.isNumber=h,t.isObject=function(e){return!!e&&e.constructor===Object},t.validateBBox=function(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(4!==e.length&&6!==e.length)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach((function(e){if(!h(e))throw new Error("bbox must only contain numbers")}))},t.validateId=function(e){if(!e)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof e))throw new Error("id must be a number or a string")}},27138:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(94228);function i(e,t,r){if(null!==e)for(var n,a,o,s,l,u,c,f,d=0,h=0,p=e.type,v="FeatureCollection"===p,m="Feature"===p,g=v?e.features.length:1,y=0;yu||h>c||p>f)return l=i,u=r,c=h,f=p,void(o=0);var v=n.lineString([l,i],e.properties);if(!1===t(v,r,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function c(e,t){if(!e)throw new Error("geojson is required");l(e,(function(e,r,i){if(null!==e.geometry){var a=e.geometry.type,o=e.geometry.coordinates;switch(a){case"LineString":if(!1===t(e,r,i,0,0))return!1;break;case"Polygon":for(var s=0;s=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r},t.radiansToLength=c,t.lengthToRadians=f,t.lengthToDegrees=function(e,t){return d(f(e,t))},t.bearingToAzimuth=function(e){var t=e%360;return t<0&&(t+=360),t},t.radiansToDegrees=d,t.degreesToRadians=function(e){return e%360*Math.PI/180},t.convertLength=function(e,t,r){if(void 0===t&&(t="kilometers"),void 0===r&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return c(f(e,t),r)},t.convertArea=function(e,r,n){if(void 0===r&&(r="meters"),void 0===n&&(n="kilometers"),!(e>=0))throw new Error("area must be a positive number");var i=t.areaFactors[r];if(!i)throw new Error("invalid original units");var a=t.areaFactors[n];if(!a)throw new Error("invalid final units");return e/i*a},t.isNumber=h,t.isObject=function(e){return!!e&&e.constructor===Object},t.validateBBox=function(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(4!==e.length&&6!==e.length)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach((function(e){if(!h(e))throw new Error("bbox must only contain numbers")}))},t.validateId=function(e){if(!e)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof e))throw new Error("id must be a number or a string")},t.radians2degrees=function(){throw new Error("method has been renamed to `radiansToDegrees`")},t.degrees2radians=function(){throw new Error("method has been renamed to `degreesToRadians`")},t.distanceToDegrees=function(){throw new Error("method has been renamed to `lengthToDegrees`")},t.distanceToRadians=function(){throw new Error("method has been renamed to `lengthToRadians`")},t.radiansToDistance=function(){throw new Error("method has been renamed to `radiansToLength`")},t.bearingToAngle=function(){throw new Error("method has been renamed to `bearingToAzimuth`")},t.convertDistance=function(){throw new Error("method has been renamed to `convertLength`")}},88553:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(64182);function i(e,t,r){if(null!==e)for(var n,a,o,s,l,u,c,f,d=0,h=0,p=e.type,v="FeatureCollection"===p,m="Feature"===p,g=v?e.features.length:1,y=0;yu||h>c||p>f)return l=i,u=r,c=h,f=p,void(o=0);var v=n.lineString([l,i],e.properties);if(!1===t(v,r,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function c(e,t){if(!e)throw new Error("geojson is required");l(e,(function(e,r,i){if(null!==e.geometry){var a=e.geometry.type,o=e.geometry.coordinates;switch(a){case"LineString":if(!1===t(e,r,i,0,0))return!1;break;case"Polygon":for(var s=0;si&&(i=e[o]),e[o]1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;ie.length)&&(r=e.length),e.substring(r-t.length,r)===t}var m="",g="",y="",x="",b={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function _(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach((function(t){r[t]=e[t]})),Object.defineProperty(r,"message",{value:e.message}),r}function w(e){return h(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function k(e,t,r){var i="",a="",o=0,s="",l=!1,u=w(e),c=u.split("\n"),f=w(t).split("\n"),h=0,p="";if("strictEqual"===r&&"object"===d(e)&&"object"===d(t)&&null!==e&&null!==t&&(r="strictEqualObject"),1===c.length&&1===f.length&&c[0]!==f[0]){var _=c[0].length+f[0].length;if(_<=10){if(("object"!==d(e)||null===e)&&("object"!==d(t)||null===t)&&(0!==e||0!==t))return"".concat(b[r],"\n\n")+"".concat(c[0]," !== ").concat(f[0],"\n")}else if("strictEqualObject"!==r&&_<(n.stderr&&n.stderr.isTTY?n.stderr.columns:80)){for(;c[0][h]===f[0][h];)h++;h>2&&(p="\n ".concat(function(e,t){if(t=Math.floor(t),0==e.length||0==t)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+e.substring(0,r-e.length)}(" ",h),"^"),h=0)}}for(var k=c[c.length-1],T=f[f.length-1];k===T&&(h++<2?s="\n ".concat(k).concat(s):i=k,c.pop(),f.pop(),0!==c.length&&0!==f.length);)k=c[c.length-1],T=f[f.length-1];var M=Math.max(c.length,f.length);if(0===M){var A=u.split("\n");if(A.length>30)for(A[26]="".concat(m,"...").concat(x);A.length>27;)A.pop();return"".concat(b.notIdentical,"\n\n").concat(A.join("\n"),"\n")}h>3&&(s="\n".concat(m,"...").concat(x).concat(s),l=!0),""!==i&&(s="\n ".concat(i).concat(s),i="");var S=0,E=b[r]+"\n".concat(g,"+ actual").concat(x," ").concat(y,"- expected").concat(x),C=" ".concat(m,"...").concat(x," Lines skipped");for(h=0;h1&&h>2&&(L>4?(a+="\n".concat(m,"...").concat(x),l=!0):L>3&&(a+="\n ".concat(f[h-2]),S++),a+="\n ".concat(f[h-1]),S++),o=h,i+="\n".concat(y,"-").concat(x," ").concat(f[h]),S++;else if(f.length1&&h>2&&(L>4?(a+="\n".concat(m,"...").concat(x),l=!0):L>3&&(a+="\n ".concat(c[h-2]),S++),a+="\n ".concat(c[h-1]),S++),o=h,a+="\n".concat(g,"+").concat(x," ").concat(c[h]),S++;else{var P=f[h],O=c[h],I=O!==P&&(!v(O,",")||O.slice(0,-1)!==P);I&&v(P,",")&&P.slice(0,-1)===O&&(I=!1,O+=","),I?(L>1&&h>2&&(L>4?(a+="\n".concat(m,"...").concat(x),l=!0):L>3&&(a+="\n ".concat(c[h-2]),S++),a+="\n ".concat(c[h-1]),S++),o=h,a+="\n".concat(g,"+").concat(x," ").concat(O),i+="\n".concat(y,"-").concat(x," ").concat(P),S+=2):(a+=i,i="",1!==L&&0!==h||(a+="\n ".concat(O),S++))}if(S>20&&h30)for(T[26]="".concat(m,"...").concat(x);T.length>27;)T.pop();r=1===T.length?o(this,f(t).call(this,"".concat(v," ").concat(T[0]))):o(this,f(t).call(this,"".concat(v,"\n\n").concat(T.join("\n"),"\n")))}else{var M=w(u),A="",S=b[a];"notDeepEqual"===a||"notEqual"===a?(M="".concat(b[a],"\n\n").concat(M)).length>1024&&(M="".concat(M.slice(0,1021),"...")):(A="".concat(w(c)),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)),r=o(this,f(t).call(this,"".concat(M).concat(A)))}return Error.stackTraceLimit=h,r.generatedMessage=!i,Object.defineProperty(s(r),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),r.code="ERR_ASSERTION",r.actual=u,r.expected=c,r.operator=a,Error.captureStackTrace&&Error.captureStackTrace(s(r),l),r.stack,r.name="AssertionError",o(r)}var r,l,u;return function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(t,e),r=t,l=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:h.custom,value:function(e,t){return h(this,function(e){for(var t=1;t2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}c("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),c("ERR_INVALID_ARG_TYPE",(function(e,t,i){var a,o,l,u;if(void 0===s&&(s=r(32791)),s("string"===typeof e,"'name' must be a string"),"string"===typeof t&&(o="not ",t.substr(!l||l<0?0:+l,o.length)===o)?(a="must not be",t=t.replace(/^not /,"")):a="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))u="The ".concat(e," ").concat(a," ").concat(f(t,"type"));else{var c=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";u='The "'.concat(e,'" ').concat(c," ").concat(a," ").concat(f(t,"type"))}return u+=". Received type ".concat(n(i))}),TypeError),c("ERR_INVALID_ARG_VALUE",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===l&&(l=r(43827));var i=l.inspect(t);return i.length>128&&(i="".concat(i.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(n,". Received ").concat(i)}),TypeError,RangeError),c("ERR_INVALID_RETURN_VALUE",(function(e,t,r){var i;return i=r&&r.constructor&&r.constructor.name?"instance of ".concat(r.constructor.name):"type ".concat(n(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(i,".")}),TypeError),c("ERR_MISSING_ARGS",(function(){for(var e=arguments.length,t=new Array(e),n=0;n0,"At least one arg needs to be specified");var i="The ",a=t.length;switch(t=t.map((function(e){return'"'.concat(e,'"')})),a){case 1:i+="".concat(t[0]," argument");break;case 2:i+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:i+=t.slice(0,a-1).join(", "),i+=", and ".concat(t[a-1]," arguments")}return"".concat(i," must be specified")}),TypeError),e.exports.codes=u},74061:function(e,t,r){"use strict";function n(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=[],n=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(l){i=!0,a=l}finally{try{n||null==s.return||s.return()}finally{if(i)throw a}}return r}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function i(e){return i="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}var a=void 0!==/a/g.flags,o=function(e){var t=[];return e.forEach((function(e){return t.push(e)})),t},s=function(e){var t=[];return e.forEach((function(e,r){return t.push([r,e])})),t},l=Object.is?Object.is:r(64003),u=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},c=Number.isNaN?Number.isNaN:r(15567);function f(e){return e.call.bind(e)}var d=f(Object.prototype.hasOwnProperty),h=f(Object.prototype.propertyIsEnumerable),p=f(Object.prototype.toString),v=r(43827).types,m=v.isAnyArrayBuffer,g=v.isArrayBufferView,y=v.isDate,x=v.isMap,b=v.isRegExp,_=v.isSet,w=v.isNativeError,k=v.isBoxedPrimitive,T=v.isNumberObject,M=v.isStringObject,A=v.isBooleanObject,S=v.isBigIntObject,E=v.isSymbolObject,C=v.isFloat32Array,L=v.isFloat64Array;function P(e){if(0===e.length||e.length>10)return!0;for(var t=0;t57)return!0}return 10===e.length&&e>=Math.pow(2,32)}function O(e){return Object.keys(e).filter(P).concat(u(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function I(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i0?o-4:o;for(r=0;r>16&255,u[c++]=t>>8&255,u[c++]=255&t;return 2===l&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[c++]=255&t),1===l&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[c++]=t>>8&255,u[c++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=16383,s=0,u=n-i;su?u:s+o));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function l(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},91358:function(e){"use strict";function t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>=0?(a=o,i=o-1):n=o+1}return a}function r(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)>0?(a=o,i=o-1):n=o+1}return a}function n(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<0?(a=o,n=o+1):i=o-1}return a}function i(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o];(void 0!==r?r(s,t):s-t)<=0?(a=o,n=o+1):i=o-1}return a}function a(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=void 0!==r?r(o,t):o-t;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(e,t,r,n,i,a){return"function"===typeof r?a(e,t,r,void 0===n?0:0|n,void 0===i?e.length-1:0|i):a(e,t,void 0,void 0===r?0:0|r,void 0===n?e.length-1:0|n)}e.exports={ge:function(e,r,n,i,a){return o(e,r,n,i,a,t)},gt:function(e,t,n,i,a){return o(e,t,n,i,a,r)},lt:function(e,t,r,i,a){return o(e,t,r,i,a,n)},le:function(e,t,r,n,a){return o(e,t,r,n,a,i)},eq:function(e,t,r,n,i){return o(e,t,r,n,i,a)}}},13547:function(e,t){"use strict";function r(e){var t=32;return(e&=-e)&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}t.INT_BITS=32,t.INT_MAX=2147483647,t.INT_MIN=-1<<31,t.sign=function(e){return(e>0)-(e<0)},t.abs=function(e){var t=e>>31;return(e^t)-t},t.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=r=((e>>>=t)>255)<<3,t|=r=((e>>>=r)>15)<<2,(t|=r=((e>>>=r)>3)<<1)|(e>>>=r)>>1},t.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},t.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},t.countTrailingZeros=r,t.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,1+(e|=e>>>16)},t.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},t.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var n=new Array(256);!function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=n<>>8&255]<<16|n[e>>>16&255]<<8|n[e>>>24&255]},t.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},t.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},t.interleave3=function(e,t,r){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},t.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},44781:function(e,t,r){"use strict";var n=r(53435);e.exports=function(e,t){t||(t={});var r,o,s,l,u,c,f,d,h,p,v,m=null==t.cutoff?.25:t.cutoff,g=null==t.radius?8:t.radius,y=t.channel||0;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");r=t.width,o=t.height,l=e,c=t.stride?t.stride:Math.floor(e.length/r/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(f=(d=e).getContext("2d"),r=d.width,o=d.height,l=(h=f.getImageData(0,0,r,o)).data,c=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(f=e,r=(d=e.canvas).width,o=d.height,l=(h=f.getImageData(0,0,r,o)).data,c=4):window.ImageData&&e instanceof window.ImageData&&(h=e,r=e.width,o=e.height,l=h.data,c=4);if(s=Math.max(r,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(u=l,l=Array(r*o),p=0,v=u.length;p-1?i(r):r}},68222:function(e,t,r){"use strict";var n=r(77575),i=r(68318),a=i("%Function.prototype.apply%"),o=i("%Function.prototype.call%"),s=i("%Reflect.apply%",!0)||n.call(o,a),l=i("%Object.getOwnPropertyDescriptor%",!0),u=i("%Object.defineProperty%",!0),c=i("%Math.max%");if(u)try{u({},"a",{value:1})}catch(d){u=null}e.exports=function(e){var t=s(n,o,arguments);return l&&u&&l(t,"length").configurable&&u(t,"length",{value:1+c(0,e.length-(arguments.length-1))}),t};var f=function(){return s(n,a,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},53435:function(e){e.exports=function(e,t,r){return tr?r:e:et?t:e}},6475:function(e,t,r){"use strict";var n=r(53435);function i(e,t){null==t&&(t=!0);var r=e[0],i=e[1],a=e[2],o=e[3];return null==o&&(o=t?1:255),t&&(r*=255,i*=255,a*=255,o*=255),16777216*(r=255&n(r,0,255))+((i=255&n(i,0,255))<<16)+((a=255&n(a,0,255))<<8)+(o=255&n(o,0,255))}e.exports=i,e.exports.to=i,e.exports.from=function(e,t){var r=(e=+e)>>>24,n=(16711680&e)>>>16,i=(65280&e)>>>8,a=255&e;return!1===t?[r,n,i,a]:[r/255,n/255,i/255,a/255]}},76857:function(e){"use strict";e.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(e,t,r){"use strict";var n=r(36652),i=r(53435),a=r(90660);e.exports=function(e,t){"float"!==t&&t||(t="array"),"uint"===t&&(t="uint8"),"uint_clamped"===t&&(t="uint8_clamped");var r=new(a(t))(4),o="uint8"!==t&&"uint8_clamped"!==t;return e.length&&"string"!==typeof e||((e=n(e))[0]/=255,e[1]/=255,e[2]/=255),function(e){return e instanceof Uint8Array||e instanceof Uint8ClampedArray||!!(Array.isArray(e)&&(e[0]>1||0===e[0])&&(e[1]>1||0===e[1])&&(e[2]>1||0===e[2])&&(!e[3]||e[3]>1))}(e)?(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=null!=e[3]?e[3]:255,o&&(r[0]/=255,r[1]/=255,r[2]/=255,r[3]/=255),r):(o?(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=null!=e[3]?e[3]:1):(r[0]=i(Math.floor(255*e[0]),0,255),r[1]=i(Math.floor(255*e[1]),0,255),r[2]=i(Math.floor(255*e[2]),0,255),r[3]=null==e[3]?255:i(Math.floor(255*e[3]),0,255)),r)}},90736:function(e,t,r){"use strict";var n=r(76857),i=r(10973),a=r(46775);e.exports=function(e){var t,s,l=[],u=1;if("string"===typeof e)if(n[e])l=n[e].slice(),s="rgb";else if("transparent"===e)u=0,s="rgb",l=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var c=e.slice(1);u=1,(h=c.length)<=4?(l=[parseInt(c[0]+c[0],16),parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16)],4===h&&(u=parseInt(c[3]+c[3],16)/255)):(l=[parseInt(c[0]+c[1],16),parseInt(c[2]+c[3],16),parseInt(c[4]+c[5],16)],8===h&&(u=parseInt(c[6]+c[7],16)/255)),l[0]||(l[0]=0),l[1]||(l[1]=0),l[2]||(l[2]=0),s="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var f=t[1],d="rgb"===f;s=c=f.replace(/a$/,"");var h="cmyk"===c?4:"gray"===c?1:3;l=t[2].trim().split(/\s*,\s*/).map((function(e,t){if(/%$/.test(e))return t===h?parseFloat(e)/100:"rgb"===c?255*parseFloat(e)/100:parseFloat(e);if("h"===c[t]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==o[e])return o[e]}return parseFloat(e)})),f===c&&l.push(1),u=d||void 0===l[h]?1:l[h],l=l.slice(0,h)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(l=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),s=e.match(/([a-z])/gi).join("").toLowerCase());else if(isNaN(e))if(i(e)){var p=a(e.r,e.red,e.R,null);null!==p?(s="rgb",l=[p,a(e.g,e.green,e.G),a(e.b,e.blue,e.B)]):(s="hsl",l=[a(e.h,e.hue,e.H),a(e.s,e.saturation,e.S),a(e.l,e.lightness,e.L,e.b,e.brightness)]),u=a(e.a,e.alpha,e.opacity,1),null!=e.opacity&&(u/=100)}else(Array.isArray(e)||r.g.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(e))&&(l=[e[0],e[1],e[2]],s="rgb",u=4===e.length?e[3]:1);else s="rgb",l=[e>>>16,(65280&e)>>>8,255&e];return{space:s,values:l,alpha:u}};var o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},36652:function(e,t,r){"use strict";var n=r(90736),i=r(80009),a=r(53435);e.exports=function(e){var t,r=n(e);return r.space?((t=Array(3))[0]=a(r.values[0],0,255),t[1]=a(r.values[1],0,255),t[2]=a(r.values[2],0,255),"h"===r.space[0]&&(t=i.rgb(t)),t.push(a(r.alpha,0,1)),t):[]}},80009:function(e,t,r){"use strict";var n=r(6866);e.exports={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t,r,n,i,a,o=e[0]/360,s=e[1]/100,l=e[2]/100;if(0===s)return[a=255*l,a,a];t=2*l-(r=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var u=0;u<3;u++)(n=o+1/3*-(u-1))<0?n++:n>1&&n--,a=6*n<1?t+6*(r-t)*n:2*n<1?r:3*n<2?t+(r-t)*(2/3-n)*6:t,i[u]=255*a;return i}},n.hsl=function(e){var t,r,n=e[0]/255,i=e[1]/255,a=e[2]/255,o=Math.min(n,i,a),s=Math.max(n,i,a),l=s-o;return s===o?t=0:n===s?t=(i-a)/l:i===s?t=2+(a-n)/l:a===s&&(t=4+(n-i)/l),(t=Math.min(60*t,360))<0&&(t+=360),r=(o+s)/2,[t,100*(s===o?0:r<=.5?l/(s+o):l/(2-s-o)),100*r]}},6866:function(e){"use strict";e.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}},24138:function(e){e.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(e,t,r){"use strict";e.exports={parse:r(41004),stringify:r(53313)}},63625:function(e,t,r){"use strict";var n=r(40402);e.exports={isSize:function(e){return/^[\d\.]/.test(e)||-1!==e.indexOf("/")||-1!==n.indexOf(e)}}},41004:function(e,t,r){"use strict";var n=r(90448),i=r(38732),a=r(41901),o=r(15659),s=r(96209),l=r(83794),u=r(99011),c=r(63625).isSize;e.exports=d;var f=d.cache={};function d(e){if("string"!==typeof e)throw new Error("Font argument must be a string.");if(f[e])return f[e];if(""===e)throw new Error("Cannot parse an empty string.");if(-1!==a.indexOf(e))return f[e]={system:e};for(var t,r={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},d=u(e,/\s+/);t=d.shift();){if(-1!==i.indexOf(t))return["style","variant","weight","stretch"].forEach((function(e){r[e]=t})),f[e]=r;if(-1===s.indexOf(t))if("normal"!==t&&"small-caps"!==t)if(-1===l.indexOf(t)){if(-1===o.indexOf(t)){if(c(t)){var p=u(t,"/");if(r.size=p[0],null!=p[1]?r.lineHeight=h(p[1]):"/"===d[0]&&(d.shift(),r.lineHeight=h(d.shift())),!d.length)throw new Error("Missing required font-family.");return r.family=u(d.join(" "),/\s*,\s*/).map(n),f[e]=r}throw new Error("Unknown or unsupported font token: "+t)}r.weight=t}else r.stretch=t;else r.variant=t;else r.style=t}throw new Error("Missing required font-size.")}function h(e){var t=parseFloat(e);return t.toString()===e?t:e}},53313:function(e,t,r){"use strict";var n=r(71299),i=r(63625).isSize,a=v(r(38732)),o=v(r(41901)),s=v(r(15659)),l=v(r(96209)),u=v(r(83794)),c={normal:1,"small-caps":1},f={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},d="1rem",h="serif";function p(e,t){if(e&&!t[e]&&!a[e])throw Error("Unknown keyword `"+e+"`");return e}function v(e){for(var t={},r=0;rt?1:e>=t?0:NaN}r.d(t,{j2:function(){return n},Fp:function(){return o},J6:function(){return l},TS:function(){return u},VV:function(){return c},w6:function(){return f},Sm:function(){return d}});var i=function(e){var t;return 1===e.length&&(t=e,e=function(e,r){return n(t(e),r)}),{left:function(t,r,n,i){for(null==n&&(n=0),null==i&&(i=t.length);n>>1;e(t[a],r)<0?n=a+1:i=a}return n},right:function(t,r,n,i){for(null==n&&(n=0),null==i&&(i=t.length);n>>1;e(t[a],r)>0?i=a:n=a+1}return n}}}(n),a=(i.right,i.left,Array.prototype);function o(e,t){var r,n,i=e.length,a=-1;if(null==t){for(;++a=r)for(n=r;++an&&(n=r)}else for(;++a=r)for(n=r;++an&&(n=r);return n}function s(e){return null===e?NaN:+e}function l(e,t){var r,n=e.length,i=n,a=-1,o=0;if(null==t)for(;++a=0;)for(t=(n=e[i]).length;--t>=0;)r[--o]=n[t];return r}function c(e,t){var r,n,i=e.length,a=-1;if(null==t){for(;++a=r)for(n=r;++ar&&(n=r)}else for(;++a=r)for(n=r;++ar&&(n=r);return n}function f(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=0|Math.max(0,Math.ceil((t-e)/r)),a=new Array(i);++n=n.length)return null!=e&&r.sort(e),null!=t?t(r):r;for(var u,c,f,d=-1,h=r.length,p=n[i++],v=o(),m=s();++dn.length)return e;var a,o=i[r-1];return null!=t&&r>=n.length?a=e.entries():(a=[],e.each((function(e,t){a.push({key:t,values:s(e,r)})}))),null!=o?a.sort((function(e,t){return o(e.key,t.key)})):a}return r={object:function(e){return a(e,0,l,u)},map:function(e){return a(e,0,c,f)},entries:function(e){return s(a(e,0,c,f),0)},key:function(e){return n.push(e),r},sortKeys:function(e){return i[n.length-1]=e,r},sortValues:function(t){return e=t,r},rollup:function(e){return t=e,r}}}function l(){return{}}function u(e,t,r){e[t]=r}function c(){return o()}function f(e,t,r){e.set(t,r)}function d(){}var h=o.prototype;d.prototype=function(e,t){var r=new d;if(e instanceof d)e.each((function(e){r.add(e)}));else if(e){var n=-1,i=e.length;if(null==t)for(;++n=(a=(v+g)/2))?v=a:g=a,(c=r>=(o=(m+y)/2))?m=o:y=o,i=h,!(h=h[f=c<<1|u]))return i[f]=p,e;if(s=+e._x.call(null,h.data),l=+e._y.call(null,h.data),t===s&&r===l)return p.next=h,i?i[f]=p:e._root=p,e;do{i=i?i[f]=new Array(4):e._root=new Array(4),(u=t>=(a=(v+g)/2))?v=a:g=a,(c=r>=(o=(m+y)/2))?m=o:y=o}while((f=c<<1|u)===(d=(l>=o)<<1|s>=a));return i[d]=h,i[f]=p,e}function s(e,t,r,n,i){this.node=e,this.x0=t,this.y0=r,this.x1=n,this.y1=i}function l(e){return e[0]}function u(e){return e[1]}function c(e,t,r){var n=new f(null==t?l:t,null==r?u:r,NaN,NaN,NaN,NaN);return null==e?n:n.addAll(e)}function f(e,t,r,n,i,a){this._x=e,this._y=t,this._x0=r,this._y0=n,this._x1=i,this._y1=a,this._root=void 0}function d(e){for(var t={data:e.data},r=t;e=e.next;)r=r.next={data:e.data};return t}r.r(t),r.d(t,{forceCenter:function(){return n},forceCollide:function(){return m},forceLink:function(){return b},forceManyBody:function(){return K},forceRadial:function(){return $},forceSimulation:function(){return X},forceX:function(){return J},forceY:function(){return Q}});var h=c.prototype=f.prototype;function p(e){return e.x+e.vx}function v(e){return e.y+e.vy}function m(e){var t,r,n=1,o=1;function s(){for(var e,i,s,u,f,d,h,m=t.length,g=0;gu+p||if+p||os.index){var v=u-l.x-l.vx,m=f-l.y-l.vy,g=v*v+m*m;ge.r&&(e.r=e[t].r)}function u(){if(t){var n,i,a=t.length;for(r=new Array(a),n=0;nf&&(f=n),id&&(d=i));if(u>f||c>d)return this;for(this.cover(u,c).cover(f,d),r=0;re||e>=i||n>t||t>=a;)switch(s=(th||(a=u.y0)>p||(o=u.x1)=y)<<1|e>=g)&&(u=v[v.length-1],v[v.length-1]=v[v.length-1-c],v[v.length-1-c]=u)}else{var x=e-+this._x.call(null,m.data),b=t-+this._y.call(null,m.data),_=x*x+b*b;if(_=(s=(p+m)/2))?p=s:m=s,(c=o>=(l=(v+g)/2))?v=l:g=l,t=h,!(h=h[f=c<<1|u]))return this;if(!h.length)break;(t[f+1&3]||t[f+2&3]||t[f+3&3])&&(r=t,d=f)}for(;h.data!==e;)if(n=h,!(h=h.next))return this;return(i=h.next)&&delete h.next,n?(i?n.next=i:delete n.next,this):t?(i?t[f]=i:delete t[f],(h=t[0]||t[1]||t[2]||t[3])&&h===(t[3]||t[2]||t[1]||t[0])&&!h.length&&(r?r[d]=h:this._root=h),this):(this._root=i,this)},h.removeAll=function(e){for(var t=0,r=e.length;t=0&&(t=e.slice(r+1),e=e.slice(0,r)),e&&!n.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}}))),o=-1,s=a.length;if(!(arguments.length<2)){if(null!=t&&"function"!==typeof t)throw new Error("invalid callback: "+t);for(;++o0)for(var r,n,i=new Array(r),a=0;a=0&&t._call.call(null,e),t=t._next;--C}()}finally{C=0,function(){for(var e,t,r=A,n=1/0;r;)r._call?(n>r._time&&(n=r._time),e=r,r=r._next):(t=r._next,r._next=null,r=e?e._next=t:A=t);S=e,q(n)}(),D=0}}function H(){var e=z.now(),t=e-I;t>O&&(R-=t,I=e)}function q(e){C||(L&&(L=clearTimeout(L)),e-D>24?(e<1/0&&(L=setTimeout(V,e-z.now()-R)),P&&(P=clearInterval(P))):(P||(I=z.now(),P=setInterval(H,O)),C=1,F(V)))}function W(e){return e.x}function G(e){return e.y}j.prototype=U.prototype={constructor:j,restart:function(e,t,r){if("function"!==typeof e)throw new TypeError("callback is not a function");r=(null==r?N():+r)+(null==t?0:+t),this._next||S===this||(S?S._next=this:A=this,S=this),this._call=e,this._time=r,q()},stop:function(){this._call&&(this._call=null,this._time=1/0,q())}};var Y=10,Z=Math.PI*(3-Math.sqrt(5));function X(e){var t,r=1,n=.001,i=1-Math.pow(n,1/300),a=0,o=.6,s=(0,g.UI)(),l=U(c),u=E("tick","end");function c(){f(),u.call("tick",t),r1?(null==r?s.remove(e):s.set(e,h(r)),t):s.get(e)},find:function(t,r,n){var i,a,o,s,l,u=0,c=e.length;for(null==n?n=1/0:n*=n,u=0;u1?(u.on(e,r),t):u.on(e)}}}function K(){var e,t,r,n,o=i(-30),s=1,l=1/0,u=.81;function f(n){var i,a=e.length,o=c(e,W,G).visitAfter(h);for(r=n,i=0;i=l)){(e.data!==t||e.next)&&(0===f&&(p+=(f=a())*f),0===d&&(p+=(d=a())*d),p1?n[0]+n.slice(2):n,+e.slice(r+1)]}r.d(t,{WU:function(){return d},FF:function(){return v}});var i,a=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(e){if(!(t=a.exec(e)))throw new Error("invalid format: "+e);var t;return new s({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function s(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function l(e,t){var r=n(e,t);if(!r)return e+"";var i=r[0],a=r[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 u={"%":function(e,t){return(100*e).toFixed(t)},b:function(e){return Math.round(e).toString(2)},c:function(e){return e+""},d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:function(e,t){return e.toExponential(t)},f:function(e,t){return e.toFixed(t)},g:function(e,t){return e.toPrecision(t)},o:function(e){return Math.round(e).toString(8)},p:function(e,t){return l(100*e,t)},r:l,s:function(e,t){var r=n(e,t);if(!r)return e+"";var a=r[0],o=r[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")+n(e,Math.max(0,t+s-1))[0]},X:function(e){return Math.round(e).toString(16).toUpperCase()},x:function(e){return Math.round(e).toString(16)}};function c(e){return e}var f,d,h=Array.prototype.map,p=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function v(e){var t,r,a=void 0===e.grouping||void 0===e.thousands?c:(t=h.call(e.grouping,Number),r=e.thousands+"",function(e,n){for(var i=e.length,a=[],o=0,s=t[0],l=0;i>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(e.substring(i-=s,i+s)),!((l+=s+1)>n));)s=t[o=(o+1)%t.length];return a.reverse().join(r)}),s=void 0===e.currency?"":e.currency[0]+"",l=void 0===e.currency?"":e.currency[1]+"",f=void 0===e.decimal?".":e.decimal+"",d=void 0===e.numerals?c:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(h.call(e.numerals,String)),v=void 0===e.percent?"%":e.percent+"",m=void 0===e.minus?"-":e.minus+"",g=void 0===e.nan?"NaN":e.nan+"";function y(e){var t=(e=o(e)).fill,r=e.align,n=e.sign,c=e.symbol,h=e.zero,y=e.width,x=e.comma,b=e.precision,_=e.trim,w=e.type;"n"===w?(x=!0,w="g"):u[w]||(void 0===b&&(b=12),_=!0,w="g"),(h||"0"===t&&"="===r)&&(h=!0,t="0",r="=");var k="$"===c?s:"#"===c&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",T="$"===c?l:/[%p]/.test(w)?v:"",M=u[w],A=/[defgprs%]/.test(w);function S(e){var o,s,l,u=k,c=T;if("c"===w)c=M(e)+c,e="";else{var v=(e=+e)<0||1/e<0;if(e=isNaN(e)?g:M(Math.abs(e),b),_&&(e=function(e){e:for(var t,r=e.length,n=1,i=-1;n0&&(i=0)}return i>0?e.slice(0,i)+e.slice(t+1):e}(e)),v&&0===+e&&"+"!==n&&(v=!1),u=(v?"("===n?n:m:"-"===n||"("===n?"":n)+u,c=("s"===w?p[8+i/3]:"")+c+(v&&"("===n?")":""),A)for(o=-1,s=e.length;++o(l=e.charCodeAt(o))||l>57){c=(46===l?f+e.slice(o+1):e.slice(o))+c,e=e.slice(0,o);break}}x&&!h&&(e=a(e,1/0));var S=u.length+e.length+c.length,E=S>1)+u+e+c+E.slice(S);break;default:e=E+u+e+c}return d(e)}return b=void 0===b?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b)),S.toString=function(){return e+""},S}return{format:y,formatPrefix:function(e,t){var r,i=y(((e=o(e)).type="f",e)),a=3*Math.max(-8,Math.min(8,Math.floor((r=t,((r=n(Math.abs(r)))?r[1]:NaN)/3)))),s=Math.pow(10,-a),l=p[8+a/3];return function(e){return i(s*e)+l}}}}f=v({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),d=f.format,f.formatPrefix},65704:function(e,t,r){"use strict";r.r(t),r.d(t,{geoAiry:function(){return R},geoAiryRaw:function(){return D},geoAitoff:function(){return F},geoAitoffRaw:function(){return z},geoArmadillo:function(){return B},geoArmadilloRaw:function(){return N},geoAugust:function(){return U},geoAugustRaw:function(){return j},geoBaker:function(){return W},geoBakerRaw:function(){return q},geoBerghaus:function(){return Z},geoBerghausRaw:function(){return Y},geoBertin1953:function(){return re},geoBertin1953Raw:function(){return te},geoBoggs:function(){return ce},geoBoggsRaw:function(){return ue},geoBonne:function(){return ve},geoBonneRaw:function(){return pe},geoBottomley:function(){return ge},geoBottomleyRaw:function(){return me},geoBromley:function(){return xe},geoBromleyRaw:function(){return ye},geoChamberlin:function(){return Ee},geoChamberlinAfrica:function(){return Se},geoChamberlinRaw:function(){return Me},geoCollignon:function(){return Le},geoCollignonRaw:function(){return Ce},geoCraig:function(){return Oe},geoCraigRaw:function(){return Pe},geoCraster:function(){return Re},geoCrasterRaw:function(){return De},geoCylindricalEqualArea:function(){return Fe},geoCylindricalEqualAreaRaw:function(){return ze},geoCylindricalStereographic:function(){return Be},geoCylindricalStereographicRaw:function(){return Ne},geoEckert1:function(){return Ue},geoEckert1Raw:function(){return je},geoEckert2:function(){return He},geoEckert2Raw:function(){return Ve},geoEckert3:function(){return We},geoEckert3Raw:function(){return qe},geoEckert4:function(){return Ye},geoEckert4Raw:function(){return Ge},geoEckert5:function(){return Xe},geoEckert5Raw:function(){return Ze},geoEckert6:function(){return $e},geoEckert6Raw:function(){return Ke},geoEisenlohr:function(){return et},geoEisenlohrRaw:function(){return Qe},geoFahey:function(){return nt},geoFaheyRaw:function(){return rt},geoFoucaut:function(){return at},geoFoucautRaw:function(){return it},geoFoucautSinusoidal:function(){return st},geoFoucautSinusoidalRaw:function(){return ot},geoGilbert:function(){return dt},geoGingery:function(){return mt},geoGingeryRaw:function(){return ht},geoGinzburg4:function(){return xt},geoGinzburg4Raw:function(){return yt},geoGinzburg5:function(){return _t},geoGinzburg5Raw:function(){return bt},geoGinzburg6:function(){return kt},geoGinzburg6Raw:function(){return wt},geoGinzburg8:function(){return Mt},geoGinzburg8Raw:function(){return Tt},geoGinzburg9:function(){return St},geoGinzburg9Raw:function(){return At},geoGringorten:function(){return Lt},geoGringortenQuincuncial:function(){return ai},geoGringortenRaw:function(){return Ct},geoGuyou:function(){return Dt},geoGuyouRaw:function(){return It},geoHammer:function(){return J},geoHammerRaw:function(){return K},geoHammerRetroazimuthal:function(){return Nt},geoHammerRetroazimuthalRaw:function(){return zt},geoHealpix:function(){return Yt},geoHealpixRaw:function(){return Ht},geoHill:function(){return Xt},geoHillRaw:function(){return Zt},geoHomolosine:function(){return tr},geoHomolosineRaw:function(){return er},geoHufnagel:function(){return nr},geoHufnagelRaw:function(){return rr},geoHyperelliptical:function(){return sr},geoHyperellipticalRaw:function(){return or},geoInterrupt:function(){return cr},geoInterruptedBoggs:function(){return dr},geoInterruptedHomolosine:function(){return pr},geoInterruptedMollweide:function(){return mr},geoInterruptedMollweideHemispheres:function(){return yr},geoInterruptedQuarticAuthalic:function(){return fn},geoInterruptedSinuMollweide:function(){return br},geoInterruptedSinusoidal:function(){return wr},geoKavrayskiy7:function(){return Tr},geoKavrayskiy7Raw:function(){return kr},geoLagrange:function(){return Ar},geoLagrangeRaw:function(){return Mr},geoLarrivee:function(){return Cr},geoLarriveeRaw:function(){return Er},geoLaskowski:function(){return Pr},geoLaskowskiRaw:function(){return Lr},geoLittrow:function(){return Ir},geoLittrowRaw:function(){return Or},geoLoximuthal:function(){return Rr},geoLoximuthalRaw:function(){return Dr},geoMiller:function(){return Fr},geoMillerRaw:function(){return zr},geoModifiedStereographic:function(){return Xr},geoModifiedStereographicAlaska:function(){return qr},geoModifiedStereographicGs48:function(){return Wr},geoModifiedStereographicGs50:function(){return Gr},geoModifiedStereographicLee:function(){return Zr},geoModifiedStereographicMiller:function(){return Yr},geoModifiedStereographicRaw:function(){return Nr},geoMollweide:function(){return oe},geoMollweideRaw:function(){return ae},geoMtFlatPolarParabolic:function(){return Qr},geoMtFlatPolarParabolicRaw:function(){return Jr},geoMtFlatPolarQuartic:function(){return tn},geoMtFlatPolarQuarticRaw:function(){return en},geoMtFlatPolarSinusoidal:function(){return nn},geoMtFlatPolarSinusoidalRaw:function(){return rn},geoNaturalEarth:function(){return an.Z},geoNaturalEarth2:function(){return sn},geoNaturalEarth2Raw:function(){return on},geoNaturalEarthRaw:function(){return an.K},geoNellHammer:function(){return un},geoNellHammerRaw:function(){return ln},geoNicolosi:function(){return hn},geoNicolosiRaw:function(){return dn},geoPatterson:function(){return Tn},geoPattersonRaw:function(){return kn},geoPeirceQuincuncial:function(){return oi},geoPierceQuincuncial:function(){return oi},geoPolyconic:function(){return An},geoPolyconicRaw:function(){return Mn},geoPolyhedral:function(){return In},geoPolyhedralButterfly:function(){return jn},geoPolyhedralCollignon:function(){return Hn},geoPolyhedralWaterman:function(){return qn},geoProject:function(){return Xn},geoQuantize:function(){return si},geoQuincuncial:function(){return ii},geoRectangularPolyconic:function(){return ui},geoRectangularPolyconicRaw:function(){return li},geoRobinson:function(){return di},geoRobinsonRaw:function(){return fi},geoSatellite:function(){return pi},geoSatelliteRaw:function(){return hi},geoSinuMollweide:function(){return Qt},geoSinuMollweideRaw:function(){return Jt},geoSinusoidal:function(){return he},geoSinusoidalRaw:function(){return de},geoStitch:function(){return Ii},geoTimes:function(){return Ri},geoTimesRaw:function(){return Di},geoTwoPointAzimuthal:function(){return Bi},geoTwoPointAzimuthalRaw:function(){return Fi},geoTwoPointAzimuthalUsa:function(){return Ni},geoTwoPointEquidistant:function(){return Vi},geoTwoPointEquidistantRaw:function(){return ji},geoTwoPointEquidistantUsa:function(){return Ui},geoVanDerGrinten:function(){return qi},geoVanDerGrinten2:function(){return Gi},geoVanDerGrinten2Raw:function(){return Wi},geoVanDerGrinten3:function(){return Zi},geoVanDerGrinten3Raw:function(){return Yi},geoVanDerGrinten4:function(){return Ki},geoVanDerGrinten4Raw:function(){return Xi},geoVanDerGrintenRaw:function(){return Hi},geoWagner:function(){return Ji},geoWagner4:function(){return na},geoWagner4Raw:function(){return ra},geoWagner6:function(){return aa},geoWagner6Raw:function(){return ia},geoWagner7:function(){return Qi},geoWagnerRaw:function(){return $i},geoWiechel:function(){return sa},geoWiechelRaw:function(){return oa},geoWinkel3:function(){return ua},geoWinkel3Raw:function(){return la}});var n=r(15002),i=Math.abs,a=Math.atan,o=Math.atan2,s=(Math.ceil,Math.cos),l=Math.exp,u=Math.floor,c=Math.log,f=Math.max,d=Math.min,h=Math.pow,p=Math.round,v=Math.sign||function(e){return e>0?1:e<0?-1:0},m=Math.sin,g=Math.tan,y=1e-6,x=1e-12,b=Math.PI,_=b/2,w=b/4,k=Math.SQRT1_2,T=P(2),M=P(b),A=2*b,S=180/b,E=b/180;function C(e){return e>1?_:e<-1?-_:Math.asin(e)}function L(e){return e>1?0:e<-1?b:Math.acos(e)}function P(e){return e>0?Math.sqrt(e):0}function O(e){return(l(e)-l(-e))/2}function I(e){return(l(e)+l(-e))/2}function D(e){var t=g(e/2),r=2*c(s(e/2))/(t*t);function n(e,t){var n=s(e),i=s(t),a=m(t),o=i*n,l=-((1-o?c((1+o)/2)/(1-o):-.5)+r/(1+o));return[l*i*m(e),l*a]}return n.invert=function(t,n){var a,l=P(t*t+n*n),u=-e/2,f=50;if(!l)return[0,0];do{var d=u/2,h=s(d),p=m(d),v=p/h,g=-c(i(h));u-=a=(2/v*g-r*v-l)/(-g/(p*p)+1-r/(2*h*h))*(h<0?.7:1)}while(i(a)>y&&--f>0);var x=m(u);return[o(t*x,l*s(u)),C(n*x/l)]},n}function R(){var e=_,t=(0,n.r)(D),r=t(e);return r.radius=function(r){return arguments.length?t(e=r*E):e*S},r.scale(179.976).clipAngle(147)}function z(e,t){var r=s(t),n=function(e){return e?e/Math.sin(e):1}(L(r*s(e/=2)));return[2*r*m(e)*n,m(t)*n]}function F(){return(0,n.Z)(z).scale(152.63)}function N(e){var t=m(e),r=s(e),n=e>=0?1:-1,a=g(n*e),l=(1+t-r)/2;function u(e,i){var u=s(i),c=s(e/=2);return[(1+u)*m(e),(n*i>-o(c,a)-.001?0:10*-n)+l+m(i)*r-(1+u)*t*c]}return u.invert=function(e,u){var c=0,f=0,d=50;do{var h=s(c),p=m(c),v=s(f),g=m(f),x=1+v,b=x*p-e,_=l+g*r-x*t*h-u,w=x*h/2,k=-p*g,T=t*x*p/2,M=r*v+t*h*g,A=k*T-M*w,S=(_*k-b*M)/A/2,E=(b*T-_*w)/A;i(E)>2&&(E/=2),c-=S,f-=E}while((i(S)>y||i(E)>y)&&--d>0);return n*f>-o(s(c),a)-.001?[2*c,f]:null},u}function B(){var e=20*E,t=e>=0?1:-1,r=g(t*e),i=(0,n.r)(N),a=i(e),l=a.stream;return a.parallel=function(n){return arguments.length?(r=g((t=(e=n*E)>=0?1:-1)*e),i(e)):e*S},a.stream=function(n){var i=a.rotate(),u=l(n),c=(a.rotate([0,0]),l(n)),f=a.precision();return a.rotate(i),u.sphere=function(){c.polygonStart(),c.lineStart();for(var n=-180*t;t*n<180;n+=90*t)c.point(n,90*t);if(e)for(;t*(n-=3*t*f)>=-180;)c.point(n,t*-o(s(n*E/2),r)*S);c.lineEnd(),c.polygonEnd()},u},a.scale(218.695).center([0,28.0974])}function j(e,t){var r=g(t/2),n=P(1-r*r),i=1+n*s(e/=2),a=m(e)*n/i,o=r/i,l=a*a,u=o*o;return[4/3*a*(3+l-3*u),4/3*o*(3+3*l-u)]}function U(){return(0,n.Z)(j).scale(66.1603)}z.invert=function(e,t){if(!(e*e+4*t*t>b*b+y)){var r=e,n=t,a=25;do{var o,l=m(r),u=m(r/2),c=s(r/2),f=m(n),d=s(n),h=m(2*n),p=f*f,v=d*d,g=u*u,x=1-v*c*c,_=x?L(d*c)*P(o=1/x):o=0,w=2*_*d*u-e,k=_*f-t,T=o*(v*g+_*d*c*p),M=o*(.5*l*h-2*_*f*u),A=.25*o*(h*u-_*f*v*l),S=o*(p*c+_*g*d),E=M*A-S*T;if(!E)break;var C=(k*M-w*S)/E,O=(w*A-k*T)/E;r-=C,n-=O}while((i(C)>y||i(O)>y)&&--a>0);return[r,n]}},j.invert=function(e,t){if(t*=3/8,!(e*=3/8)&&i(t)>1)return null;var r=1+e*e+t*t,n=P((r-P(r*r-4*t*t))/2),a=C(n)/3,l=n?function(e){return c(e+P(e*e-1))}(i(t/n))/3:function(e){return c(e+P(e*e+1))}(i(e))/3,u=s(a),f=I(l),d=f*f-u*u;return[2*v(e)*o(O(l)*u,.25-d),2*v(t)*o(f*m(a),.25+d)]};var V=P(8),H=c(1+T);function q(e,t){var r=i(t);return rx&&--u>0);return[e/(s(o)*(V-1/m(o))),v(t)*o]};var G=r(17889);function Y(e){var t=2*b/e;function r(e,r){var n=(0,G.N)(e,r);if(i(e)>_){var a=o(n[1],n[0]),l=P(n[0]*n[0]+n[1]*n[1]),u=t*p((a-_)/t)+_,c=o(m(a-=u),2-s(a));a=u+C(b/l*m(c))-c,n[0]=l*s(a),n[1]=l*m(a)}return n}return r.invert=function(e,r){var n=P(e*e+r*r);if(n>_){var i=o(r,e),l=t*p((i-_)/t)+_,u=i>l?-1:1,c=n*s(l-i),f=1/g(u*L((c-b)/P(b*(b-2*c)+n*n)));i=l+2*a((f+u*P(f*f-3))/3),e=n*s(i),r=n*m(i)}return G.N.invert(e,r)},r}function Z(){var e=5,t=(0,n.r)(Y),r=t(e),i=r.stream,a=.01,l=-s(a*E),u=m(a*E);return r.lobes=function(r){return arguments.length?t(e=+r):e},r.stream=function(t){var n=r.rotate(),c=i(t),f=(r.rotate([0,0]),i(t));return r.rotate(n),c.sphere=function(){f.polygonStart(),f.lineStart();for(var t=0,r=360/e,n=2*b/e,i=90-180/e,c=_;t0&&i(n)>y);return s<0?NaN:r}function ee(e,t,r){return void 0===t&&(t=40),void 0===r&&(r=x),function(n,a,o,s){var l,u,c;o=void 0===o?0:+o,s=void 0===s?0:+s;for(var f=0;fl)o-=u/=2,s-=c/=2;else{l=v;var m=(o>0?-1:1)*r,g=(s>0?-1:1)*r,y=e(o+m,s),x=e(o,s+g),b=(y[0]-d[0])/m,_=(y[1]-d[1])/m,w=(x[0]-d[0])/g,k=(x[1]-d[1])/g,T=k*b-_*w,M=(i(T)<.5?.5:1)/T;if(o+=u=(p*w-h*k)*M,s+=c=(h*_-p*b)*M,i(u)0&&(i[1]*=1+a/1.5*i[0]*i[0]),i}return t.invert=ee(t),t}function re(){return(0,n.Z)(te()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function ne(e,t){var r,n=e*m(t),a=30;do{t-=r=(t+m(t)-n)/(1+s(t))}while(i(r)>y&&--a>0);return t/2}function ie(e,t,r){function n(n,i){return[e*n*s(i=ne(r,i)),t*m(i)]}return n.invert=function(n,i){return i=C(i/t),[n/(e*s(i)),C((2*i+m(2*i))/r)]},n}$.invert=function(e,t){var r=2*C(t/2);return[e*s(r/2)/s(r),r]};var ae=ie(T/_,T,b);function oe(){return(0,n.Z)(ae).scale(169.529)}var se=2.00276,le=1.11072;function ue(e,t){var r=ne(b,t);return[se*e/(1/s(t)+le/s(r)),(t+T*m(r))/se]}function ce(){return(0,n.Z)(ue).scale(160.857)}function fe(e){var t=0,r=(0,n.r)(e),i=r(t);return i.parallel=function(e){return arguments.length?r(t=e*E):t*S},i}function de(e,t){return[e*s(t),t]}function he(){return(0,n.Z)(de).scale(152.63)}function pe(e){if(!e)return de;var t=1/g(e);function r(r,n){var i=t+e-n,a=i?r*s(n)/i:i;return[i*m(a),t-i*s(a)]}return r.invert=function(r,n){var i=P(r*r+(n=t-n)*n),a=t+e-i;return[i/s(a)*o(r,n),a]},r}function ve(){return fe(pe).scale(123.082).center([0,26.1441]).parallel(45)}function me(e){function t(t,r){var n=_-r,i=n?t*e*m(n)/n:n;return[n*m(i)/e,_-n*s(i)]}return t.invert=function(t,r){var n=t*e,i=_-r,a=P(n*n+i*i),s=o(n,i);return[(a?a/m(a):1)*s/e,_-a]},t}function ge(){var e=.5,t=(0,n.r)(me),r=t(e);return r.fraction=function(r){return arguments.length?t(e=+r):e},r.scale(158.837)}ue.invert=function(e,t){var r,n,a=se*t,o=t<0?-w:w,l=25;do{n=a-T*m(o),o-=r=(m(2*o)+2*o-b*m(n))/(2*s(2*o)+2+b*s(n)*T*s(o))}while(i(r)>y&&--l>0);return n=a-T*m(o),[e*(1/s(n)+le/s(o))/se,n]},de.invert=function(e,t){return[e/s(t),t]};var ye=ie(1,4/b,b);function xe(){return(0,n.Z)(ye).scale(152.63)}var be=r(66624),_e=r(49386);function we(e,t,r,n,a,l){var u,c=s(l);if(i(e)>1||i(l)>1)u=L(r*a+t*n*c);else{var f=m(e/2),d=m(l/2);u=2*C(P(f*f+t*n*d*d))}return i(u)>y?[u,o(n*m(l),t*a-r*n*c)]:[0,0]}function ke(e,t,r){return L((e*e+t*t-r*r)/(2*e*t))}function Te(e){return e-2*b*u((e+b)/(2*b))}function Me(e,t,r){for(var n,i=[[e[0],e[1],m(e[1]),s(e[1])],[t[0],t[1],m(t[1]),s(t[1])],[r[0],r[1],m(r[1]),s(r[1])]],a=i[2],o=0;o<3;++o,a=n)n=i[o],a.v=we(n[1]-a[1],a[3],a[2],n[3],n[2],n[0]-a[0]),a.point=[0,0];var l=ke(i[0].v[0],i[2].v[0],i[1].v[0]),u=ke(i[0].v[0],i[1].v[0],i[2].v[0]),c=b-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]*m(l))];return function(e,t){var r,n=m(t),a=s(t),o=new Array(3);for(r=0;r<3;++r){var l=i[r];if(o[r]=we(t-l[1],l[3],l[2],a,n,e-l[0]),!o[r][0])return l.point;o[r][1]=Te(o[r][1]-l.v[1])}var d=f.slice();for(r=0;r<3;++r){var h=2==r?0:r+1,p=ke(i[r].v[0],o[r][0],o[h][0]);o[r][1]<0&&(p=-p),r?1==r?(p=u-p,d[0]-=o[r][0]*s(p),d[1]-=o[r][0]*m(p)):(p=c-p,d[0]+=o[r][0]*s(p),d[1]+=o[r][0]*m(p)):(d[0]+=o[r][0]*s(p),d[1]-=o[r][0]*m(p))}return d[0]/=3,d[1]/=3,d}}function Ae(e){return e[0]*=E,e[1]*=E,e}function Se(){return Ee([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Ee(e,t,r){var i=(0,be.Z)({type:"MultiPoint",coordinates:[e,t,r]}),a=[-i[0],-i[1]],o=(0,_e.Z)(a),s=Me(Ae(o(e)),Ae(o(t)),Ae(o(r)));s.invert=ee(s);var l=(0,n.Z)(s).rotate(a),u=l.center;return delete l.rotate,l.center=function(e){return arguments.length?u(o(e)):o.invert(u())},l.clipAngle(90)}function Ce(e,t){var r=P(1-m(t));return[2/M*e*r,M*(1-r)]}function Le(){return(0,n.Z)(Ce).scale(95.6464).center([0,30])}function Pe(e){var t=g(e);function r(e,r){return[e,(e?e/m(e):1)*(m(r)*s(e)-t*s(r))]}return r.invert=t?function(e,r){e&&(r*=m(e)/e);var n=s(e);return[e,2*o(P(n*n+t*t-r*r)-n,t-r)]}:function(e,t){return[e,C(e?t*g(e)/e:t)]},r}function Oe(){return fe(Pe).scale(249.828).clipAngle(90)}Ce.invert=function(e,t){var r=(r=t/M-1)*r;return[r>0?e*P(b/r)/2:0,C(1-r)]};var Ie=P(3);function De(e,t){return[Ie*e*(2*s(2*t/3)-1)/M,Ie*M*m(t/3)]}function Re(){return(0,n.Z)(De).scale(156.19)}function ze(e){var t=s(e);function r(e,r){return[e*t,m(r)/t]}return r.invert=function(e,r){return[e/t,C(r*t)]},r}function Fe(){return fe(ze).parallel(38.58).scale(195.044)}function Ne(e){var t=s(e);function r(e,r){return[e*t,(1+t)*g(r/2)]}return r.invert=function(e,r){return[e/t,2*a(r/(1+t))]},r}function Be(){return fe(Ne).scale(124.75)}function je(e,t){var r=P(8/(3*b));return[r*e*(1-i(t)/b),r*t]}function Ue(){return(0,n.Z)(je).scale(165.664)}function Ve(e,t){var r=P(4-3*m(i(t)));return[2/P(6*b)*e*r,v(t)*P(2*b/3)*(2-r)]}function He(){return(0,n.Z)(Ve).scale(165.664)}function qe(e,t){var r=P(b*(4+b));return[2/r*e*(1+P(1-4*t*t/(b*b))),4/r*t]}function We(){return(0,n.Z)(qe).scale(180.739)}function Ge(e,t){var r=(2+_)*m(t);t/=2;for(var n=0,a=1/0;n<10&&i(a)>y;n++){var o=s(t);t-=a=(t+m(t)*(o+2)-r)/(2*o*(1+o))}return[2/P(b*(4+b))*e*(1+s(t)),2*P(b/(4+b))*m(t)]}function Ye(){return(0,n.Z)(Ge).scale(180.739)}function Ze(e,t){return[e*(1+s(t))/P(2+b),2*t/P(2+b)]}function Xe(){return(0,n.Z)(Ze).scale(173.044)}function Ke(e,t){for(var r=(1+_)*m(t),n=0,a=1/0;n<10&&i(a)>y;n++)t-=a=(t+m(t)-r)/(1+s(t));return r=P(2+b),[e*(1+s(t))/r,2*t/r]}function $e(){return(0,n.Z)(Ke).scale(173.044)}De.invert=function(e,t){var r=3*C(t/(Ie*M));return[M*e/(Ie*(2*s(2*r/3)-1)),r]},je.invert=function(e,t){var r=P(8/(3*b)),n=t/r;return[e/(r*(1-i(n)/b)),n]},Ve.invert=function(e,t){var r=2-i(t)/P(2*b/3);return[e*P(6*b)/(2*r),v(t)*C((4-r*r)/3)]},qe.invert=function(e,t){var r=P(b*(4+b))/2;return[e*r/(1+P(1-t*t*(4+b)/(4*b))),t*r/2]},Ge.invert=function(e,t){var r=t*P((4+b)/b)/2,n=C(r),i=s(n);return[e/(2/P(b*(4+b))*(1+i)),C((n+r*(i+2))/(2+_))]},Ze.invert=function(e,t){var r=P(2+b),n=t*r/2;return[r*e/(1+s(n)),n]},Ke.invert=function(e,t){var r=1+_,n=P(r/2);return[2*e*n/(1+s(t*=n)),C((t+m(t))/r)]};var Je=3+2*T;function Qe(e,t){var r=m(e/=2),n=s(e),i=P(s(t)),o=s(t/=2),l=m(t)/(o+T*n*i),u=P(2/(1+l*l)),f=P((T*o+(n+r)*i)/(T*o+(n-r)*i));return[Je*(u*(f-1/f)-2*c(f)),Je*(u*l*(f+1/f)-2*a(l))]}function et(){return(0,n.Z)(Qe).scale(62.5271)}Qe.invert=function(e,t){if(!(r=j.invert(e/1.2,1.065*t)))return null;var r,n=r[0],o=r[1],l=20;e/=Je,t/=Je;do{var u=n/2,h=o/2,p=m(u),v=s(u),g=m(h),x=s(h),b=s(o),w=P(b),M=g/(x+T*v*w),A=M*M,S=P(2/(1+A)),E=(T*x+(v+p)*w)/(T*x+(v-p)*w),C=P(E),L=C-1/C,O=C+1/C,I=S*L-2*c(C)-e,D=S*M*O-2*a(M)-t,R=g&&k*w*p*A/g,z=(T*v*x+w)/(2*(x+T*v*w)*(x+T*v*w)*w),F=-.5*M*S*S*S,N=F*R,B=F*z,U=(U=2*x+T*w*(v-p))*U*C,V=(T*v*x*w+b)/U,H=-T*p*g/(w*U),q=L*N-2*V/C+S*(V+V/E),W=L*B-2*H/C+S*(H+H/E),G=M*O*N-2*R/(1+A)+S*O*R+S*M*(V-V/E),Y=M*O*B-2*z/(1+A)+S*O*z+S*M*(H-H/E),Z=W*G-Y*q;if(!Z)break;var X=(D*W-I*Y)/Z,K=(I*G-D*q)/Z;n-=X,o=f(-_,d(_,o-K))}while((i(X)>y||i(K)>y)&&--l>0);return i(i(o)-_)n){var d=P(f),h=o(c,u),v=r*p(h/r),g=h-v,x=e*s(g),w=(e*m(g)-g*m(x))/(_-x),k=pt(g,w),T=(b-e)/vt(k,x,b);u=d;var M,A=50;do{u-=M=(e+vt(k,x,u)*T-d)/(k(u)*T)}while(i(M)>y&&--A>0);c=g*m(u),u<_&&(c-=w*(u-_));var S=m(v),E=s(v);l[0]=u*E-c*S,l[1]=u*S+c*E}return l}return a.invert=function(t,a){var l=t*t+a*a;if(l>n){var u=P(l),c=o(a,t),f=r*p(c/r),d=c-f;t=u*s(d),a=u*m(d);for(var h=t-_,v=m(t),g=a/v,y=t<_?1/0:0,w=10;;){var k=e*m(g),T=e*s(g),M=m(T),A=_-T,S=(k-g*M)/A,E=pt(g,S);if(i(y)y||i(h)>y)&&--g>0);return[p,v]},c}var yt=gt(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function xt(){return(0,n.Z)(yt).scale(149.995)}var bt=gt(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function _t(){return(0,n.Z)(bt).scale(153.93)}var wt=gt(5/6*b,-.62636,-.0344,0,1.3493,-.05524,0,.045);function kt(){return(0,n.Z)(wt).scale(130.945)}function Tt(e,t){var r=e*e,n=t*t;return[e*(1-.162388*n)*(.87-952426e-9*r*r),t*(1+n/12)]}function Mt(){return(0,n.Z)(Tt).scale(131.747)}Tt.invert=function(e,t){var r,n=e,a=t,o=50;do{var s=a*a;a-=r=(a*(1+s/12)-t)/(1+s/4)}while(i(r)>y&&--o>0);o=50,e/=1-.162388*s;do{var l=(l=n*n)*l;n-=r=(n*(.87-952426e-9*l)-e)/(.87-.00476213*l)}while(i(r)>y&&--o>0);return[n,a]};var At=gt(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function St(){return(0,n.Z)(At).scale(131.087)}function Et(e){var t=e(_,0)[0]-e(-_,0)[0];function r(r,n){var i=r>0?-.5:.5,a=e(r+i*b,n);return a[0]-=i*t,a}return e.invert&&(r.invert=function(r,n){var i=r>0?-.5:.5,a=e.invert(r+i*t,n),o=a[0]-i*b;return o<-b?o+=2*b:o>b&&(o-=2*b),a[0]=o,a}),r}function Ct(e,t){var r=v(e),n=v(t),a=s(t),l=s(e)*a,u=m(e)*a,c=m(n*t);e=i(o(u,c)),t=C(l),i(e-_)>y&&(e%=_);var f=function(e,t){if(t===_)return[0,0];var r,n,a=m(t),o=a*a,l=o*o,u=1+l,c=1+3*l,f=1-l,d=C(1/P(u)),h=f+o*u*d,p=(1-a)/h,v=P(p),g=p*u,x=P(g),w=v*f;if(0===e)return[0,-(w+o*x)];var k,T=s(t),M=1/T,A=2*a*T,S=(-3*o+d*c)*A,E=(-h*T-(1-a)*S)/(h*h),L=o*u*E+p*c*A,O=-M*A,I=-M*L,D=-2*M*(f*(.5*E/v)-2*o*v*A),R=4*e/b;if(e>.222*b||t.175*b){if(r=(w+o*P(g*(1+l)-w*w))/(1+l),e>b/4)return[r,r];var z=r,F=.5*r;r=.5*(F+z),n=50;do{var N=r*(D+O*P(g-r*r))+I*C(r/x)-R;if(!N)break;N<0?F=r:z=r,r=.5*(F+z)}while(i(z-F)>y&&--n>0)}else{r=y,n=25;do{var B=r*r,j=P(g-B),U=D+O*j,V=r*U+I*C(r/x)-R;r-=k=j?V/(U+(I-O*B)/j):0}while(i(k)>y&&--n>0)}return[r,-w-o*P(g-r*r)]}(e>b/4?_-e:e,t);return e>b/4&&(c=f[0],f[0]=-f[1],f[1]=-c),f[0]*=r,f[1]*=-n,f}function Lt(){return(0,n.Z)(Et(Ct)).scale(239.75)}function Pt(e,t){var r,n,o,u,c,f;if(t=1-y)return r=(1-t)/4,o=1/(n=I(e)),[(u=((f=l(2*(f=e)))-1)/(f+1))+r*((c=n*O(e))-e)/(n*n),o-r*u*o*(c-e),o+r*u*o*(c+e),2*a(l(e))-_+r*(c-e)/n];var d=[1,0,0,0,0,0,0,0,0],h=[P(t),0,0,0,0,0,0,0,0],p=0;for(n=P(1-t),c=1;i(h[p]/d[p])>y&&p<8;)r=d[p++],h[p]=(r-n)/2,d[p]=(r+n)/2,n=P(r*n),c*=2;o=c*d[p]*e;do{o=(C(u=h[p]*m(n=o)/d[p])+o)/2}while(--p);return[m(o),u=s(o),u/s(o-n),o]}function Ot(e,t){if(!t)return e;if(1===t)return c(g(e/2+w));for(var r=1,n=P(1-t),o=P(t),s=0;i(o)>y;s++){if(e%b){var l=a(n*g(e)/r);l<0&&(l+=b),e+=l+~~(e/b)*b}else e+=e;o=(r+n)/2,n=P(r*n),o=((r=o)-n)/2}return e/(h(2,s)*r)}function It(e,t){var r=(T-1)/(T+1),n=P(1-r*r),u=Ot(_,n*n),f=c(g(b/4+i(t)/2)),d=l(-1*f)/P(r),h=function(e,t){var r=e*e,n=t+1,i=1-r-t*t;return[.5*((e>=0?_:-_)-o(i,2*e)),-.25*c(i*i+4*r)+.5*c(n*n+r)]}(d*s(-1*e),d*m(-1*e)),p=function(e,t,r){var n=i(e),o=O(i(t));if(n){var s=1/m(n),l=1/(g(n)*g(n)),u=-(l+r*(o*o*s*s)-1+r),c=(-u+P(u*u-(r-1)*l*4))/2;return[Ot(a(1/P(c)),r)*v(e),Ot(a(P((c/l-1)/r)),1-r)*v(t)]}return[0,Ot(a(o),1-r)*v(t)]}(h[0],h[1],n*n);return[-p[1],(t>=0?1:-1)*(.5*u-p[0])]}function Dt(){return(0,n.Z)(Et(It)).scale(151.496)}Ct.invert=function(e,t){i(e)>1&&(e=2*v(e)-e),i(t)>1&&(t=2*v(t)-t);var r=v(e),n=v(t),a=-r*e,l=-n*t,u=l/a<1,c=function(e,t){for(var r=0,n=1,a=.5,o=50;;){var l=a*a,u=P(a),c=C(1/P(1+l)),f=1-l+a*(1+l)*c,d=(1-u)/f,h=P(d),p=d*(1+l),v=h*(1-l),m=P(p-e*e),g=t+v+a*m;if(i(n-r)0?r=a:n=a,a=.5*(r+n)}if(!o)return null;var y=C(u),_=s(y),w=1/_,k=2*u*_,T=(-f*_-(-3*a+c*(1+3*l))*k*(1-u))/(f*f),M=.5*T/h,A=(1-l)*M-2*a*h*k;return[b/4*(e*(-2*w*A+-w*k*m)+-w*(a*(1+l)*T+d*(1+3*l)*k)*C(e/P(p))),y]}(u?l:a,u?a:l),f=c[0],d=c[1],h=s(d);return u&&(f=-_-f),[r*(o(m(f)*h,-m(d))+b),n*C(s(f)*h)]},It.invert=function(e,t){var r=(T-1)/(T+1),n=P(1-r*r),i=function(e,t,r){var n,i,a;return e?(n=Pt(e,r),t?(a=(i=Pt(t,1-r))[1]*i[1]+r*n[0]*n[0]*i[0]*i[0],[[n[0]*i[2]/a,n[1]*n[2]*i[0]*i[1]/a],[n[1]*i[1]/a,-n[0]*n[2]*i[0]*i[2]/a],[n[2]*i[1]*i[2]/a,-r*n[0]*n[1]*i[0]/a]]):[[n[0],0],[n[1],0],[n[2],0]]):[[0,(i=Pt(t,1-r))[0]/i[1]],[1/i[1],0],[i[2]/i[1],0]]}(.5*Ot(_,n*n)-t,-e,n*n),s=function(e,t){var r=t[0]*t[0]+t[1]*t[1];return[(e[0]*t[0]+e[1]*t[1])/r,(e[1]*t[0]-e[0]*t[1])/r]}(i[0],i[1]);return[o(s[1],s[0])/-1,2*a(l(-.5*c(r*s[0]*s[0]+r*s[1]*s[1])))-_]};var Rt=r(7613);function zt(e){var t=m(e),r=s(e),n=Ft(e);function a(e,a){var o=n(e,a);e=o[0],a=o[1];var l=m(a),u=s(a),c=s(e),f=L(t*l+r*u*c),d=m(f),h=i(d)>y?f/d:1;return[h*r*m(e),(i(e)>_?h:-h)*(t*u-r*l*c)]}return n.invert=Ft(-e),a.invert=function(e,r){var i=P(e*e+r*r),a=-m(i),l=s(i),u=i*l,c=-r*a,f=i*t,d=P(u*u+c*c-f*f),h=o(u*f+c*d,c*f-u*d),p=(i>_?-1:1)*o(e*a,i*s(h)*l+r*m(h)*a);return n.invert(p,h)},a}function Ft(e){var t=m(e),r=s(e);return function(e,n){var i=s(n),a=s(e)*i,l=m(e)*i,u=m(n);return[o(l,a*r-u*t),C(u*r+a*t)]}}function Nt(){var e=0,t=(0,n.r)(zt),r=t(e),i=r.rotate,a=r.stream,o=(0,Rt.Z)();return r.parallel=function(n){if(!arguments.length)return e*S;var i=r.rotate();return t(e=n*E).rotate(i)},r.rotate=function(t){return arguments.length?(i.call(r,[t[0],t[1]-e*S]),o.center([-t[0],-t[1]]),r):((t=i.call(r))[1]+=e*S,t)},r.stream=function(e){return(e=a(e)).sphere=function(){e.polygonStart();var t,r=o.radius(89.99)().coordinates[0],n=r.length-1,i=-1;for(e.lineStart();++i=0;)e.point((t=r[i])[0],t[1]);e.lineEnd(),e.polygonEnd()},e},r.scale(79.4187).parallel(45).clipAngle(179.999)}var Bt=r(33064),jt=r(72736),Ut=C(1-1/3)*S,Vt=ze(0);function Ht(e){var t=Ut*E,r=Ce(b,t)[0]-Ce(-b,t)[0],n=Vt(0,t)[1],a=Ce(0,t)[1],o=M-a,s=A/e,l=4/A,c=n+o*o*4/A;function h(h,p){var v,m=i(p);if(m>t){var g=d(e-1,f(0,u((h+b)/s)));(v=Ce(h+=b*(e-1)/e-g*s,m))[0]=v[0]*A/r-A*(e-1)/(2*e)+g*A/e,v[1]=n+4*(v[1]-a)*o/A,p<0&&(v[1]=-v[1])}else v=Vt(h,p);return v[0]*=l,v[1]/=c,v}return h.invert=function(t,h){t/=l;var p=i(h*=c);if(p>n){var v=d(e-1,f(0,u((t+b)/s)));t=(t+b*(e-1)/e-v*s)*r/A;var m=Ce.invert(t,.25*(p-n)*A/o+a);return m[0]-=b*(e-1)/e-v*s,h<0&&(m[1]=-m[1]),m}return Vt.invert(t,h)},h}function qt(e,t){return[e,1&t?90-y:Ut]}function Wt(e,t){return[e,1&t?-90+y:-Ut]}function Gt(e){return[e[0]*(1-y),e[1]]}function Yt(){var e=4,t=(0,n.r)(Ht),r=t(e),i=r.stream;return r.lobes=function(r){return arguments.length?t(e=+r):e},r.stream=function(t){var n=r.rotate(),a=i(t),o=(r.rotate([0,0]),i(t));return r.rotate(n),a.sphere=function(){(0,jt.Z)(function(e){var t=[].concat((0,Bt.w6)(-180,180+e/2,e).map(qt),(0,Bt.w6)(180,-180-e/2,-e).map(Wt));return{type:"Polygon",coordinates:[180===e?t.map(Gt):t]}}(180/e),o)},a},r.scale(239.75)}function Zt(e){var t,r=1+e,n=C(m(1/r)),a=2*P(b/(t=b+4*n*r)),l=.5*a*(r+P(e*(2+e))),u=e*e,c=r*r;function f(f,d){var h,p,v=1-m(d);if(v&&v<2){var g,y=_-d,w=25;do{var k=m(y),T=s(y),M=n+o(k,r-T),A=1+c-2*r*T;y-=g=(y-u*n-r*k+A*M-.5*v*t)/(2*r*k*M)}while(i(g)>x&&--w>0);h=a*P(A),p=f*M/b}else h=a*(e+v),p=f*n/b;return[h*m(p),l-h*s(p)]}return f.invert=function(e,i){var s=e*e+(i-=l)*i,f=(1+c-s/(a*a))/(2*r),d=L(f),h=m(d),p=n+o(h,r-f);return[C(e/P(s))*b/p,C(1-2*(d-u*n-r*h+(1+c-2*r*f)*p)/t)]},f}function Xt(){var e=1,t=(0,n.r)(Zt),r=t(e);return r.ratio=function(r){return arguments.length?t(e=+r):e},r.scale(167.774).center([0,18.67])}var Kt=.7109889596207567,$t=.0528035274542;function Jt(e,t){return t>-Kt?((e=ae(e,t))[1]+=$t,e):de(e,t)}function Qt(){return(0,n.Z)(Jt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function er(e,t){return i(t)>Kt?((e=ae(e,t))[1]-=t>0?$t:-$t,e):de(e,t)}function tr(){return(0,n.Z)(er).scale(152.63)}function rr(e,t,r,n){var i=P(4*b/(2*r+(1+e-t/2)*m(2*r)+(e+t)/2*m(4*r)+t/2*m(6*r))),a=P(n*m(r)*P((1+e*s(2*r)+t*s(4*r))/(1+e+t))),o=r*u(1);function l(r){return P(1+e*s(2*r)+t*s(4*r))}function u(n){var i=n*r;return(2*i+(1+e-t/2)*m(2*i)+(e+t)/2*m(4*i)+t/2*m(6*i))/r}function c(e){return l(e)*m(e)}var f=function(e,t){var n=r*Q(u,o*m(t)/r,t/b);isNaN(n)&&(n=r*v(t));var c=i*l(n);return[c*a*e/b*s(n),c/a*m(n)]};return f.invert=function(e,t){var n=Q(c,t*a/i);return[e*b/(s(n)*i*a*l(n)),C(r*u(n/r)/o)]},0===r&&(i=P(n/b),(f=function(e,t){return[e*i,m(t)/i]}).invert=function(e,t){return[e/i,C(t*i)]}),f}function nr(){var e=1,t=0,r=45*E,i=2,a=(0,n.r)(rr),o=a(e,t,r,i);return o.a=function(n){return arguments.length?a(e=+n,t,r,i):e},o.b=function(n){return arguments.length?a(e,t=+n,r,i):t},o.psiMax=function(n){return arguments.length?a(e,t,r=+n*E,i):r*S},o.ratio=function(n){return arguments.length?a(e,t,r,i=+n):i},o.scale(180.739)}function ir(e,t,r,n,i,a,o,s,l,u,c){if(c.nanEncountered)return NaN;var f,d,h,p,v,m,g,y,x,b;if(d=e(t+.25*(f=r-t)),h=e(r-.25*f),isNaN(d))c.nanEncountered=!0;else{if(!isNaN(h))return b=((m=(p=f*(n+4*d+i)/12)+(v=f*(i+4*h+a)/12))-o)/15,u>l?(c.maxDepthCount++,m+b):Math.abs(b)e?r=n:t=n,n=t+r>>1}while(n>t);var i=u[n+1]-u[n];return i&&(i=(e-u[n+1])/i),(n+1+i)/s}var d=2*f(1)/b*o/r,p=function(e,t){var r=f(i(m(t))),a=n(r)*e;return r/=d,[a,t>=0?r:-r]};return p.invert=function(e,t){var r;return i(t*=d)<1&&(r=v(t)*C(a(i(t))*o)),[e/n(i(t)),r]},p}function sr(){var e=0,t=2.5,r=1.183136,i=(0,n.r)(or),a=i(e,t,r);return a.alpha=function(n){return arguments.length?i(e=+n,t,r):e},a.k=function(n){return arguments.length?i(e,t=+n,r):t},a.gamma=function(n){return arguments.length?i(e,t,r=+n):r},a.scale(152.63)}function lr(e,t){return i(e[0]-t[0])a[o][2][0];++o);var l=e(r-a[o][1][0],n);return l[0]+=e(a[o][1][0],i*n>i*a[o][0][1]?a[o][0][1]:n)[0],l}r?o.invert=r(o):e.invert&&(o.invert=function(r,n){for(var i=a[+(n<0)],s=t[+(n<0)],l=0,u=i.length;l=0;--s)r=(t=e[1][s])[0][0],n=t[0][1],i=t[1][1],a=t[2][0],o=t[2][1],l.push(ur([[a-y,o-y],[a-y,i+y],[r+y,i+y],[r+y,n-y]],30));return{type:"Polygon",coordinates:[(0,Bt.TS)(l)]}}(r),t=r.map((function(e){return e.map((function(e){return[[e[0][0]*E,e[0][1]*E],[e[1][0]*E,e[1][1]*E],[e[2][0]*E,e[2][1]*E]]}))})),a=t.map((function(t){return t.map((function(t){var r,n=e(t[0][0],t[0][1])[0],i=e(t[2][0],t[2][1])[0],a=e(t[1][0],t[0][1])[1],o=e(t[1][0],t[1][1])[1];return a>o&&(r=a,a=o,o=r),[[n,a],[i,o]]}))})),s):t.map((function(e){return e.map((function(e){return[[e[0][0]*S,e[0][1]*S],[e[1][0]*S,e[1][1]*S],[e[2][0]*S,e[2][1]*S]]}))}))},null!=t&&s.lobes(t),s}Jt.invert=function(e,t){return t>-Kt?ae.invert(e,t-$t):de.invert(e,t)},er.invert=function(e,t){return i(t)>Kt?ae.invert(e,t+(t>0?$t:-$t)):de.invert(e,t)};var fr=[[[[-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 dr(){return cr(ue,fr).scale(160.857)}var hr=[[[[-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 pr(){return cr(er,hr).scale(152.63)}var vr=[[[[-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 mr(){return cr(ae,vr).scale(169.529)}var gr=[[[[-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 yr(){return cr(ae,gr).scale(169.529).rotate([20,0])}var xr=[[[[-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 br(){return cr(Jt,xr,ee).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var _r=[[[[-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 wr(){return cr(de,_r).scale(152.63).rotate([-20,0])}function kr(e,t){return[3/A*e*P(b*b/3-t*t),t]}function Tr(){return(0,n.Z)(kr).scale(158.837)}function Mr(e){function t(t,r){if(i(i(r)-_)2)return null;var a=(t/=2)*t,s=(r/=2)*r,l=2*r/(1+a+s);return l=h((1+l)/(1-l),1/e),[o(2*t,1-a-s)/e,C((l-1)/(l+1))]},t}function Ar(){var e=.5,t=(0,n.r)(Mr),r=t(e);return r.spacing=function(r){return arguments.length?t(e=+r):e},r.scale(124.75)}kr.invert=function(e,t){return[A/3*e/P(b*b/3-t*t),t]};var Sr=b/T;function Er(e,t){return[e*(1+P(s(t)))/2,t/(s(t/2)*s(e/6))]}function Cr(){return(0,n.Z)(Er).scale(97.2672)}function Lr(e,t){var r=e*e,n=t*t;return[e*(.975534+n*(-.0143059*r-.119161+-.0547009*n)),t*(1.00384+r*(.0802894+-.02855*n+199025e-9*r)+n*(.0998909+-.0491032*n))]}function Pr(){return(0,n.Z)(Lr).scale(139.98)}function Or(e,t){return[m(e)/s(t),g(t)*s(e)]}function Ir(){return(0,n.Z)(Or).scale(144.049).clipAngle(89.999)}function Dr(e){var t=s(e),r=g(w+e/2);function n(n,a){var o=a-e,s=i(o)=0;)d=(f=e[c])[0]+l*(i=d)-u*h,h=f[1]+l*h+u*i;return[d=l*(i=d)-u*h,h=l*h+u*i]}return r.invert=function(r,n){var l=20,u=r,c=n;do{for(var f,d=t,h=e[d],p=h[0],v=h[1],g=0,x=0;--d>=0;)g=p+u*(f=g)-c*x,x=v+u*x+c*f,p=(h=e[d])[0]+u*(f=p)-c*v,v=h[1]+u*v+c*f;var b,_,w=(g=p+u*(f=g)-c*x)*g+(x=v+u*x+c*f)*x;u-=b=((p=u*(f=p)-c*v-r)*g+(v=u*v+c*f-n)*x)/w,c-=_=(v*g-p*x)/w}while(i(b)+i(_)>y*y&&--l>0);if(l){var k=P(u*u+c*c),T=2*a(.5*k),M=m(T);return[o(u*M,k*s(T)),k?C(c*M/k):0]}},r}Er.invert=function(e,t){var r=i(e),n=i(t),a=y,o=_;ny||i(x)>y)&&--a>0);return a&&[r,n]},Or.invert=function(e,t){var r=e*e,n=t*t+1,i=r+n,a=e?k*P((i-P(i*i-4*r))/r):1/P(n);return[C(e*a),v(t)*L(a)]},zr.invert=function(e,t){return[e,2.5*a(l(.8*t))-.625*b]};var Br=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],jr=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Ur=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Vr=[[.9245,0],[0,0],[.01943,0]],Hr=[[.721316,0],[0,0],[-.00881625,-.00617325]];function qr(){return Xr(Br,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Wr(){return Xr(jr,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gr(){return Xr(Ur,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Yr(){return Xr(Vr,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Zr(){return Xr(Hr,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Xr(e,t){var r=(0,n.Z)(Nr(e)).rotate(t).clipAngle(90),i=(0,_e.Z)(t),a=r.center;return delete r.rotate,r.center=function(e){return arguments.length?a(i(e)):i.invert(a())},r}var Kr=P(6),$r=P(7);function Jr(e,t){var r=C(7*m(t)/(3*Kr));return[Kr*e*(2*s(2*r/3)-1)/$r,9*m(r/3)/$r]}function Qr(){return(0,n.Z)(Jr).scale(164.859)}function en(e,t){for(var r,n=(1+k)*m(t),a=t,o=0;o<25&&(a-=r=(m(a/2)+m(a)-n)/(.5*s(a/2)+s(a)),!(i(r)x&&--l>0);return[e/(.84719-.13063*(n=s*s)+(o=n*(a=n*n))*o*(.05494*n-.04515-.02326*a+.00331*o)),s]},ln.invert=function(e,t){for(var r=t/2,n=0,a=1/0;n<10&&i(a)>y;++n){var o=s(t/2);t-=a=(t-g(t/2)-r)/(1-.5/(o*o))}return[2*e/(1+s(t)),t]};var cn=[[[[-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 fn(){return cr(K(1/0),cn).rotate([20,0]).scale(152.63)}function dn(e,t){var r=m(t),n=s(t),a=v(e);if(0===e||i(t)===_)return[0,t];if(0===t)return[e,0];if(i(e)===_)return[e*n,_*r];var o=b/(2*e)-2*e/b,l=2*t/b,u=(1-l*l)/(r-l),c=o*o,f=u*u,d=1+c/f,h=1+f/c,p=(o*r/u-o/2)/d,g=(f*r/c+u/2)/h,y=g*g-(f*r*r/c+u*r-1)/h;return[_*(p+P(p*p+n*n/d)*a),_*(g+P(y<0?0:y)*v(-t*o)*a)]}function hn(){return(0,n.Z)(dn).scale(127.267)}dn.invert=function(e,t){var r=(e/=_)*e,n=r+(t/=_)*t,i=b*b;return[e?(n-1+P((1-n)*(1-n)+4*r))/(2*e)*_:0,Q((function(e){return n*(b*m(e)-2*e)*b+4*e*e*(t-m(e))+2*b*e-i*t}),0)]};var pn=1.0148,vn=.23185,mn=-.14499,gn=.02406,yn=pn,xn=5*vn,bn=7*mn,_n=9*gn,wn=1.790857183;function kn(e,t){var r=t*t;return[e,t*(pn+r*r*(vn+r*(mn+gn*r)))]}function Tn(){return(0,n.Z)(kn).scale(139.319)}function Mn(e,t){if(i(t)wn?t=wn:t<-1.790857183&&(t=-1.790857183);var r,n=t;do{var a=n*n;n-=r=(n*(pn+a*a*(vn+a*(mn+gn*a)))-t)/(yn+a*a*(xn+a*(bn+_n*a)))}while(i(r)>y);return[e,n]},Mn.invert=function(e,t){if(i(t)y&&--o>0);return l=g(a),[(i(t)=0;)if(n=t[s],r[0]===n[0]&&r[1]===n[1]){if(a)return[a,r];a=r}}}(t.face,r.face),i=Cn(n.map(r.project),n.map(t.project));t.transform=r.transform?Ln(r.transform,i):i;for(var a=r.edges,o=0,s=a.length;o0?[-t[0],0]:[180-t[0],180])};var t=Bn.map((function(t){return{face:t,project:e(t)}}));return[-1,0,0,1,0,1,4,5].forEach((function(e,r){var n=t[e];n&&(n.children||(n.children=[])).push(t[r])})),In(t[0],(function(e,r){return t[e<-b/2?r<0?6:4:e<0?r<0?2:0:en^h>n&&r<(d-u)*(n-c)/(h-c)+u&&(i=!i)}return i}(e[0],r))return e.push(t),!0}))||e.push([t])})),ei=[],e.length?e.length>1?{type:"MultiPolygon",coordinates:e}:{type:"Polygon",coordinates:e[0]}:null}};function ii(e){var t=e(_,0)[0]-e(-_,0)[0];function r(r,n){var a=i(r)<_,o=e(a?r:r>0?r-b:r+b,n),s=(o[0]-o[1])*k,l=(o[0]+o[1])*k;if(a)return[s,l];var u=t*k,c=s>0^l>0?-1:1;return[c*s-v(l)*u,c*l-v(s)*u]}return e.invert&&(r.invert=function(r,n){var a=(r+n)*k,o=(n-r)*k,s=i(a)<.5*t&&i(o)<.5*t;if(!s){var l=t*k,u=a>0^o>0?-1:1,c=-u*r+(o>0?1:-1)*l,f=-u*n+(a>0?1:-1)*l;a=(-c-f)*k,o=(c-f)*k}var d=e.invert(a,o);return s||(d[0]+=a>0?b:-b),d}),(0,n.Z)(r).rotate([-90,-90,45]).clipAngle(179.999)}function ai(){return ii(Ct).scale(176.423)}function oi(){return ii(It).scale(111.48)}function si(e,t){if(!(0<=(t=+t)&&t<=20))throw new Error("invalid digits");function r(e){var r=e.length,n=2,i=new Array(r);for(i[0]=+e[0].toFixed(t),i[1]=+e[1].toFixed(t);n2||a[0]!=t[0]||a[1]!=t[1])&&(n.push(a),t=a)}return 1===n.length&&e.length>1&&n.push(r(e[e.length-1])),n}function a(e){return e.map(i)}function o(e){if(null==e)return e;var t;switch(e.type){case"GeometryCollection":t={type:"GeometryCollection",geometries:e.geometries.map(o)};break;case"Point":t={type:"Point",coordinates:r(e.coordinates)};break;case"MultiPoint":t={type:e.type,coordinates:n(e.coordinates)};break;case"LineString":t={type:e.type,coordinates:i(e.coordinates)};break;case"MultiLineString":case"Polygon":t={type:e.type,coordinates:a(e.coordinates)};break;case"MultiPolygon":t={type:"MultiPolygon",coordinates:e.coordinates.map(a)};break;default:return e}return null!=e.bbox&&(t.bbox=e.bbox),t}function s(e){var t={type:"Feature",properties:e.properties,geometry:o(e.geometry)};return null!=e.id&&(t.id=e.id),null!=e.bbox&&(t.bbox=e.bbox),t}if(null!=e)switch(e.type){case"Feature":return s(e);case"FeatureCollection":var l={type:"FeatureCollection",features:e.features.map(s)};return null!=e.bbox&&(l.bbox=e.bbox),l;default:return o(e)}return e}function li(e){var t=m(e);function r(r,n){var i=t?g(r*t/2)/t:r/2;if(!n)return[2*i,-e];var o=2*a(i*m(n)),l=1/g(n);return[m(o)*l,n+(1-s(o))*l-e]}return r.invert=function(r,n){if(i(n+=e)y&&--c>0);var p=r*(f=g(u)),v=g(i(n)0?_:-_)*(f+o*(p-l)/2+o*o*(p-2*f+l)/2)]}function di(){return(0,n.Z)(fi).scale(152.63)}function hi(e,t){var r=function(e){function t(t,r){var n=s(r),i=(e-1)/(e-n*s(t));return[i*n*m(t),i*m(r)]}return t.invert=function(t,r){var n=t*t+r*r,i=P(n),a=(e-P(1-n*(e+1)/(e-1)))/((e-1)/i+i/(e-1));return[o(t*a,i*P(1-a*a)),i?C(r*a/i):0]},t}(e);if(!t)return r;var n=s(t),i=m(t);function a(t,a){var o=r(t,a),s=o[1],l=s*i/(e-1)+n;return[o[0]*n/l,s/l]}return a.invert=function(t,a){var o=(e-1)/(e-1-a*i);return r.invert(o*t,o*a*n)},a}function pi(){var e=2,t=0,r=(0,n.r)(hi),i=r(e,t);return i.distance=function(n){return arguments.length?r(e=+n,t):e},i.tilt=function(n){return arguments.length?r(e,t=n*E):t*S},i.scale(432.147).clipAngle(L(1/e)*S-1e-6)}ci.forEach((function(e){e[1]*=1.0144})),fi.invert=function(e,t){var r=t/_,n=90*r,a=d(18,i(n/5)),o=f(0,u(a));do{var s=ci[o][1],l=ci[o+1][1],c=ci[d(19,o+2)][1],h=c-s,p=c-2*l+s,v=2*(i(r)-l)/h,m=p/h,g=v*(1-m*v*(1-2*m*v));if(g>=0||1===o){n=(t>=0?5:-5)*(g+a);var y,b=50;do{g=(a=d(18,i(n)/5))-(o=u(a)),s=ci[o][1],l=ci[o+1][1],c=ci[d(19,o+2)][1],n-=(y=(t>=0?_:-_)*(l+g*(c-s)/2+g*g*(c-2*l+s)/2)-t)*S}while(i(y)>x&&--b>0);break}}while(--o>=0);var w=ci[o][0],k=ci[o+1][0],T=ci[d(19,o+2)][0];return[e/(k+g*(T-w)/2+g*g*(T-2*k+w)/2),n*E]};var vi=1e-4,mi=1e4,gi=-180,yi=gi+vi,xi=180,bi=xi-vi,_i=-90,wi=_i+vi,ki=90,Ti=ki-vi;function Mi(e){return e.length>0}function Ai(e){return e===_i||e===ki?[0,e]:[gi,(t=e,Math.floor(t*mi)/mi)];var t}function Si(e){var t=e[0],r=e[1],n=!1;return t<=yi?(t=gi,n=!0):t>=bi&&(t=xi,n=!0),r<=wi?(r=_i,n=!0):r>=Ti&&(r=ki,n=!0),n?[t,r]:e}function Ei(e){return e.map(Si)}function Ci(e,t,r){for(var n=0,i=e.length;n=bi||c<=wi||c>=Ti){a[o]=Si(l);for(var f=o+1;fyi&&hwi&&p=s)break;r.push({index:-1,polygon:t,ring:a=a.slice(f-1)}),a[0]=Ai(a[0][1]),o=-1,s=a.length}}}}function Li(e){var t,r,n,i,a,o,s=e.length,l={},u={};for(t=0;t0?b-l:l)*S],c=(0,n.Z)(e(s)).rotate(u),f=(0,_e.Z)(u),d=c.center;return delete c.rotate,c.center=function(e){return arguments.length?d(f(e)):f.invert(d())},c.clipAngle(90)}function Fi(e){var t=s(e);function r(e,r){var n=(0,Fn.M)(e,r);return n[0]*=t,n}return r.invert=function(e,r){return Fn.M.invert(e/t,r)},r}function Ni(){return Bi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Bi(e,t){return zi(Fi,e,t)}function ji(e){if(!(e*=2))return G.N;var t=-e/2,r=-t,n=e*e,i=g(r),a=.5/m(r);function l(i,a){var o=L(s(a)*s(i-t)),l=L(s(a)*s(i-r));return[((o*=o)-(l*=l))/(2*e),(a<0?-1:1)*P(4*n*l-(n-o+l)*(n-o+l))/(2*e)]}return l.invert=function(e,n){var l,u,c=n*n,f=s(P(c+(l=e+t)*l)),d=s(P(c+(l=e+r)*l));return[o(u=f-d,l=(f+d)*i),(n<0?-1:1)*L(P(l*l+u*u)*a)]},l}function Ui(){return Vi([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Vi(e,t){return zi(ji,e,t)}function Hi(e,t){if(i(t)y&&--l>0);return[v(e)*(P(a*a+4)+a)*b/4,_*s]};var ea=4*b+3*P(3),ta=2*P(2*b*P(3)/ea),ra=ie(ta*P(3)/b,ta,ea/6);function na(){return(0,n.Z)(ra).scale(176.84)}function ia(e,t){return[e*P(1-3*t*t/(b*b)),t]}function aa(){return(0,n.Z)(ia).scale(152.63)}function oa(e,t){var r=s(t),n=s(e)*r,i=1-n,a=s(e=o(m(e)*r,-m(t))),l=m(e);return[l*(r=P(1-n*n))-a*i,-a*r-l*i]}function sa(){return(0,n.Z)(oa).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)}function la(e,t){var r=z(e,t);return[(r[0]+e/_)/2,(r[1]+t)/2]}function ua(){return(0,n.Z)(la).scale(158.837)}ia.invert=function(e,t){return[e/P(1-3*t*t/(b*b)),t]},oa.invert=function(e,t){var r=(e*e+t*t)/-2,n=P(-r*(2+r)),i=t*r+e*n,a=e*r-t*n,s=P(a*a+i*i);return[o(n*i,s*(1+r)),s?-C(n*a/s):0]},la.invert=function(e,t){var r=e,n=t,a=25;do{var o,l=s(n),u=m(n),c=m(2*n),f=u*u,d=l*l,h=m(r),p=s(r/2),v=m(r/2),g=v*v,x=1-d*p*p,b=x?L(l*p)*P(o=1/x):o=0,w=.5*(2*b*l*v+r/_)-e,k=.5*(b*u+n)-t,T=.5*o*(d*g+b*l*p*f)+.5/_,M=o*(h*c/4-b*u*v),A=.125*o*(c*v-b*u*d*h),S=.5*o*(f*p+b*g*l)+.5,E=M*A-S*T,C=(k*M-w*S)/E,O=(w*A-k*T)/E;r-=C,n-=O}while((i(C)>y||i(O)>y)&&--a>0);return[r,n]}},33940:function(e,t,r){"use strict";function n(){return new i}function i(){this.reset()}r.d(t,{Z:function(){return n}}),i.prototype={constructor:i,reset:function(){this.s=this.t=0},add:function(e){o(a,e,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(e,t,r){var n=e.s=t+r,i=n-t,a=n-i;e.t=t-a+(r-i)}},97860:function(e,t,r){"use strict";r.d(t,{L9:function(){return d},ZP:function(){return x},gL:function(){return p}});var n,i,a,o,s,l=r(33940),u=r(39695),c=r(73182),f=r(72736),d=(0,l.Z)(),h=(0,l.Z)(),p={point:c.Z,lineStart:c.Z,lineEnd:c.Z,polygonStart:function(){d.reset(),p.lineStart=v,p.lineEnd=m},polygonEnd:function(){var e=+d;h.add(e<0?u.BZ+e:e),this.lineStart=this.lineEnd=this.point=c.Z},sphere:function(){h.add(u.BZ)}};function v(){p.point=g}function m(){y(n,i)}function g(e,t){p.point=y,n=e,i=t,e*=u.uR,t*=u.uR,a=e,o=(0,u.mC)(t=t/2+u.pu),s=(0,u.O$)(t)}function y(e,t){e*=u.uR,t=(t*=u.uR)/2+u.pu;var r=e-a,n=r>=0?1:-1,i=n*r,l=(0,u.mC)(t),c=(0,u.O$)(t),f=s*c,h=o*l+f*(0,u.mC)(i),p=f*n*(0,u.O$)(i);d.add((0,u.fv)(p,h)),a=e,o=l,s=c}function x(e){return h.reset(),(0,f.Z)(e,p),2*h}},77338:function(e,t,r){"use strict";r.d(t,{Z:function(){return L}});var n,i,a,o,s,l,u,c,f,d,h=r(33940),p=r(97860),v=r(7620),m=r(39695),g=r(72736),y=(0,h.Z)(),x={point:b,lineStart:w,lineEnd:k,polygonStart:function(){x.point=T,x.lineStart=M,x.lineEnd=A,y.reset(),p.gL.polygonStart()},polygonEnd:function(){p.gL.polygonEnd(),x.point=b,x.lineStart=w,x.lineEnd=k,p.L9<0?(n=-(a=180),i=-(o=90)):y>m.Ho?o=90:y<-m.Ho&&(i=-90),d[0]=n,d[1]=a},sphere:function(){n=-(a=180),i=-(o=90)}};function b(e,t){f.push(d=[n=e,a=e]),to&&(o=t)}function _(e,t){var r=(0,v.Og)([e*m.uR,t*m.uR]);if(c){var l=(0,v.T5)(c,r),u=[l[1],-l[0],0],h=(0,v.T5)(u,l);(0,v.iJ)(h),h=(0,v.Y1)(h);var p,g=e-s,y=g>0?1:-1,x=h[0]*m.RW*y,b=(0,m.Wn)(g)>180;b^(y*so&&(o=p):b^(y*s<(x=(x+360)%360-180)&&xo&&(o=t)),b?eS(n,a)&&(a=e):S(e,a)>S(n,a)&&(n=e):a>=n?(ea&&(a=e)):e>s?S(n,e)>S(n,a)&&(a=e):S(e,a)>S(n,a)&&(n=e)}else f.push(d=[n=e,a=e]);to&&(o=t),c=r,s=e}function w(){x.point=_}function k(){d[0]=n,d[1]=a,x.point=b,c=null}function T(e,t){if(c){var r=e-s;y.add((0,m.Wn)(r)>180?r+(r>0?360:-360):r)}else l=e,u=t;p.gL.point(e,t),_(e,t)}function M(){p.gL.lineStart()}function A(){T(l,u),p.gL.lineEnd(),(0,m.Wn)(y)>m.Ho&&(n=-(a=180)),d[0]=n,d[1]=a,c=null}function S(e,t){return(t-=e)<0?t+360:t}function E(e,t){return e[0]-t[0]}function C(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tS(s[0],s[1])&&(s[1]=l[1]),S(l[0],s[1])>S(s[0],s[1])&&(s[0]=l[0])):u.push(s=l);for(c=-1/0,t=0,s=u[r=u.length-1];t<=r;s=l,++t)l=u[t],(h=S(s[1],l[0]))>c&&(c=h,n=l[0],a=s[1])}return f=d=null,n===1/0||i===1/0?[[NaN,NaN],[NaN,NaN]]:[[n,i],[a,o]]}},7620:function(e,t,r){"use strict";r.d(t,{Og:function(){return a},T:function(){return u},T5:function(){return s},Y1:function(){return i},iJ:function(){return c},j9:function(){return o},s0:function(){return l}});var n=r(39695);function i(e){return[(0,n.fv)(e[1],e[0]),(0,n.ZR)(e[2])]}function a(e){var t=e[0],r=e[1],i=(0,n.mC)(r);return[i*(0,n.mC)(t),i*(0,n.O$)(t),(0,n.O$)(r)]}function o(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function s(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function l(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function u(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function c(e){var t=(0,n._b)(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}},66624:function(e,t,r){"use strict";r.d(t,{Z:function(){return I}});var n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x=r(39695),b=r(73182),_=r(72736),w={sphere:b.Z,point:k,lineStart:M,lineEnd:E,polygonStart:function(){w.lineStart=C,w.lineEnd=L},polygonEnd:function(){w.lineStart=M,w.lineEnd=E}};function k(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t);T(r*(0,x.mC)(e),r*(0,x.O$)(e),(0,x.O$)(t))}function T(e,t,r){++n,a+=(e-a)/n,o+=(t-o)/n,s+=(r-s)/n}function M(){w.point=A}function A(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t);m=r*(0,x.mC)(e),g=r*(0,x.O$)(e),y=(0,x.O$)(t),w.point=S,T(m,g,y)}function S(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t),n=r*(0,x.mC)(e),a=r*(0,x.O$)(e),o=(0,x.O$)(t),s=(0,x.fv)((0,x._b)((s=g*o-y*a)*s+(s=y*n-m*o)*s+(s=m*a-g*n)*s),m*n+g*a+y*o);i+=s,l+=s*(m+(m=n)),u+=s*(g+(g=a)),c+=s*(y+(y=o)),T(m,g,y)}function E(){w.point=k}function C(){w.point=P}function L(){O(p,v),w.point=k}function P(e,t){p=e,v=t,e*=x.uR,t*=x.uR,w.point=O;var r=(0,x.mC)(t);m=r*(0,x.mC)(e),g=r*(0,x.O$)(e),y=(0,x.O$)(t),T(m,g,y)}function O(e,t){e*=x.uR,t*=x.uR;var r=(0,x.mC)(t),n=r*(0,x.mC)(e),a=r*(0,x.O$)(e),o=(0,x.O$)(t),s=g*o-y*a,p=y*n-m*o,v=m*a-g*n,b=(0,x._b)(s*s+p*p+v*v),_=(0,x.ZR)(b),w=b&&-_/b;f+=w*s,d+=w*p,h+=w*v,i+=_,l+=_*(m+(m=n)),u+=_*(g+(g=a)),c+=_*(y+(y=o)),T(m,g,y)}function I(e){n=i=a=o=s=l=u=c=f=d=h=0,(0,_.Z)(e,w);var t=f,r=d,p=h,v=t*t+r*r+p*p;return v0?os)&&(o+=i*a.BZ));for(var d,h=o;i>0?h>s:h0?i.pi:-i.pi,u=(0,i.Wn)(o-r);(0,i.Wn)(u-i.pi)0?i.ou:-i.ou),e.point(a,n),e.lineEnd(),e.lineStart(),e.point(l,n),e.point(o,n),t=0):a!==l&&u>=i.pi&&((0,i.Wn)(r-a)i.Ho?(0,i.z4)(((0,i.O$)(t)*(o=(0,i.mC)(n))*(0,i.O$)(r)-(0,i.O$)(n)*(a=(0,i.mC)(t))*(0,i.O$)(e))/(a*o*s)):(t+n)/2}(r,n,o,s),e.point(a,n),e.lineEnd(),e.lineStart(),e.point(l,n),t=0),e.point(r=o,n=s),a=l},lineEnd:function(){e.lineEnd(),r=n=NaN},clean:function(){return 2-t}}}),(function(e,t,r,n){var a;if(null==e)a=r*i.ou,n.point(-i.pi,a),n.point(0,a),n.point(i.pi,a),n.point(i.pi,0),n.point(i.pi,-a),n.point(0,-a),n.point(-i.pi,-a),n.point(-i.pi,0),n.point(-i.pi,a);else if((0,i.Wn)(e[0]-t[0])>i.Ho){var o=e[0]1&&t.push(t.pop().concat(t.shift()))},result:function(){var r=t;return t=[],e=null,r}}}},1457:function(e,t,r){"use strict";r.d(t,{Z:function(){return l}});var n=r(7620),i=r(7613),a=r(39695),o=r(67108),s=r(97023);function l(e){var t=(0,a.mC)(e),r=6*a.uR,l=t>0,u=(0,a.Wn)(t)>a.Ho;function c(e,r){return(0,a.mC)(e)*(0,a.mC)(r)>t}function f(e,r,i){var o=(0,n.Og)(e),s=(0,n.Og)(r),l=[1,0,0],u=(0,n.T5)(o,s),c=(0,n.j9)(u,u),f=u[0],d=c-f*f;if(!d)return!i&&e;var h=t*c/d,p=-t*f/d,v=(0,n.T5)(l,u),m=(0,n.T)(l,h),g=(0,n.T)(u,p);(0,n.s0)(m,g);var y=v,x=(0,n.j9)(m,y),b=(0,n.j9)(y,y),_=x*x-b*((0,n.j9)(m,m)-1);if(!(_<0)){var w=(0,a._b)(_),k=(0,n.T)(y,(-x-w)/b);if((0,n.s0)(k,m),k=(0,n.Y1)(k),!i)return k;var T,M=e[0],A=r[0],S=e[1],E=r[1];A0^k[1]<((0,a.Wn)(k[0]-M)a.pi^(M<=k[0]&&k[0]<=A)){var P=(0,n.T)(y,(-x+w)/b);return(0,n.s0)(P,m),[k,(0,n.Y1)(P)]}}}function d(t,r){var n=l?e:a.pi-e,i=0;return t<-n?i|=1:t>n&&(i|=2),r<-n?i|=4:r>n&&(i|=8),i}return(0,s.Z)(c,(function(e){var t,r,n,i,s;return{lineStart:function(){i=n=!1,s=1},point:function(h,p){var v,m=[h,p],g=c(h,p),y=l?g?0:d(h,p):g?d(h+(h<0?a.pi:-a.pi),p):0;if(!t&&(i=n=g)&&e.lineStart(),g!==n&&(!(v=f(t,m))||(0,o.Z)(t,v)||(0,o.Z)(m,v))&&(m[2]=1),g!==n)s=0,g?(e.lineStart(),v=f(m,t),e.point(v[0],v[1])):(v=f(t,m),e.point(v[0],v[1],2),e.lineEnd()),t=v;else if(u&&t&&l^g){var x;y&r||!(x=f(m,t,!0))||(s=0,l?(e.lineStart(),e.point(x[0][0],x[0][1]),e.point(x[1][0],x[1][1]),e.lineEnd()):(e.point(x[1][0],x[1][1]),e.lineEnd(),e.lineStart(),e.point(x[0][0],x[0][1],3)))}!g||t&&(0,o.Z)(t,m)||e.point(m[0],m[1]),t=m,n=g,r=y},lineEnd:function(){n&&e.lineEnd(),t=null},clean:function(){return s|(i&&n)<<1}}}),(function(t,n,a,o){(0,i.m)(o,e,r,a,t,n)}),l?[0,-e]:[-a.pi,e-a.pi])}},97023:function(e,t,r){"use strict";r.d(t,{Z:function(){return l}});var n=r(85272),i=r(46225),a=r(39695),o=r(23071),s=r(33064);function l(e,t,r,a){return function(l){var f,d,h,p=t(l),v=(0,n.Z)(),m=t(v),g=!1,y={point:x,lineStart:_,lineEnd:w,polygonStart:function(){y.point=k,y.lineStart=T,y.lineEnd=M,d=[],f=[]},polygonEnd:function(){y.point=x,y.lineStart=_,y.lineEnd=w,d=(0,s.TS)(d);var e=(0,o.Z)(f,a);d.length?(g||(l.polygonStart(),g=!0),(0,i.Z)(d,c,e,r,l)):e&&(g||(l.polygonStart(),g=!0),l.lineStart(),r(null,null,1,l),l.lineEnd()),g&&(l.polygonEnd(),g=!1),d=f=null},sphere:function(){l.polygonStart(),l.lineStart(),r(null,null,1,l),l.lineEnd(),l.polygonEnd()}};function x(t,r){e(t,r)&&l.point(t,r)}function b(e,t){p.point(e,t)}function _(){y.point=b,p.lineStart()}function w(){y.point=x,p.lineEnd()}function k(e,t){h.push([e,t]),m.point(e,t)}function T(){m.lineStart(),h=[]}function M(){k(h[0][0],h[0][1]),m.lineEnd();var e,t,r,n,i=m.clean(),a=v.result(),o=a.length;if(h.pop(),f.push(h),h=null,o)if(1&i){if((t=(r=a[0]).length-1)>0){for(g||(l.polygonStart(),g=!0),l.lineStart(),e=0;e1&&2&i&&a.push(a.pop().concat(a.shift())),d.push(a.filter(u))}return y}}function u(e){return e.length>1}function c(e,t){return((e=e.x)[0]<0?e[1]-a.ou-a.Ho:a.ou-e[1])-((t=t.x)[0]<0?t[1]-a.ou-a.Ho:a.ou-t[1])}},87605:function(e,t,r){"use strict";r.d(t,{Z:function(){return u}});var n=r(39695),i=r(85272),a=r(46225),o=r(33064),s=1e9,l=-s;function u(e,t,r,u){function c(n,i){return e<=n&&n<=r&&t<=i&&i<=u}function f(n,i,a,o){var s=0,l=0;if(null==n||(s=d(n,a))!==(l=d(i,a))||p(n,i)<0^a>0)do{o.point(0===s||3===s?e:r,s>1?u:t)}while((s=(s+a+4)%4)!==l);else o.point(i[0],i[1])}function d(i,a){return(0,n.Wn)(i[0]-e)0?0:3:(0,n.Wn)(i[0]-r)0?2:1:(0,n.Wn)(i[1]-t)0?1:0:a>0?3:2}function h(e,t){return p(e.x,t.x)}function p(e,t){var r=d(e,1),n=d(t,1);return r!==n?r-n:0===r?t[1]-e[1]:1===r?e[0]-t[0]:2===r?e[1]-t[1]:t[0]-e[0]}return function(n){var d,p,v,m,g,y,x,b,_,w,k,T=n,M=(0,i.Z)(),A={point:S,lineStart:function(){A.point=E,p&&p.push(v=[]),w=!0,_=!1,x=b=NaN},lineEnd:function(){d&&(E(m,g),y&&_&&M.rejoin(),d.push(M.result())),A.point=S,_&&T.lineEnd()},polygonStart:function(){T=M,d=[],p=[],k=!0},polygonEnd:function(){var t=function(){for(var t=0,r=0,n=p.length;ru&&(f-i)*(u-a)>(d-a)*(e-i)&&++t:d<=u&&(f-i)*(u-a)<(d-a)*(e-i)&&--t;return t}(),r=k&&t,i=(d=(0,o.TS)(d)).length;(r||i)&&(n.polygonStart(),r&&(n.lineStart(),f(null,null,1,n),n.lineEnd()),i&&(0,a.Z)(d,h,t,f,n),n.polygonEnd()),T=n,d=p=v=null}};function S(e,t){c(e,t)&&T.point(e,t)}function E(n,i){var a=c(n,i);if(p&&v.push([n,i]),w)m=n,g=i,y=a,w=!1,a&&(T.lineStart(),T.point(n,i));else if(a&&_)T.point(n,i);else{var o=[x=Math.max(l,Math.min(s,x)),b=Math.max(l,Math.min(s,b))],f=[n=Math.max(l,Math.min(s,n)),i=Math.max(l,Math.min(s,i))];!function(e,t,r,n,i,a){var o,s=e[0],l=e[1],u=0,c=1,f=t[0]-s,d=t[1]-l;if(o=r-s,f||!(o>0)){if(o/=f,f<0){if(o0){if(o>c)return;o>u&&(u=o)}if(o=i-s,f||!(o<0)){if(o/=f,f<0){if(o>c)return;o>u&&(u=o)}else if(f>0){if(o0)){if(o/=d,d<0){if(o0){if(o>c)return;o>u&&(u=o)}if(o=a-l,d||!(o<0)){if(o/=d,d<0){if(o>c)return;o>u&&(u=o)}else if(d>0){if(o0&&(e[0]=s+u*f,e[1]=l+u*d),c<1&&(t[0]=s+c*f,t[1]=l+c*d),!0}}}}}(o,f,e,t,r,u)?a&&(T.lineStart(),T.point(n,i),k=!1):(_||(T.lineStart(),T.point(o[0],o[1])),T.point(f[0],f[1]),a||T.lineEnd(),k=!1)}x=n,b=i,_=a}return A}}},46225:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(67108),i=r(39695);function a(e,t,r,n){this.x=e,this.z=t,this.o=r,this.e=n,this.v=!1,this.n=this.p=null}function o(e,t,r,o,l){var u,c,f=[],d=[];if(e.forEach((function(e){if(!((t=e.length-1)<=0)){var t,r,o=e[0],s=e[t];if((0,n.Z)(o,s)){if(!o[2]&&!s[2]){for(l.lineStart(),u=0;u=0;--u)l.point((p=h[u])[0],p[1]);else o(m.x,m.p.x,-1,l);m=m.p}h=(m=m.o).z,g=!g}while(!m.v);l.lineEnd()}}}function s(e){if(t=e.length){for(var t,r,n=0,i=e[0];++n0&&(i=S(e[a],e[a-1]))>0&&r<=i&&n<=i&&(r+n-i)*(1-Math.pow((r-n)/i,2))m.Ho})).map(l)).concat((0,F.w6)((0,m.mD)(a/h)*h,i,h).filter((function(e){return(0,m.Wn)(e%v)>m.Ho})).map(u))}return y.lines=function(){return x().map((function(e){return{type:"LineString",coordinates:e}}))},y.outline=function(){return{type:"Polygon",coordinates:[c(n).concat(f(o).slice(1),c(r).reverse().slice(1),f(s).reverse().slice(1))]}},y.extent=function(e){return arguments.length?y.extentMajor(e).extentMinor(e):y.extentMinor()},y.extentMajor=function(e){return arguments.length?(n=+e[0][0],r=+e[1][0],s=+e[0][1],o=+e[1][1],n>r&&(e=n,n=r,r=e),s>o&&(e=s,s=o,o=e),y.precision(g)):[[n,s],[r,o]]},y.extentMinor=function(r){return arguments.length?(t=+r[0][0],e=+r[1][0],a=+r[0][1],i=+r[1][1],t>e&&(r=t,t=e,e=r),a>i&&(r=a,a=i,i=r),y.precision(g)):[[t,a],[e,i]]},y.step=function(e){return arguments.length?y.stepMajor(e).stepMinor(e):y.stepMinor()},y.stepMajor=function(e){return arguments.length?(p=+e[0],v=+e[1],y):[p,v]},y.stepMinor=function(e){return arguments.length?(d=+e[0],h=+e[1],y):[d,h]},y.precision=function(d){return arguments.length?(g=+d,l=N(a,i,90),u=B(t,e,g),c=N(s,o,90),f=B(n,r,g),y):g},y.extentMajor([[-180,-90+m.Ho],[180,90-m.Ho]]).extentMinor([[-180,-80-m.Ho],[180,80+m.Ho]])}function U(){return j()()}var V,H,q,W,G=r(83074),Y=r(8593),Z=(0,v.Z)(),X=(0,v.Z)(),K={point:g.Z,lineStart:g.Z,lineEnd:g.Z,polygonStart:function(){K.lineStart=$,K.lineEnd=ee},polygonEnd:function(){K.lineStart=K.lineEnd=K.point=g.Z,Z.add((0,m.Wn)(X)),X.reset()},result:function(){var e=Z/2;return Z.reset(),e}};function $(){K.point=J}function J(e,t){K.point=Q,V=q=e,H=W=t}function Q(e,t){X.add(W*e-q*t),q=e,W=t}function ee(){Q(V,H)}var te,re,ne,ie,ae=K,oe=r(3559),se=0,le=0,ue=0,ce=0,fe=0,de=0,he=0,pe=0,ve=0,me={point:ge,lineStart:ye,lineEnd:_e,polygonStart:function(){me.lineStart=we,me.lineEnd=ke},polygonEnd:function(){me.point=ge,me.lineStart=ye,me.lineEnd=_e},result:function(){var e=ve?[he/ve,pe/ve]:de?[ce/de,fe/de]:ue?[se/ue,le/ue]:[NaN,NaN];return se=le=ue=ce=fe=de=he=pe=ve=0,e}};function ge(e,t){se+=e,le+=t,++ue}function ye(){me.point=xe}function xe(e,t){me.point=be,ge(ne=e,ie=t)}function be(e,t){var r=e-ne,n=t-ie,i=(0,m._b)(r*r+n*n);ce+=i*(ne+e)/2,fe+=i*(ie+t)/2,de+=i,ge(ne=e,ie=t)}function _e(){me.point=ge}function we(){me.point=Te}function ke(){Me(te,re)}function Te(e,t){me.point=Me,ge(te=ne=e,re=ie=t)}function Me(e,t){var r=e-ne,n=t-ie,i=(0,m._b)(r*r+n*n);ce+=i*(ne+e)/2,fe+=i*(ie+t)/2,de+=i,he+=(i=ie*e-ne*t)*(ne+e),pe+=i*(ie+t),ve+=3*i,ge(ne=e,ie=t)}var Ae=me;function Se(e){this._context=e}Se.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,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(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,m.BZ)}},result:g.Z};var Ee,Ce,Le,Pe,Oe,Ie=(0,v.Z)(),De={point:g.Z,lineStart:function(){De.point=Re},lineEnd:function(){Ee&&ze(Ce,Le),De.point=g.Z},polygonStart:function(){Ee=!0},polygonEnd:function(){Ee=null},result:function(){var e=+Ie;return Ie.reset(),e}};function Re(e,t){De.point=ze,Ce=Pe=e,Le=Oe=t}function ze(e,t){Pe-=e,Oe-=t,Ie.add((0,m._b)(Pe*Pe+Oe*Oe)),Pe=e,Oe=t}var Fe=De;function Ne(){this._string=[]}function Be(e){return"m0,"+e+"a"+e+","+e+" 0 1,1 0,"+-2*e+"a"+e+","+e+" 0 1,1 0,"+2*e+"z"}function je(e,t){var r,n,i=4.5;function a(e){return e&&("function"===typeof i&&n.pointRadius(+i.apply(this,arguments)),(0,y.Z)(e,r(n))),n.result()}return a.area=function(e){return(0,y.Z)(e,r(ae)),ae.result()},a.measure=function(e){return(0,y.Z)(e,r(Fe)),Fe.result()},a.bounds=function(e){return(0,y.Z)(e,r(oe.Z)),oe.Z.result()},a.centroid=function(e){return(0,y.Z)(e,r(Ae)),Ae.result()},a.projection=function(t){return arguments.length?(r=null==t?(e=null,Y.Z):(e=t).stream,a):e},a.context=function(e){return arguments.length?(n=null==e?(t=null,new Ne):new Se(t=e),"function"!==typeof i&&n.pointRadius(i),a):t},a.pointRadius=function(e){return arguments.length?(i="function"===typeof e?e:(n.pointRadius(+e),+e),a):i},a.projection(e).context(t)}Ne.prototype={_radius:4.5,_circle:Be(4.5),pointRadius:function(e){return(e=+e)!==this._radius&&(this._radius=e,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(e,t){switch(this._point){case 0:this._string.push("M",e,",",t),this._point=1;break;case 1:this._string.push("L",e,",",t);break;default:null==this._circle&&(this._circle=Be(this._radius)),this._string.push("M",e,",",t,this._circle)}},result:function(){if(this._string.length){var e=this._string.join("");return this._string=[],e}return null}};var Ue=r(15002);function Ve(e){var t=0,r=m.pi/3,n=(0,Ue.r)(e),i=n(t,r);return i.parallels=function(e){return arguments.length?n(t=e[0]*m.uR,r=e[1]*m.uR):[t*m.RW,r*m.RW]},i}function He(e,t){var r=(0,m.O$)(e),n=(r+(0,m.O$)(t))/2;if((0,m.Wn)(n)=.12&&i<.234&&n>=-.425&&n<-.214?s:i>=.166&&i<.234&&n>=-.214&&n<-.115?l:o).invert(e)},c.stream=function(r){return e&&t===r?e:e=function(e){var t=e.length;return{point:function(r,n){for(var i=-1;++i0?t<-m.ou+m.Ho&&(t=-m.ou+m.Ho):t>m.ou-m.Ho&&(t=m.ou-m.Ho);var r=i/(0,m.sQ)(et(t),n);return[r*(0,m.O$)(n*e),i-r*(0,m.mC)(n*e)]}return a.invert=function(e,t){var r=i-t,a=(0,m.Xx)(n)*(0,m._b)(e*e+r*r),o=(0,m.fv)(e,(0,m.Wn)(r))*(0,m.Xx)(r);return r*n<0&&(o-=m.pi*(0,m.Xx)(e)*(0,m.Xx)(r)),[o/n,2*(0,m.z4)((0,m.sQ)(i/a,1/n))-m.ou]},a}function rt(){return Ve(tt).scale(109.5).parallels([30,30])}$e.invert=function(e,t){return[e,2*(0,m.z4)((0,m.Qq)(t))-m.ou]};var nt=r(97492);function it(e,t){var r=(0,m.mC)(e),n=e===t?(0,m.O$)(e):(r-(0,m.mC)(t))/(t-e),i=r/n+e;if((0,m.Wn)(n)2?e[2]+90:90]):[(e=r())[0],e[1],e[2]-90]},r([0,0,90]).scale(159.155)}xt.invert=(0,yt.O)((function(e){return 2*(0,m.z4)(e)})),_t.invert=function(e,t){return[-t,2*(0,m.z4)((0,m.Qq)(e))-m.ou]}},83074:function(e,t,r){"use strict";r.d(t,{Z:function(){return i}});var n=r(39695);function i(e,t){var r=e[0]*n.uR,i=e[1]*n.uR,a=t[0]*n.uR,o=t[1]*n.uR,s=(0,n.mC)(i),l=(0,n.O$)(i),u=(0,n.mC)(o),c=(0,n.O$)(o),f=s*(0,n.mC)(r),d=s*(0,n.O$)(r),h=u*(0,n.mC)(a),p=u*(0,n.O$)(a),v=2*(0,n.ZR)((0,n._b)((0,n.Jy)(o-i)+s*u*(0,n.Jy)(a-r))),m=(0,n.O$)(v),g=v?function(e){var t=(0,n.O$)(e*=v)/m,r=(0,n.O$)(v-e)/m,i=r*f+t*h,a=r*d+t*p,o=r*l+t*c;return[(0,n.fv)(a,i)*n.RW,(0,n.fv)(o,(0,n._b)(i*i+a*a))*n.RW]}:function(){return[r*n.RW,i*n.RW]};return g.distance=v,g}},39695:function(e,t,r){"use strict";r.d(t,{BZ:function(){return l},Ho:function(){return n},Jy:function(){return M},Kh:function(){return k},O$:function(){return x},OR:function(){return w},Qq:function(){return m},RW:function(){return u},Wn:function(){return f},Xx:function(){return b},ZR:function(){return T},_b:function(){return _},aW:function(){return i},cM:function(){return g},fv:function(){return h},mC:function(){return p},mD:function(){return v},ou:function(){return o},pi:function(){return a},pu:function(){return s},sQ:function(){return y},uR:function(){return c},z4:function(){return d}});var n=1e-6,i=1e-12,a=Math.PI,o=a/2,s=a/4,l=2*a,u=180/a,c=a/180,f=Math.abs,d=Math.atan,h=Math.atan2,p=Math.cos,v=Math.ceil,m=Math.exp,g=(Math.floor,Math.log),y=Math.pow,x=Math.sin,b=Math.sign||function(e){return e>0?1:e<0?-1:0},_=Math.sqrt,w=Math.tan;function k(e){return e>1?0:e<-1?a:Math.acos(e)}function T(e){return e>1?o:e<-1?-o:Math.asin(e)}function M(e){return(e=x(e/2))*e}},73182:function(e,t,r){"use strict";function n(){}r.d(t,{Z:function(){return n}})},3559:function(e,t,r){"use strict";var n=r(73182),i=1/0,a=i,o=-i,s=o,l={point:function(e,t){eo&&(o=e),ts&&(s=t)},lineStart:n.Z,lineEnd:n.Z,polygonStart:n.Z,polygonEnd:n.Z,result:function(){var e=[[i,a],[o,s]];return o=s=-(a=i=1/0),e}};t.Z=l},67108:function(e,t,r){"use strict";r.d(t,{Z:function(){return i}});var n=r(39695);function i(e,t){return(0,n.Wn)(e[0]-t[0])=0?1:-1,C=E*S,L=C>a.pi,P=x*M;if(o.add((0,a.fv)(P*E*(0,a.O$)(C),b*A+P*(0,a.mC)(C))),c+=L?S+E*a.BZ:S,L^g>=r^k>=r){var O=(0,i.T5)((0,i.Og)(m),(0,i.Og)(w));(0,i.iJ)(O);var I=(0,i.T5)(u,O);(0,i.iJ)(I);var D=(L^S>=0?-1:1)*(0,a.ZR)(I[2]);(n>D||n===D&&(O[0]||O[1]))&&(f+=L^S>=0?1:-1)}}return(c<-a.Ho||c4*t&&g--){var w=o+h,k=s+v,T=u+m,M=(0,l._b)(w*w+k*k+T*T),A=(0,l.ZR)(T/=M),S=(0,l.Wn)((0,l.Wn)(T)-1)t||(0,l.Wn)((x*P+b*O)/_-.5)>.3||o*h+s*v+u*m2?e[2]%360*l.uR:0,V()):[C*l.RW,L*l.RW,P*l.RW]},j.angle=function(e){return arguments.length?(O=e%360*l.uR,V()):O*l.RW},j.reflectX=function(e){return arguments.length?(I=e?-1:1,V()):I<0},j.reflectY=function(e){return arguments.length?(D=e?-1:1,V()):D<0},j.precision=function(e){return arguments.length?(x=v(b,B=e*e),H()):(0,l._b)(B)},j.fitExtent=function(e,t){return(0,f.qg)(j,e,t)},j.fitSize=function(e,t){return(0,f.mF)(j,e,t)},j.fitWidth=function(e,t){return(0,f.V6)(j,e,t)},j.fitHeight=function(e,t){return(0,f.rf)(j,e,t)},function(){return t=e.apply(this,arguments),j.invert=t.invert&&U,V()}}},26867:function(e,t,r){"use strict";r.d(t,{K:function(){return a},Z:function(){return o}});var n=r(15002),i=r(39695);function a(e,t){var r=t*t,n=r*r;return[e*(.8707-.131979*r+n*(n*(.003971*r-.001529*n)-.013791)),t*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))]}function o(){return(0,n.Z)(a).scale(175.295)}a.invert=function(e,t){var r,n=t,a=25;do{var o=n*n,s=o*o;n-=r=(n*(1.007226+o*(.015085+s*(.028874*o-.044475-.005916*s)))-t)/(1.007226+o*(.045255+s*(.259866*o-.311325-.005916*11*s)))}while((0,i.Wn)(r)>i.Ho&&--a>0);return[e/(.8707+(o=n*n)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),n]}},57962:function(e,t,r){"use strict";r.d(t,{I:function(){return o},Z:function(){return s}});var n=r(39695),i=r(25382),a=r(15002);function o(e,t){return[(0,n.mC)(t)*(0,n.O$)(e),(0,n.O$)(t)]}function s(){return(0,a.Z)(o).scale(249.5).clipAngle(90+n.Ho)}o.invert=(0,i.O)(n.ZR)},49386:function(e,t,r){"use strict";r.d(t,{I:function(){return o},Z:function(){return c}});var n=r(96059),i=r(39695);function a(e,t){return[(0,i.Wn)(e)>i.pi?e+Math.round(-e/i.BZ)*i.BZ:e,t]}function o(e,t,r){return(e%=i.BZ)?t||r?(0,n.Z)(l(e),u(t,r)):l(e):t||r?u(t,r):a}function s(e){return function(t,r){return[(t+=e)>i.pi?t-i.BZ:t<-i.pi?t+i.BZ:t,r]}}function l(e){var t=s(e);return t.invert=s(-e),t}function u(e,t){var r=(0,i.mC)(e),n=(0,i.O$)(e),a=(0,i.mC)(t),o=(0,i.O$)(t);function s(e,t){var s=(0,i.mC)(t),l=(0,i.mC)(e)*s,u=(0,i.O$)(e)*s,c=(0,i.O$)(t),f=c*r+l*n;return[(0,i.fv)(u*a-f*o,l*r-c*n),(0,i.ZR)(f*a+u*o)]}return s.invert=function(e,t){var s=(0,i.mC)(t),l=(0,i.mC)(e)*s,u=(0,i.O$)(e)*s,c=(0,i.O$)(t),f=c*a-u*o;return[(0,i.fv)(u*a+c*o,l*r+f*n),(0,i.ZR)(f*r-l*n)]},s}function c(e){function t(t){return(t=e(t[0]*i.uR,t[1]*i.uR))[0]*=i.RW,t[1]*=i.RW,t}return e=o(e[0]*i.uR,e[1]*i.uR,e.length>2?e[2]*i.uR:0),t.invert=function(t){return(t=e.invert(t[0]*i.uR,t[1]*i.uR))[0]*=i.RW,t[1]*=i.RW,t},t}a.invert=a},72736:function(e,t,r){"use strict";function n(e,t){e&&a.hasOwnProperty(e.type)&&a[e.type](e,t)}r.d(t,{Z:function(){return l}});var i={Feature:function(e,t){n(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,i=-1,a=r.length;++i=0;)t+=r[n].value;else t=1;e.value=t}function l(e,t){var r,n,i,a,o,s=new d(e),l=+e.value&&(s.value=e.value),c=[s];for(null==t&&(t=u);r=c.pop();)if(l&&(r.value=+r.data.value),(i=t(r.data))&&(o=i.length))for(r.children=new Array(o),a=o-1;a>=0;--a)c.push(n=r.children[a]=new d(i[a])),n.parent=r,n.depth=r.depth+1;return s.eachBefore(f)}function u(e){return e.children}function c(e){e.data=e.data.data}function f(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function d(e){this.data=e,this.depth=this.height=0,this.parent=null}r.r(t),r.d(t,{cluster:function(){return o},hierarchy:function(){return l},pack:function(){return O},packEnclose:function(){return p},packSiblings:function(){return S},partition:function(){return N},stratify:function(){return q},tree:function(){return $},treemap:function(){return re},treemapBinary:function(){return ne},treemapDice:function(){return F},treemapResquarify:function(){return ae},treemapSlice:function(){return J},treemapSliceDice:function(){return ie},treemapSquarify:function(){return te}}),d.prototype=l.prototype={constructor:d,count:function(){return this.eachAfter(s)},each:function(e){var t,r,n,i,a=this,o=[a];do{for(t=o.reverse(),o=[];a=t.pop();)if(e(a),r=a.children)for(n=0,i=r.length;n=0;--r)i.push(t[r]);return this},sum:function(e){return this.eachAfter((function(t){for(var r=+e(t.data)||0,n=t.children,i=n&&n.length;--i>=0;)r+=n[i].value;t.value=r}))},sort:function(e){return this.eachBefore((function(t){t.children&&t.children.sort(e)}))},path:function(e){for(var t=this,r=function(e,t){if(e===t)return e;var r=e.ancestors(),n=t.ancestors(),i=null;for(e=r.pop(),t=n.pop();e===t;)i=e,e=r.pop(),t=n.pop();return i}(t,e),n=[t];t!==r;)t=t.parent,n.push(t);for(var i=n.length;e!==r;)n.splice(i,0,e),e=e.parent;return n},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){var e=[];return this.each((function(t){e.push(t)})),e},leaves:function(){var e=[];return this.eachBefore((function(t){t.children||e.push(t)})),e},links:function(){var e=this,t=[];return e.each((function(r){r!==e&&t.push({source:r.parent,target:r})})),t},copy:function(){return l(this).eachBefore(c)}};var h=Array.prototype.slice;function p(e){for(var t,r,n=0,i=(e=function(e){for(var t,r,n=e.length;n;)r=Math.random()*n--|0,t=e[n],e[n]=e[r],e[r]=t;return e}(h.call(e))).length,a=[];n0&&r*r>n*n+i*i}function y(e,t){for(var r=0;r(o*=o)?(n=(u+o-i)/(2*u),a=Math.sqrt(Math.max(0,o/u-n*n)),r.x=e.x-n*s-a*l,r.y=e.y-n*l+a*s):(n=(u+i-o)/(2*u),a=Math.sqrt(Math.max(0,i/u-n*n)),r.x=t.x+n*s-a*l,r.y=t.y+n*l+a*s)):(r.x=t.x+r.r,r.y=t.y)}function k(e,t){var r=e.r+t.r-1e-6,n=t.x-e.x,i=t.y-e.y;return r>0&&r*r>n*n+i*i}function T(e){var t=e._,r=e.next._,n=t.r+r.r,i=(t.x*r.r+r.x*t.r)/n,a=(t.y*r.r+r.y*t.r)/n;return i*i+a*a}function M(e){this._=e,this.next=null,this.previous=null}function A(e){if(!(i=e.length))return 0;var t,r,n,i,a,o,s,l,u,c,f;if((t=e[0]).x=0,t.y=0,!(i>1))return t.r;if(r=e[1],t.x=-r.r,r.x=t.r,r.y=0,!(i>2))return t.r+r.r;w(r,t,n=e[2]),t=new M(t),r=new M(r),n=new M(n),t.next=n.previous=r,r.next=t.previous=n,n.next=r.previous=t;e:for(s=3;s0)throw new Error("cycle");return a}return r.id=function(t){return arguments.length?(e=E(t),r):e},r.parentId=function(e){return arguments.length?(t=E(e),r):t},r}function W(e,t){return e.parent===t.parent?1:2}function G(e){var t=e.children;return t?t[0]:e.t}function Y(e){var t=e.children;return t?t[t.length-1]:e.t}function Z(e,t,r){var n=r/(t.i-e.i);t.c-=n,t.s+=r,e.c+=n,t.z+=r,t.m+=r}function X(e,t,r){return e.a.parent===t.parent?e.a:r}function K(e,t){this._=e,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=t}function $(){var e=W,t=1,r=1,n=null;function i(i){var l=function(e){for(var t,r,n,i,a,o=new K(e,0),s=[o];t=s.pop();)if(n=t._.children)for(t.children=new Array(a=n.length),i=a-1;i>=0;--i)s.push(r=t.children[i]=new K(n[i],i)),r.parent=t;return(o.parent=new K(null,0)).children=[o],o}(i);if(l.eachAfter(a),l.parent.m=-l.z,l.eachBefore(o),n)i.eachBefore(s);else{var u=i,c=i,f=i;i.eachBefore((function(e){e.xc.x&&(c=e),e.depth>f.depth&&(f=e)}));var d=u===c?1:e(u,c)/2,h=d-u.x,p=t/(c.x+d+h),v=r/(f.depth||1);i.eachBefore((function(e){e.x=(e.x+h)*p,e.y=e.depth*v}))}return i}function a(t){var r=t.children,n=t.parent.children,i=t.i?n[t.i-1]:null;if(r){!function(e){for(var t,r=0,n=0,i=e.children,a=i.length;--a>=0;)(t=i[a]).z+=r,t.m+=r,r+=t.s+(n+=t.c)}(t);var a=(r[0].z+r[r.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,r,n){if(r){for(var i,a=t,o=t,s=r,l=a.parent.children[0],u=a.m,c=o.m,f=s.m,d=l.m;s=Y(s),a=G(a),s&&a;)l=G(l),(o=Y(o)).a=t,(i=s.z+f-a.z-u+e(s._,a._))>0&&(Z(X(s,t,n),t,i),u+=i,c+=i),f+=s.m,u+=a.m,d+=l.m,c+=o.m;s&&!Y(o)&&(o.t=s,o.m+=f-c),a&&!G(l)&&(l.t=a,l.m+=u-d,n=t)}return n}(t,i,t.parent.A||n[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function s(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(n=!1,t=+e[0],r=+e[1],i):n?null:[t,r]},i.nodeSize=function(e){return arguments.length?(n=!0,t=+e[0],r=+e[1],i):n?[t,r]:null},i}function J(e,t,r,n,i){for(var a,o=e.children,s=-1,l=o.length,u=e.value&&(i-r)/e.value;++sd&&(d=s),m=c*c*v,(h=Math.max(d/m,m/f))>p){c-=s;break}p=h}g.push(o={value:c,dice:l1?t:1)},r}(Q);function re(){var e=te,t=!1,r=1,n=1,i=[0],a=C,o=C,s=C,l=C,u=C;function c(e){return e.x0=e.y0=0,e.x1=r,e.y1=n,e.eachBefore(f),i=[0],t&&e.eachBefore(z),e}function f(t){var r=i[t.depth],n=t.x0+r,c=t.y0+r,f=t.x1-r,d=t.y1-r;f=r-1){var c=s[t];return c.x0=i,c.y0=a,c.x1=o,void(c.y1=l)}for(var f=u[t],d=n/2+f,h=t+1,p=r-1;h>>1;u[v]l-a){var y=(i*g+o*m)/n;e(t,h,m,i,a,y,l),e(h,r,g,y,a,o,l)}else{var x=(a*g+l*m)/n;e(t,h,m,i,a,o,x),e(h,r,g,i,x,o,l)}}(0,l,e.value,t,r,n,i)}function ie(e,t,r,n,i){(1&e.depth?J:F)(e,t,r,n,i)}var ae=function e(t){function r(e,r,n,i,a){if((o=e._squarify)&&o.ratio===t)for(var o,s,l,u,c,f=-1,d=o.length,h=e.value;++f1?t:1)},r}(Q)},45879:function(e,t,r){"use strict";r.d(t,{h5:function(){return y}});var n=Math.PI,i=2*n,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(e,t){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(e,t){this._+="L"+(this._x1=+e)+","+(this._y1=+t)},quadraticCurveTo:function(e,t,r,n){this._+="Q"+ +e+","+ +t+","+(this._x1=+r)+","+(this._y1=+n)},bezierCurveTo:function(e,t,r,n,i,a){this._+="C"+ +e+","+ +t+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(e,t,r,i,o){e=+e,t=+t,r=+r,i=+i,o=+o;var s=this._x1,l=this._y1,u=r-e,c=i-t,f=s-e,d=l-t,h=f*f+d*d;if(o<0)throw new Error("negative radius: "+o);if(null===this._x1)this._+="M"+(this._x1=e)+","+(this._y1=t);else if(h>a)if(Math.abs(d*u-c*f)>a&&o){var p=r-s,v=i-l,m=u*u+c*c,g=p*p+v*v,y=Math.sqrt(m),x=Math.sqrt(h),b=o*Math.tan((n-Math.acos((m+h-g)/(2*y*x)))/2),_=b/x,w=b/y;Math.abs(_-1)>a&&(this._+="L"+(e+_*f)+","+(t+_*d)),this._+="A"+o+","+o+",0,0,"+ +(d*p>f*v)+","+(this._x1=e+w*u)+","+(this._y1=t+w*c)}else this._+="L"+(this._x1=e)+","+(this._y1=t)},arc:function(e,t,r,s,l,u){e=+e,t=+t,u=!!u;var c=(r=+r)*Math.cos(s),f=r*Math.sin(s),d=e+c,h=t+f,p=1^u,v=u?s-l:l-s;if(r<0)throw new Error("negative radius: "+r);null===this._x1?this._+="M"+d+","+h:(Math.abs(this._x1-d)>a||Math.abs(this._y1-h)>a)&&(this._+="L"+d+","+h),r&&(v<0&&(v=v%i+i),v>o?this._+="A"+r+","+r+",0,1,"+p+","+(e-c)+","+(t-f)+"A"+r+","+r+",0,1,"+p+","+(this._x1=d)+","+(this._y1=h):v>a&&(this._+="A"+r+","+r+",0,"+ +(v>=n)+","+p+","+(this._x1=e+r*Math.cos(l))+","+(this._y1=t+r*Math.sin(l))))},rect:function(e,t,r,n){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},toString:function(){return this._}};var u=l,c=Array.prototype.slice;function f(e){return function(){return e}}function d(e){return e[0]}function h(e){return e[1]}function p(e){return e.source}function v(e){return e.target}function m(e){var t=p,r=v,n=d,i=h,a=null;function o(){var o,s=c.call(arguments),l=t.apply(this,s),f=r.apply(this,s);if(a||(a=o=u()),e(a,+n.apply(this,(s[0]=l,s)),+i.apply(this,s),+n.apply(this,(s[0]=f,s)),+i.apply(this,s)),o)return a=null,o+""||null}return o.source=function(e){return arguments.length?(t=e,o):t},o.target=function(e){return arguments.length?(r=e,o):r},o.x=function(e){return arguments.length?(n="function"===typeof e?e:f(+e),o):n},o.y=function(e){return arguments.length?(i="function"===typeof e?e:f(+e),o):i},o.context=function(e){return arguments.length?(a=null==e?null:e,o):a},o}function g(e,t,r,n,i){e.moveTo(t,r),e.bezierCurveTo(t=(t+n)/2,r,t,i,n,i)}function y(){return m(g)}},84096:function(e,t,r){"use strict";r.d(t,{i$:function(){return p},Dq:function(){return d},g0:function(){return v}});var n=r(58176),i=r(48480),a=r(59879),o=r(82301),s=r(34823),l=r(79791);function u(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function c(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function f(e,t,r){return{y:e,m:t,d:r,H:0,M:0,S:0,L:0}}function d(e){var t=e.dateTime,r=e.date,s=e.time,l=e.periods,d=e.days,h=e.shortDays,p=e.months,v=e.shortMonths,g=w(l),y=k(l),x=w(d),b=k(d),_=w(h),Se=k(h),Ee=w(p),Ce=k(p),Le=w(v),Pe=k(v),Oe={a:function(e){return h[e.getDay()]},A:function(e){return d[e.getDay()]},b:function(e){return v[e.getMonth()]},B:function(e){return p[e.getMonth()]},c:null,d:q,e:q,f:X,H:W,I:G,j:Y,L:Z,m:K,M:$,p:function(e){return l[+(e.getHours()>=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:Me,s:Ae,S:J,u:Q,U:ee,V:te,w:re,W:ne,x:null,X:null,y:ie,Y:ae,Z:oe,"%":Te},Ie={a:function(e){return h[e.getUTCDay()]},A:function(e){return d[e.getUTCDay()]},b:function(e){return v[e.getUTCMonth()]},B:function(e){return p[e.getUTCMonth()]},c:null,d:se,e:se,f:de,H:le,I:ue,j:ce,L:fe,m:he,M:pe,p:function(e){return l[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:Me,s:Ae,S:ve,u:me,U:ge,V:ye,w:xe,W:be,x:null,X:null,y:_e,Y:we,Z:ke,"%":Te},De={a:function(e,t,r){var n=_.exec(t.slice(r));return n?(e.w=Se[n[0].toLowerCase()],r+n[0].length):-1},A:function(e,t,r){var n=x.exec(t.slice(r));return n?(e.w=b[n[0].toLowerCase()],r+n[0].length):-1},b:function(e,t,r){var n=Le.exec(t.slice(r));return n?(e.m=Pe[n[0].toLowerCase()],r+n[0].length):-1},B:function(e,t,r){var n=Ee.exec(t.slice(r));return n?(e.m=Ce[n[0].toLowerCase()],r+n[0].length):-1},c:function(e,r,n){return Fe(e,t,r,n)},d:D,e:D,f:j,H:z,I:z,j:R,L:B,m:I,M:F,p:function(e,t,r){var n=g.exec(t.slice(r));return n?(e.p=y[n[0].toLowerCase()],r+n[0].length):-1},q:O,Q:V,s:H,S:N,u:M,U:A,V:S,w:T,W:E,x:function(e,t,n){return Fe(e,r,t,n)},X:function(e,t,r){return Fe(e,s,t,r)},y:L,Y:C,Z:P,"%":U};function Re(e,t){return function(r){var n,i,a,o=[],s=-1,l=0,u=e.length;for(r instanceof Date||(r=new Date(+r));++s53)return null;"w"in d||(d.w=1),"Z"in d?(l=(s=c(f(d.y,0,1))).getUTCDay(),s=l>4||0===l?n.l6.ceil(s):(0,n.l6)(s),s=i.Z.offset(s,7*(d.V-1)),d.y=s.getUTCFullYear(),d.m=s.getUTCMonth(),d.d=s.getUTCDate()+(d.w+6)%7):(l=(s=u(f(d.y,0,1))).getDay(),s=l>4||0===l?a.wA.ceil(s):(0,a.wA)(s),s=o.Z.offset(s,7*(d.V-1)),d.y=s.getFullYear(),d.m=s.getMonth(),d.d=s.getDate()+(d.w+6)%7)}else("W"in d||"U"in d)&&("w"in d||(d.w="u"in d?d.u%7:"W"in d?1:0),l="Z"in d?c(f(d.y,0,1)).getUTCDay():u(f(d.y,0,1)).getDay(),d.m=0,d.d="W"in d?(d.w+6)%7+7*d.W-(l+5)%7:d.w+7*d.U-(l+6)%7);return"Z"in d?(d.H+=d.Z/100|0,d.M+=d.Z%100,c(d)):u(d)}}function Fe(e,t,r,n){for(var i,a,o=0,s=t.length,l=r.length;o=l)return-1;if(37===(i=t.charCodeAt(o++))){if(i=t.charAt(o++),!(a=De[i in m?t.charAt(o++):i])||(n=a(e,r,n))<0)return-1}else if(i!=r.charCodeAt(n++))return-1}return n}return Oe.x=Re(r,Oe),Oe.X=Re(s,Oe),Oe.c=Re(t,Oe),Ie.x=Re(r,Ie),Ie.X=Re(s,Ie),Ie.c=Re(t,Ie),{format:function(e){var t=Re(e+="",Oe);return t.toString=function(){return e},t},parse:function(e){var t=ze(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=Re(e+="",Ie);return t.toString=function(){return e},t},utcParse:function(e){var t=ze(e+="",!0);return t.toString=function(){return e},t}}}var h,p,v,m={"-":"",_:" ",0:"0"},g=/^\s*\d+/,y=/^%/,x=/[\\^$*+?|[\]().{}]/g;function b(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a68?1900:2e3),r+n[0].length):-1}function P(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function O(e,t,r){var n=g.exec(t.slice(r,r+1));return n?(e.q=3*n[0]-3,r+n[0].length):-1}function I(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function D(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function R(e,t,r){var n=g.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function z(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function F(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function N(e,t,r){var n=g.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function B(e,t,r){var n=g.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function j(e,t,r){var n=g.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function U(e,t,r){var n=y.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function V(e,t,r){var n=g.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function H(e,t,r){var n=g.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function q(e,t){return b(e.getDate(),t,2)}function W(e,t){return b(e.getHours(),t,2)}function G(e,t){return b(e.getHours()%12||12,t,2)}function Y(e,t){return b(1+o.Z.count((0,s.Z)(e),e),t,3)}function Z(e,t){return b(e.getMilliseconds(),t,3)}function X(e,t){return Z(e,t)+"000"}function K(e,t){return b(e.getMonth()+1,t,2)}function $(e,t){return b(e.getMinutes(),t,2)}function J(e,t){return b(e.getSeconds(),t,2)}function Q(e){var t=e.getDay();return 0===t?7:t}function ee(e,t){return b(a.OM.count((0,s.Z)(e)-1,e),t,2)}function te(e,t){var r=e.getDay();return e=r>=4||0===r?(0,a.bL)(e):a.bL.ceil(e),b(a.bL.count((0,s.Z)(e),e)+(4===(0,s.Z)(e).getDay()),t,2)}function re(e){return e.getDay()}function ne(e,t){return b(a.wA.count((0,s.Z)(e)-1,e),t,2)}function ie(e,t){return b(e.getFullYear()%100,t,2)}function ae(e,t){return b(e.getFullYear()%1e4,t,4)}function oe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+b(t/60|0,"0",2)+b(t%60,"0",2)}function se(e,t){return b(e.getUTCDate(),t,2)}function le(e,t){return b(e.getUTCHours(),t,2)}function ue(e,t){return b(e.getUTCHours()%12||12,t,2)}function ce(e,t){return b(1+i.Z.count((0,l.Z)(e),e),t,3)}function fe(e,t){return b(e.getUTCMilliseconds(),t,3)}function de(e,t){return fe(e,t)+"000"}function he(e,t){return b(e.getUTCMonth()+1,t,2)}function pe(e,t){return b(e.getUTCMinutes(),t,2)}function ve(e,t){return b(e.getUTCSeconds(),t,2)}function me(e){var t=e.getUTCDay();return 0===t?7:t}function ge(e,t){return b(n.Ox.count((0,l.Z)(e)-1,e),t,2)}function ye(e,t){var r=e.getUTCDay();return e=r>=4||0===r?(0,n.hB)(e):n.hB.ceil(e),b(n.hB.count((0,l.Z)(e),e)+(4===(0,l.Z)(e).getUTCDay()),t,2)}function xe(e){return e.getUTCDay()}function be(e,t){return b(n.l6.count((0,l.Z)(e)-1,e),t,2)}function _e(e,t){return b(e.getUTCFullYear()%100,t,2)}function we(e,t){return b(e.getUTCFullYear()%1e4,t,4)}function ke(){return"+0000"}function Te(){return"%"}function Me(e){return+e}function Ae(e){return Math.floor(+e/1e3)}h=d({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=h.format,h.parse,v=h.utcFormat,h.utcParse},82301:function(e,t,r){"use strict";r.d(t,{a:function(){return o}});var n=r(30052),i=r(54263),a=(0,n.Z)((function(e){e.setHours(0,0,0,0)}),(function(e,t){e.setDate(e.getDate()+t)}),(function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*i.yB)/i.UD}),(function(e){return e.getDate()-1}));t.Z=a;var o=a.range},54263:function(e,t,r){"use strict";r.d(t,{UD:function(){return o},Y2:function(){return a},Ym:function(){return n},iM:function(){return s},yB:function(){return i}});var n=1e3,i=6e4,a=36e5,o=864e5,s=6048e5},81041:function(e,t,r){"use strict";r.r(t),r.d(t,{timeDay:function(){return g.Z},timeDays:function(){return g.a},timeFriday:function(){return y.mC},timeFridays:function(){return y.b$},timeHour:function(){return v},timeHours:function(){return m},timeInterval:function(){return n.Z},timeMillisecond:function(){return a},timeMilliseconds:function(){return o},timeMinute:function(){return d},timeMinutes:function(){return h},timeMonday:function(){return y.wA},timeMondays:function(){return y.bJ},timeMonth:function(){return b},timeMonths:function(){return _},timeSaturday:function(){return y.EY},timeSaturdays:function(){return y.Ff},timeSecond:function(){return u},timeSeconds:function(){return c},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 w.Z},timeYears:function(){return w.g},utcDay:function(){return C.Z},utcDays:function(){return C.y},utcFriday:function(){return L.QQ},utcFridays:function(){return L.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 L.l6},utcMondays:function(){return L.$3},utcMonth:function(){return O},utcMonths:function(){return I},utcSaturday:function(){return L.g4},utcSaturdays:function(){return L.Q_},utcSecond:function(){return u},utcSeconds:function(){return c},utcSunday:function(){return L.Ox},utcSundays:function(){return L.SU},utcThursday:function(){return L.hB},utcThursdays:function(){return L.xj},utcTuesday:function(){return L.J1},utcTuesdays:function(){return L.DK},utcWednesday:function(){return L.b3},utcWednesdays:function(){return L.uy},utcWeek:function(){return L.Ox},utcWeeks:function(){return L.SU},utcYear:function(){return D.Z},utcYears:function(){return D.D}});var n=r(30052),i=(0,n.Z)((function(){}),(function(e,t){e.setTime(+e+t)}),(function(e,t){return t-e}));i.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?(0,n.Z)((function(t){t.setTime(Math.floor(t/e)*e)}),(function(t,r){t.setTime(+t+r*e)}),(function(t,r){return(r-t)/e})):i:null};var a=i,o=i.range,s=r(54263),l=(0,n.Z)((function(e){e.setTime(e-e.getMilliseconds())}),(function(e,t){e.setTime(+e+t*s.Ym)}),(function(e,t){return(t-e)/s.Ym}),(function(e){return e.getUTCSeconds()})),u=l,c=l.range,f=(0,n.Z)((function(e){e.setTime(e-e.getMilliseconds()-e.getSeconds()*s.Ym)}),(function(e,t){e.setTime(+e+t*s.yB)}),(function(e,t){return(t-e)/s.yB}),(function(e){return e.getMinutes()})),d=f,h=f.range,p=(0,n.Z)((function(e){e.setTime(e-e.getMilliseconds()-e.getSeconds()*s.Ym-e.getMinutes()*s.yB)}),(function(e,t){e.setTime(+e+t*s.Y2)}),(function(e,t){return(t-e)/s.Y2}),(function(e){return e.getHours()})),v=p,m=p.range,g=r(82301),y=r(59879),x=(0,n.Z)((function(e){e.setDate(1),e.setHours(0,0,0,0)}),(function(e,t){e.setMonth(e.getMonth()+t)}),(function(e,t){return t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())}),(function(e){return e.getMonth()})),b=x,_=x.range,w=r(34823),k=(0,n.Z)((function(e){e.setUTCSeconds(0,0)}),(function(e,t){e.setTime(+e+t*s.yB)}),(function(e,t){return(t-e)/s.yB}),(function(e){return e.getUTCMinutes()})),T=k,M=k.range,A=(0,n.Z)((function(e){e.setUTCMinutes(0,0,0)}),(function(e,t){e.setTime(+e+t*s.Y2)}),(function(e,t){return(t-e)/s.Y2}),(function(e){return e.getUTCHours()})),S=A,E=A.range,C=r(48480),L=r(58176),P=(0,n.Z)((function(e){e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCMonth(e.getUTCMonth()+t)}),(function(e,t){return t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())}),(function(e){return e.getUTCMonth()})),O=P,I=P.range,D=r(79791)},30052:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var n=new Date,i=new Date;function a(e,t,r,o){function s(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return s.floor=function(t){return e(t=new Date(+t)),t},s.ceil=function(r){return e(r=new Date(r-1)),t(r,1),e(r),r},s.round=function(e){var t=s(e),r=s.ceil(e);return e-t0))return o;do{o.push(a=new Date(+r)),t(r,i),e(r)}while(a=t)for(;e(t),!r(t);)t.setTime(t-1)}),(function(e,n){if(e>=e)if(n<0)for(;++n<=0;)for(;t(e,-1),!r(e););else for(;--n>=0;)for(;t(e,1),!r(e););}))},r&&(s.count=function(t,a){return n.setTime(+t),i.setTime(+a),e(n),e(i),Math.floor(r(n,i))},s.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?s.filter(o?function(t){return o(t)%e===0}:function(t){return s.count(0,t)%e===0}):s:null}),s}},48480:function(e,t,r){"use strict";r.d(t,{y:function(){return o}});var n=r(30052),i=r(54263),a=(0,n.Z)((function(e){e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCDate(e.getUTCDate()+t)}),(function(e,t){return(t-e)/i.UD}),(function(e){return e.getUTCDate()-1}));t.Z=a;var o=a.range},58176:function(e,t,r){"use strict";r.d(t,{$3:function(){return p},DK:function(){return v},J1:function(){return l},Ox:function(){return o},QQ:function(){return f},Q_:function(){return x},SU:function(){return h},b3:function(){return u},fz:function(){return y},g4:function(){return d},hB:function(){return c},l6:function(){return s},uy:function(){return m},xj:function(){return g}});var n=r(30052),i=r(54263);function a(e){return(0,n.Z)((function(t){t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCDate(e.getUTCDate()+7*t)}),(function(e,t){return(t-e)/i.iM}))}var o=a(0),s=a(1),l=a(2),u=a(3),c=a(4),f=a(5),d=a(6),h=o.range,p=s.range,v=l.range,m=u.range,g=c.range,y=f.range,x=d.range},79791:function(e,t,r){"use strict";r.d(t,{D:function(){return a}});var n=r(30052),i=(0,n.Z)((function(e){e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t)}),(function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()}),(function(e){return e.getUTCFullYear()}));i.every=function(e){return isFinite(e=Math.floor(e))&&e>0?(0,n.Z)((function(t){t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,r){t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null},t.Z=i;var a=i.range},59879:function(e,t,r){"use strict";r.d(t,{$t:function(){return g},EY:function(){return d},Ff:function(){return x},Ld:function(){return m},OM:function(){return o},aU:function(){return v},b$:function(){return y},bJ:function(){return p},bL:function(){return c},mC:function(){return f},sy:function(){return l},vm:function(){return h},wA:function(){return s},zg:function(){return u}});var n=r(30052),i=r(54263);function a(e){return(0,n.Z)((function(t){t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),(function(e,t){e.setDate(e.getDate()+7*t)}),(function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*i.yB)/i.iM}))}var o=a(0),s=a(1),l=a(2),u=a(3),c=a(4),f=a(5),d=a(6),h=o.range,p=s.range,v=l.range,m=u.range,g=c.range,y=f.range,x=d.range},34823:function(e,t,r){"use strict";r.d(t,{g:function(){return a}});var n=r(30052),i=(0,n.Z)((function(e){e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,t){e.setFullYear(e.getFullYear()+t)}),(function(e,t){return t.getFullYear()-e.getFullYear()}),(function(e){return e.getFullYear()}));i.every=function(e){return isFinite(e=Math.floor(e))&&e>0?(0,n.Z)((function(t){t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,r){t.setFullYear(t.getFullYear()+r*e)})):null},t.Z=i;var a=i.range},17045:function(e,t,r){"use strict";var n=r(8709),i="function"===typeof Symbol&&"symbol"===typeof Symbol("foo"),a=Object.prototype.toString,o=Array.prototype.concat,s=Object.defineProperty,l=r(55622)(),u=s&&l,c=function(e,t,r,n){if(t in e)if(!0===n){if(e[t]===r)return}else if("function"!==typeof(i=n)||"[object Function]"!==a.call(i)||!n())return;var i;u?s(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},f=function(e,t){var r=arguments.length>2?arguments[2]:{},a=n(t);i&&(a=o.call(a,Object.getOwnPropertySymbols(t)));for(var s=0;ss*l){var h=(d-f)/s;o[c]=1e3*h}}return o}function i(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i0)return function(e,t){var r,n;for(r=new Array(e),n=0;n80*a){o=l=e[0],s=f=e[1];for(var b=a;bl&&(l=d),p>f&&(f=p);v=0!==(v=Math.max(l-o,f-s))?1/v:0}return i(y,x,a,o,s,v),x}function r(e,t,r,n,i){var a,o;if(i===A(e,t,r,n)>0)for(a=t;a=t;a-=n)o=k(a,e[a],e[a+1],o);return o&&g(o,o.next)&&(T(o),o=o.next),o}function n(e,t){if(!e)return e;t||(t=e);var r,n=e;do{if(r=!1,n.steiner||!g(n,n.next)&&0!==m(n.prev,n,n.next))n=n.next;else{if(T(n),(n=t=n.prev)===n.next)break;r=!0}}while(r||n!==t);return t}function i(e,t,r,u,c,f,h){if(e){!h&&f&&function(e,t,r,n){var i=e;do{null===i.z&&(i.z=d(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,function(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1)}(i)}(e,u,c,f);for(var p,v,m=e;e.prev!==e.next;)if(p=e.prev,v=e.next,f?o(e,u,c,f):a(e))t.push(p.i/r),t.push(e.i/r),t.push(v.i/r),T(e),e=v.next,m=v.next;else if((e=v)===m){h?1===h?i(e=s(n(e),t,r),t,r,u,c,f,2):2===h&&l(e,t,r,u,c,f):i(n(e),t,r,u,c,f,1);break}}}function a(e){var t=e.prev,r=e,n=e.next;if(m(t,r,n)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(p(t.x,t.y,r.x,r.y,n.x,n.y,i.x,i.y)&&m(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function o(e,t,r,n){var i=e.prev,a=e,o=e.next;if(m(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,c=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=d(s,l,t,r,n),h=d(u,c,t,r,n),v=e.prevZ,g=e.nextZ;v&&v.z>=f&&g&&g.z<=h;){if(v!==e.prev&&v!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,v.x,v.y)&&m(v.prev,v,v.next)>=0)return!1;if(v=v.prevZ,g!==e.prev&&g!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&m(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;v&&v.z>=f;){if(v!==e.prev&&v!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,v.x,v.y)&&m(v.prev,v,v.next)>=0)return!1;v=v.prevZ}for(;g&&g.z<=h;){if(g!==e.prev&&g!==e.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&m(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function s(e,t,r){var i=e;do{var a=i.prev,o=i.next.next;!g(a,o)&&y(a,i,i.next,o)&&_(a,o)&&_(o,a)&&(t.push(a.i/r),t.push(i.i/r),t.push(o.i/r),T(i),T(i.next),i=e=o),i=i.next}while(i!==e);return n(i)}function l(e,t,r,a,o,s){var l=e;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&v(l,u)){var c=w(l,u);return l=n(l,l.next),c=n(c,c.next),i(l,t,r,a,o,s),void i(c,t,r,a,o,s)}u=u.next}l=l.next}while(l!==e)}function u(e,t){return e.x-t.x}function c(e,t){if(t=function(e,t){var r,n=t,i=e.x,a=e.y,o=-1/0;do{if(a<=n.y&&a>=n.next.y&&n.next.y!==n.y){var s=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>o){if(o=s,s===i){if(a===n.y)return n;if(a===n.next.y)return n.next}r=n.x=n.x&&n.x>=c&&i!==n.x&&p(ar.x||n.x===r.x&&f(r,n)))&&(r=n,h=l)),n=n.next}while(n!==u);return r}(e,t),t){var r=w(t,e);n(t,t.next),n(r,r.next)}}function f(e,t){return m(e.prev,e,t.prev)<0&&m(t.next,e,e.next)<0}function d(e,t,r,n,i){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function h(e){var t=e,r=e;do{(t.x=0&&(e-o)*(n-s)-(r-o)*(t-s)>=0&&(r-o)*(a-s)-(i-o)*(n-s)>=0}function v(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&y(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}(e,t)&&(_(e,t)&&_(t,e)&&function(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do{r.y>a!==r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==e);return n}(e,t)&&(m(e.prev,e,t.prev)||m(e,t.prev,t))||g(e,t)&&m(e.prev,e,e.next)>0&&m(t.prev,t,t.next)>0)}function m(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function g(e,t){return e.x===t.x&&e.y===t.y}function y(e,t,r,n){var i=b(m(e,t,r)),a=b(m(e,t,n)),o=b(m(r,n,e)),s=b(m(r,n,t));return i!==a&&o!==s||!(0!==i||!x(e,r,t))||!(0!==a||!x(e,n,t))||!(0!==o||!x(r,e,n))||!(0!==s||!x(r,t,n))}function x(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function b(e){return e>0?1:e<0?-1:0}function _(e,t){return m(e.prev,e,e.next)<0?m(e,t,e.next)>=0&&m(e,e.prev,t)>=0:m(e,t,e.prev)<0||m(e,e.next,t)<0}function w(e,t){var r=new M(e.i,e.x,e.y),n=new M(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function k(e,t,r,n){var i=new M(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function T(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function M(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function A(e,t,r,n){for(var i=0,a=t,o=r-n;a0&&(n+=e[i-1].length,r.holes.push(n))}return r}},2502:function(e,t,r){var n=r(68664);e.exports=function(e,t){var r,i=[],a=[],o=[],s={},l=[];function u(e){o[e]=!1,s.hasOwnProperty(e)&&Object.keys(s[e]).forEach((function(t){delete s[e][t],o[t]&&u(t)}))}function c(e){var t,n,i=!1;for(a.push(e),o[e]=!0,t=0;t=t}))}(t);for(var r,i=n(e).components.filter((function(e){return e.length>1})),a=1/0,o=0;o=55296&&y<=56319&&(w+=e[++r]),w=k?d.call(k,T,w,v):w,t?(h.value=w,p(m,v,h)):m[v]=w,++v;g=v}if(void 0===g)for(g=o(e.length),t&&(m=new t(g)),r=0;r0?1:-1}},56247:function(e,t,r){"use strict";var n=r(9953),i=Math.abs,a=Math.floor;e.exports=function(e){return isNaN(e)?0:0!==(e=Number(e))&&isFinite(e)?n(e)*a(i(e)):e}},35976:function(e,t,r){"use strict";var n=r(56247),i=Math.max;e.exports=function(e){return i(0,n(e))}},67260:function(e,t,r){"use strict";var n=r(78513),i=r(36672),a=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;e.exports=function(e,t){return function(r,u){var c,f=arguments[2],d=arguments[3];return r=Object(i(r)),n(u),c=s(r),d&&c.sort("function"===typeof d?a.call(d,r):void 0),"function"!==typeof e&&(e=c[e]),o.call(e,c,(function(e,n){return l.call(r,e)?o.call(u,f,r[e],e,r,n):t}))}}},95879:function(e,t,r){"use strict";e.exports=r(73583)()?Object.assign:r(34205)},73583:function(e){"use strict";e.exports=function(){var e,t=Object.assign;return"function"===typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},34205:function(e,t,r){"use strict";var n=r(68700),i=r(36672),a=Math.max;e.exports=function(e,t){var r,o,s,l=a(arguments.length,2);for(e=Object(i(e)),s=function(n){try{e[n]=t[n]}catch(i){r||(r=i)}},o=1;o-1}},87963:function(e){"use strict";var t=Object.prototype.toString,r=t.call("");e.exports=function(e){return"string"===typeof e||e&&"object"===typeof e&&(e instanceof String||t.call(e)===r)||!1}},43043:function(e){"use strict";var t=Object.create(null),r=Math.random;e.exports=function(){var e;do{e=r().toString(36).slice(2)}while(t[e]);return e}},32411:function(e,t,r){"use strict";var n,i=r(1496),a=r(66741),o=r(62072),s=r(8260),l=r(95426),u=Object.defineProperty;n=e.exports=function(e,t){if(!(this instanceof n))throw new TypeError("Constructor requires 'new'");l.call(this,e),t=t?a.call(t,"key+value")?"key+value":a.call(t,"key")?"key":"value":"value",u(this,"__kind__",o("",t))},i&&i(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:o((function(e){return"value"===this.__kind__?this.__list__[e]:"key+value"===this.__kind__?[e,this.__list__[e]]:e}))}),u(n.prototype,s.toStringTag,o("c","Array Iterator"))},27515:function(e,t,r){"use strict";var n=r(73051),i=r(78513),a=r(87963),o=r(66661),s=Array.isArray,l=Function.prototype.call,u=Array.prototype.some;e.exports=function(e,t){var r,c,f,d,h,p,v,m,g=arguments[2];if(s(e)||n(e)?r="array":a(e)?r="string":e=o(e),i(t),f=function(){d=!0},"array"!==r)if("string"!==r)for(c=e.next();!c.done;){if(l.call(t,g,c.value,f),d)return;c=e.next()}else for(p=e.length,h=0;h=55296&&m<=56319&&(v+=e[++h]),l.call(t,g,v,f),!d);++h);else u.call(e,(function(e){return l.call(t,g,e,f),d}))}},66661:function(e,t,r){"use strict";var n=r(73051),i=r(87963),a=r(32411),o=r(259),s=r(58095),l=r(8260).iterator;e.exports=function(e){return"function"===typeof s(e)[l]?e[l]():n(e)?new a(e):i(e)?new o(e):new a(e)}},95426:function(e,t,r){"use strict";var n,i=r(16134),a=r(95879),o=r(78513),s=r(36672),l=r(62072),u=r(55174),c=r(8260),f=Object.defineProperty,d=Object.defineProperties;e.exports=n=function(e,t){if(!(this instanceof n))throw new TypeError("Constructor requires 'new'");d(this,{__list__:l("w",s(e)),__context__:l("w",t),__nextIndex__:l("w",0)}),t&&(o(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))},delete n.prototype.constructor,d(n.prototype,a({_next:l((function(){var e;if(this.__list__)return this.__redo__&&void 0!==(e=this.__redo__.shift())?e:this.__nextIndex__=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach((function(t,r){t>=e&&(this.__redo__[r]=++t)}),this),this.__redo__.push(e)):f(this,"__redo__",l("c",[e])))})),_onDelete:l((function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(t=this.__redo__.indexOf(e))&&this.__redo__.splice(t,1),this.__redo__.forEach((function(t,r){t>e&&(this.__redo__[r]=--t)}),this)))})),_onClear:l((function(){this.__redo__&&i.call(this.__redo__),this.__nextIndex__=0}))}))),f(n.prototype,c.iterator,l((function(){return this})))},35940:function(e,t,r){"use strict";var n=r(73051),i=r(95296),a=r(87963),o=r(8260).iterator,s=Array.isArray;e.exports=function(e){return!!i(e)&&(!!s(e)||!!a(e)||!!n(e)||"function"===typeof e[o])}},259:function(e,t,r){"use strict";var n,i=r(1496),a=r(62072),o=r(8260),s=r(95426),l=Object.defineProperty;n=e.exports=function(e){if(!(this instanceof n))throw new TypeError("Constructor requires 'new'");e=String(e),s.call(this,e),l(this,"__length__",a("",e.length))},i&&i(n,s),delete n.prototype.constructor,n.prototype=Object.create(s.prototype,{_next:a((function(){if(this.__list__)return this.__nextIndex__=55296&&t<=56319?r+this.__list__[this.__nextIndex__++]:r}))}),l(n.prototype,o.toStringTag,a("c","String Iterator"))},58095:function(e,t,r){"use strict";var n=r(35940);e.exports=function(e){if(!n(e))throw new TypeError(e+" is not iterable");return e}},73523:function(e){"use strict";function t(e,t){if(void 0===e||null===e)throw new TypeError("Cannot convert first argument to object");for(var r=Object(e),n=1;n0&&o.length>i&&!o.warned){o.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=o.length,u=c,console&&console.warn&&console.warn(u)}return e}function c(){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(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=c.bind(n);return i.listener=r,n.wrapFn=i,i}function d(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"===typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(o=t[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[e];if(void 0===l)return!1;if("function"===typeof l)n(l,this,t);else{var u=l.length,c=p(l,u);for(r=0;r=0;a--)if(r[a]===t||r[a].listener===t){o=r[a].listener,i=a;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return d(this,e,!0)},a.prototype.rawListeners=function(e){return d(this,e,!1)},a.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):h.call(e,t)},a.prototype.listenerCount=h,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},60774:function(e){var t=function(){if("object"===typeof self&&self)return self;if("object"===typeof window&&window)return window;throw new Error("Unable to resolve global `this`")};e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return t()}try{return __global__||t()}finally{delete Object.prototype.__global__}}()},94908:function(e,t,r){"use strict";e.exports=r(51152)()?globalThis:r(60774)},51152:function(e){"use strict";e.exports=function(){return"object"===typeof globalThis&&!!globalThis&&globalThis.Array===Array}},92770:function(e,t,r){"use strict";var n=r(18546);e.exports=function(e){var t=typeof e;if("string"===t){var r=e;if(0===(e=+e)&&n(r))return!1}else if("number"!==t)return!1;return e-e<1}},30120:function(e,t,r){var n=r(90660);e.exports=function(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=0|+(r||0),Array.isArray(e)&&e[0]&&"number"===typeof e[0][0]){var i,a,o,s,l=e[0].length,u=e.length*l;t&&"string"!==typeof t||(t=new(n(t||"float32"))(u+r));var c=t.length-r;if(u!==c)throw new Error("source length "+u+" ("+l+"x"+e.length+") does not match destination length "+c);for(i=0,o=r;it[0]-o[0]/2&&(d=o[0]/2,h+=o[1]);return r}},32879:function(e){"use strict";function t(e,a){a||(a={}),("string"===typeof e||Array.isArray(e))&&(a.family=e);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||"",u=(e=[a.style||a.fontStyle||"",l,s].join(" ")+"px "+o,a.origin||"top");if(t.cache[o]&&s<=t.cache[o].em)return r(t.cache[o],u);var c=a.canvas||t.canvas,f=c.getContext("2d"),d={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"},h=Math.ceil(1.5*s);c.height=h,c.width=.5*h,f.font=e;var p="H",v={top:0};f.clearRect(0,0,h,h),f.textBaseline="top",f.fillStyle="black",f.fillText(p,0,0);var m=n(f.getImageData(0,0,h,h));f.clearRect(0,0,h,h),f.textBaseline="bottom",f.fillText(p,0,h);var g=n(f.getImageData(0,0,h,h));v.lineHeight=v.bottom=h-g+m,f.clearRect(0,0,h,h),f.textBaseline="alphabetic",f.fillText(p,0,h);var y=h-n(f.getImageData(0,0,h,h))-1+m;v.baseline=v.alphabetic=y,f.clearRect(0,0,h,h),f.textBaseline="middle",f.fillText(p,0,.5*h);var x=n(f.getImageData(0,0,h,h));v.median=v.middle=h-x-1+m-.5*h,f.clearRect(0,0,h,h),f.textBaseline="hanging",f.fillText(p,0,.5*h);var b=n(f.getImageData(0,0,h,h));v.hanging=h-b-1+m-.5*h,f.clearRect(0,0,h,h),f.textBaseline="ideographic",f.fillText(p,0,h);var _=n(f.getImageData(0,0,h,h));if(v.ideographic=h-_-1+m,d.upper&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.upper,0,0),v.upper=n(f.getImageData(0,0,h,h)),v.capHeight=v.baseline-v.upper),d.lower&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.lower,0,0),v.lower=n(f.getImageData(0,0,h,h)),v.xHeight=v.baseline-v.lower),d.tittle&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.tittle,0,0),v.tittle=n(f.getImageData(0,0,h,h))),d.ascent&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.ascent,0,0),v.ascent=n(f.getImageData(0,0,h,h))),d.descent&&(f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.descent,0,0),v.descent=i(f.getImageData(0,0,h,h))),d.overshoot){f.clearRect(0,0,h,h),f.textBaseline="top",f.fillText(d.overshoot,0,0);var w=i(f.getImageData(0,0,h,h));v.overshoot=w-y}for(var k in v)v[k]/=s;return v.em=s,t.cache[o]=v,r(v,u)}function r(e,t){var r={};for(var n in"string"===typeof t&&(t=e[t]),e)"em"!==n&&(r[n]=e[n]-t);return r}function n(e){for(var t=e.height,r=e.data,n=3;n0;n-=4)if(0!==r[n])return Math.floor(.25*(n-3)/t)}e.exports=t,t.canvas=document.createElement("canvas"),t.cache={}},31353:function(e,t,r){"use strict";var n=r(85395),i=Object.prototype.toString,a=Object.prototype.hasOwnProperty;e.exports=function(e,t,r){if(!n(t))throw new TypeError("iterator must be a function");var o;arguments.length>=3&&(o=r),"[object Array]"===i.call(e)?function(e,t,r){for(var n=0,i=e.length;n1&&"boolean"!==typeof t)throw new o('"allowMissing" argument must be a boolean');if(null===M(/^%?[^%]*%?$/,e))throw new i("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=function(e){var t=T(e,0,1),r=T(e,-1);if("%"===t&&"%"!==r)throw new i("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==t)throw new i("invalid intrinsic syntax, expected opening `%`");var n=[];return k(e,A,(function(e,t,r,i){n[n.length]=r?k(i,S,"$1"):t||e})),n}(e),n=r.length>0?r[0]:"",a=E("%"+n+"%",t),s=a.name,u=a.value,c=!1,f=a.alias;f&&(n=f[0],w(r,_([0,1],f)));for(var d=1,h=!0;d=r.length){var y=l(u,p);u=(h=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:u[p]}else h=b(u,p),u=u[p];h&&!c&&(v[s]=u)}}return u}},85400:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],d=t[10],h=t[11],p=t[12],v=t[13],m=t[14],g=t[15];return e[0]=s*(d*g-h*m)-f*(l*g-u*m)+v*(l*h-u*d),e[1]=-(n*(d*g-h*m)-f*(i*g-a*m)+v*(i*h-a*d)),e[2]=n*(l*g-u*m)-s*(i*g-a*m)+v*(i*u-a*l),e[3]=-(n*(l*h-u*d)-s*(i*h-a*d)+f*(i*u-a*l)),e[4]=-(o*(d*g-h*m)-c*(l*g-u*m)+p*(l*h-u*d)),e[5]=r*(d*g-h*m)-c*(i*g-a*m)+p*(i*h-a*d),e[6]=-(r*(l*g-u*m)-o*(i*g-a*m)+p*(i*u-a*l)),e[7]=r*(l*h-u*d)-o*(i*h-a*d)+c*(i*u-a*l),e[8]=o*(f*g-h*v)-c*(s*g-u*v)+p*(s*h-u*f),e[9]=-(r*(f*g-h*v)-c*(n*g-a*v)+p*(n*h-a*f)),e[10]=r*(s*g-u*v)-o*(n*g-a*v)+p*(n*u-a*s),e[11]=-(r*(s*h-u*f)-o*(n*h-a*f)+c*(n*u-a*s)),e[12]=-(o*(f*m-d*v)-c*(s*m-l*v)+p*(s*d-l*f)),e[13]=r*(f*m-d*v)-c*(n*m-i*v)+p*(n*d-i*f),e[14]=-(r*(s*m-l*v)-o*(n*m-i*v)+p*(n*l-i*s)),e[15]=r*(s*d-l*f)-o*(n*d-i*f)+c*(n*l-i*s),e}},42331:function(e){e.exports=function(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},31042:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},11902:function(e){e.exports=function(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},89887:function(e){e.exports=function(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],d=e[11],h=e[12],p=e[13],v=e[14],m=e[15];return(t*o-r*a)*(f*m-d*v)-(t*s-n*a)*(c*m-d*p)+(t*l-i*a)*(c*v-f*p)+(r*s-n*o)*(u*m-d*h)-(r*l-i*o)*(u*v-f*h)+(n*l-i*s)*(u*p-c*h)}},27812:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,d=i*o,h=i*s,p=i*l,v=a*o,m=a*s,g=a*l;return e[0]=1-f-p,e[1]=c+g,e[2]=d-m,e[3]=0,e[4]=c-g,e[5]=1-u-p,e[6]=h+v,e[7]=0,e[8]=d+m,e[9]=h-v,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},34045:function(e){e.exports=function(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(o*=u=1/u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}},45973:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,d=n*u,h=i*l,p=i*u,v=a*u,m=o*s,g=o*l,y=o*u;return e[0]=1-(h+v),e[1]=f+y,e[2]=d-g,e[3]=0,e[4]=f-y,e[5]=1-(c+v),e[6]=p+m,e[7]=0,e[8]=d+g,e[9]=p-m,e[10]=1-(c+h),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}},81472:function(e){e.exports=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},14669:function(e){e.exports=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}},75262:function(e){e.exports=function(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},331:function(e){e.exports=function(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},11049:function(e){e.exports=function(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},75195:function(e){e.exports=function(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=2*a*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*a*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}},71551:function(e){e.exports=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},79576:function(e,t,r){e.exports={create:r(11902),clone:r(42331),copy:r(31042),identity:r(71551),transpose:r(88654),invert:r(95874),adjoint:r(85400),determinant:r(89887),multiply:r(91362),translate:r(31283),scale:r(10789),rotate:r(65074),rotateX:r(35545),rotateY:r(94918),rotateZ:r(15692),fromRotation:r(34045),fromRotationTranslation:r(45973),fromScaling:r(81472),fromTranslation:r(14669),fromXRotation:r(75262),fromYRotation:r(331),fromZRotation:r(11049),fromQuat:r(27812),frustum:r(75195),perspective:r(7864),perspectiveFromFieldOfView:r(35279),ortho:r(60378),lookAt:r(65551),str:r(6726)}},95874:function(e){e.exports=function(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],d=t[10],h=t[11],p=t[12],v=t[13],m=t[14],g=t[15],y=r*s-n*o,x=r*l-i*o,b=r*u-a*o,_=n*l-i*s,w=n*u-a*s,k=i*u-a*l,T=c*v-f*p,M=c*m-d*p,A=c*g-h*p,S=f*m-d*v,E=f*g-h*v,C=d*g-h*m,L=y*C-x*E+b*S+_*A-w*M+k*T;return L?(L=1/L,e[0]=(s*C-l*E+u*S)*L,e[1]=(i*E-n*C-a*S)*L,e[2]=(v*k-m*w+g*_)*L,e[3]=(d*w-f*k-h*_)*L,e[4]=(l*A-o*C-u*M)*L,e[5]=(r*C-i*A+a*M)*L,e[6]=(m*b-p*k-g*x)*L,e[7]=(c*k-d*b+h*x)*L,e[8]=(o*E-s*A+u*T)*L,e[9]=(n*A-r*E-a*T)*L,e[10]=(p*w-v*b+g*y)*L,e[11]=(f*b-c*w-h*y)*L,e[12]=(s*M-o*S-l*T)*L,e[13]=(r*S-n*M+i*T)*L,e[14]=(v*x-p*_-m*y)*L,e[15]=(c*_-f*x+d*y)*L,e):null}},65551:function(e,t,r){var n=r(71551);e.exports=function(e,t,r,i){var a,o,s,l,u,c,f,d,h,p,v=t[0],m=t[1],g=t[2],y=i[0],x=i[1],b=i[2],_=r[0],w=r[1],k=r[2];return Math.abs(v-_)<1e-6&&Math.abs(m-w)<1e-6&&Math.abs(g-k)<1e-6?n(e):(f=v-_,d=m-w,h=g-k,p=1/Math.sqrt(f*f+d*d+h*h),a=x*(h*=p)-b*(d*=p),o=b*(f*=p)-y*h,s=y*d-x*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=d*s-h*o,u=h*a-f*s,c=f*o-d*a,(p=Math.sqrt(l*l+u*u+c*c))?(l*=p=1/p,u*=p,c*=p):(l=0,u=0,c=0),e[0]=a,e[1]=l,e[2]=f,e[3]=0,e[4]=o,e[5]=u,e[6]=d,e[7]=0,e[8]=s,e[9]=c,e[10]=h,e[11]=0,e[12]=-(a*v+o*m+s*g),e[13]=-(l*v+u*m+c*g),e[14]=-(f*v+d*m+h*g),e[15]=1,e)}},91362:function(e){e.exports=function(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],v=t[12],m=t[13],g=t[14],y=t[15],x=r[0],b=r[1],_=r[2],w=r[3];return e[0]=x*n+b*s+_*f+w*v,e[1]=x*i+b*l+_*d+w*m,e[2]=x*a+b*u+_*h+w*g,e[3]=x*o+b*c+_*p+w*y,x=r[4],b=r[5],_=r[6],w=r[7],e[4]=x*n+b*s+_*f+w*v,e[5]=x*i+b*l+_*d+w*m,e[6]=x*a+b*u+_*h+w*g,e[7]=x*o+b*c+_*p+w*y,x=r[8],b=r[9],_=r[10],w=r[11],e[8]=x*n+b*s+_*f+w*v,e[9]=x*i+b*l+_*d+w*m,e[10]=x*a+b*u+_*h+w*g,e[11]=x*o+b*c+_*p+w*y,x=r[12],b=r[13],_=r[14],w=r[15],e[12]=x*n+b*s+_*f+w*v,e[13]=x*i+b*l+_*d+w*m,e[14]=x*a+b*u+_*h+w*g,e[15]=x*o+b*c+_*p+w*y,e}},60378:function(e){e.exports=function(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}},7864:function(e){e.exports=function(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}},35279:function(e){e.exports=function(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-(o-s)*l*.5,e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}},65074:function(e){e.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S,E=n[0],C=n[1],L=n[2],P=Math.sqrt(E*E+C*C+L*L);return Math.abs(P)<1e-6?null:(E*=P=1/P,C*=P,L*=P,i=Math.sin(r),a=Math.cos(r),o=1-a,s=t[0],l=t[1],u=t[2],c=t[3],f=t[4],d=t[5],h=t[6],p=t[7],v=t[8],m=t[9],g=t[10],y=t[11],x=E*E*o+a,b=C*E*o+L*i,_=L*E*o-C*i,w=E*C*o-L*i,k=C*C*o+a,T=L*C*o+E*i,M=E*L*o+C*i,A=C*L*o-E*i,S=L*L*o+a,e[0]=s*x+f*b+v*_,e[1]=l*x+d*b+m*_,e[2]=u*x+h*b+g*_,e[3]=c*x+p*b+y*_,e[4]=s*w+f*k+v*T,e[5]=l*w+d*k+m*T,e[6]=u*w+h*k+g*T,e[7]=c*w+p*k+y*T,e[8]=s*M+f*A+v*S,e[9]=l*M+d*A+m*S,e[10]=u*M+h*A+g*S,e[11]=c*M+p*A+y*S,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}},35545:function(e){e.exports=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+d*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=d*i-l*n,e}},94918:function(e){e.exports=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],d=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-d*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+d*i,e}},15692:function(e){e.exports=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+d*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=d*i-l*n,e}},10789:function(e){e.exports=function(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},6726:function(e){e.exports=function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}},31283:function(e){e.exports=function(e,t,r){var n,i,a,o,s,l,u,c,f,d,h,p,v=r[0],m=r[1],g=r[2];return t===e?(e[12]=t[0]*v+t[4]*m+t[8]*g+t[12],e[13]=t[1]*v+t[5]*m+t[9]*g+t[13],e[14]=t[2]*v+t[6]*m+t[10]*g+t[14],e[15]=t[3]*v+t[7]*m+t[11]*g+t[15]):(n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],e[0]=n,e[1]=i,e[2]=a,e[3]=o,e[4]=s,e[5]=l,e[6]=u,e[7]=c,e[8]=f,e[9]=d,e[10]=h,e[11]=p,e[12]=n*v+s*m+f*g+t[12],e[13]=i*v+l*m+d*g+t[13],e[14]=a*v+u*m+h*g+t[14],e[15]=o*v+c*m+p*g+t[15]),e}},88654:function(e){e.exports=function(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}},42505:function(e,t,r){"use strict";var n=r(72791),i=r(71299),a=r(98580),o=r(12018),s=r(83522),l=r(25075),u=r(68016),c=r(58404),f=r(18863),d=r(10973),h=r(25677),p=r(75686),v=r(53545),m=r(56131),g=r(32879),y=r(30120),x=r(13547).nextPow2,b=new s,_=!1;if(document.body){var w=document.body.appendChild(document.createElement("div"));w.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(w).fontStretch&&(_=!0),document.body.removeChild(w)}var k=function(e){!function(e){return"function"===typeof e&&e._gl&&e.prop&&e.texture&&e.buffer}(e)?this.gl=o(e):(e={regl:e},this.gl=e.regl._gl),this.shader=b.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=e.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(),b.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(d(e)?e:{})};k.prototype.createShader=function(){var e=this.regl,t=e({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:e.prop("count"),offset:e.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:e.this("sizeBuffer")},width:{offset:0,stride:8,buffer:e.this("sizeBuffer")},char:e.this("charBuffer"),position:e.this("position")},uniforms:{atlasSize:function(e,t){return[t.atlas.width,t.atlas.height]},atlasDim:function(e,t){return[t.atlas.cols,t.atlas.rows]},atlas:function(e,t){return t.atlas.texture},charStep:function(e,t){return t.atlas.step},em:function(e,t){return t.atlas.em},color:e.prop("color"),opacity:e.prop("opacity"),viewport:e.this("viewportArray"),scale:e.this("scale"),align:e.prop("align"),baseline:e.prop("baseline"),translate:e.this("translate"),positionOffset:e.prop("positionOffset")},primitive:"points",viewport:e.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:e,draw:t,atlas:{}}},k.prototype.update=function(e){var t=this;if("string"===typeof e)e={text:e};else if(!e)return;null!=(e=i(e,{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(e.opacity)?this.opacity=e.opacity.map((function(e){return parseFloat(e)})):this.opacity=parseFloat(e.opacity)),null!=e.viewport&&(this.viewport=f(e.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!=e.kerning&&(this.kerning=e.kerning),null!=e.offset&&("number"===typeof e.offset&&(e.offset=[e.offset,0]),this.positionOffset=y(e.offset)),e.direction&&(this.direction=e.direction),e.range&&(this.range=e.range,this.scale=[1/(e.range[2]-e.range[0]),1/(e.range[3]-e.range[1])],this.translate=[-e.range[0],-e.range[1]]),e.scale&&(this.scale=e.scale),e.translate&&(this.translate=e.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||e.font||(e.font=k.baseFontSize+"px sans-serif");var r,a=!1,o=!1;if(e.font&&(Array.isArray(e.font)?e.font:[e.font]).forEach((function(e,r){if("string"===typeof e)try{e=n.parse(e)}catch(f){e=n.parse(k.baseFontSize+"px "+e)}else e=n.parse(n.stringify(e));var i=n.stringify({size:k.baseFontSize,family:e.family,stretch:_?e.stretch:void 0,variant:e.variant,weight:e.weight,style:e.style}),s=h(e.size),l=Math.round(s[0]*p(s[1]));if(l!==t.fontSize[r]&&(o=!0,t.fontSize[r]=l),(!t.font[r]||i!=t.font[r].baseString)&&(a=!0,t.font[r]=k.fonts[i],!t.font[r])){var u=e.family.join(", "),c=[e.style];e.style!=e.variant&&c.push(e.variant),e.variant!=e.weight&&c.push(e.weight),_&&e.weight!=e.stretch&&c.push(e.stretch),t.font[r]={baseString:i,family:u,weight:e.weight,stretch:e.stretch,style:e.style,variant:e.variant,width:{},kerning:{},metrics:g(u,{origin:"top",fontSize:k.baseFontSize,fontStyle:c.join(" ")})},k.fonts[i]=t.font[r]}})),(a||o)&&this.font.forEach((function(r,i){var a=n.stringify({size:t.fontSize[i],family:r.family,stretch:_?r.stretch:void 0,variant:r.variant,weight:r.weight,style:r.style});if(t.fontAtlas[i]=t.shader.atlas[a],!t.fontAtlas[i]){var o=r.metrics;t.shader.atlas[a]=t.fontAtlas[i]={fontString:a,step:2*Math.ceil(t.fontSize[i]*o.bottom*.5),em:t.fontSize[i],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:t.regl.texture()}}null==e.text&&(e.text=t.text)})),"string"===typeof e.text&&e.position&&e.position.length>2){for(var s=Array(.5*e.position.length),d=0;d2){for(var w=!e.position[0].length,T=c.mallocFloat(2*this.count),M=0,A=0;M1?t.align[r]:t.align[0]:t.align;if("number"===typeof n)return n;switch(n){case"right":case"end":return-e;case"center":case"centre":case"middle":return.5*-e}return 0}))),null==this.baseline&&null==e.baseline&&(e.baseline=0),null!=e.baseline&&(this.baseline=e.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(e,r){var n=(t.font[r]||t.font[0]).metrics,i=0;return i+=.5*n.bottom,i+="number"===typeof e?e-n.baseline:-n[e],i*=-1}))),null!=e.color)if(e.color||(e.color="transparent"),"string"!==typeof e.color&&isNaN(e.color)){var q;if("number"===typeof e.color[0]&&e.color.length>this.counts.length){var W=e.color.length;q=c.mallocUint8(W);for(var G=(e.color.subarray||e.color.slice).bind(e.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 $=0;$1?this.counts[$]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[$]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*$,4*$+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[$]:this.opacity,baseline:null!=this.baselineOffset[$]?this.baselineOffset[$]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[$]?this.alignOffset[$]:this.alignOffset[0]:0,atlas:this.fontAtlas[$]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*$,2*$+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={},e.exports=k},12018:function(e,t,r){"use strict";var n=r(71299);function i(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*r.g.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*r.g.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function a(e){return"function"===typeof e.getContext&&"width"in e&&"height"in e}function o(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}e.exports=function(e){var t;if(e?"string"===typeof e&&(e={container:e}):e={},(e=a(e)||"string"===typeof(t=e).nodeName&&"function"===typeof t.appendChild&&"function"===typeof t.getBoundingClientRect?{container:e}:function(e){return"function"===typeof e.drawArrays||"function"===typeof e.drawElements}(e)?{gl:e}:n(e,{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||(e.pixelRatio=r.g.pixelRatio||1),e.gl)return e.gl;if(e.canvas&&(e.container=e.canvas.parentNode),e.container){if("string"===typeof e.container){var s=document.querySelector(e.container);if(!s)throw Error("Element "+e.container+" is not found");e.container=s}a(e.container)?(e.canvas=e.container,e.container=e.canvas.parentNode):e.canvas||(e.canvas=o(),e.container.appendChild(e.canvas),i(e))}else if(!e.canvas){if("undefined"===typeof document)throw Error("Not DOM environment. Use headless-gl.");e.container=document.body||document.documentElement,e.canvas=o(),e.container.appendChild(e.canvas),i(e)}return e.gl||["webgl","experimental-webgl","webgl-experimental"].some((function(r){try{e.gl=e.canvas.getContext(r,e.attrs)}catch(t){}return e.gl})),e.gl}},56068:function(e){e.exports=function(e){"string"===typeof e&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n>1,c=-7,f=r?i-1:0,d=r?-1:1,h=e[t+f];for(f+=d,a=h&(1<<-c)-1,h>>=-c,c+=s;c>0;a=256*a+e[t+f],f+=d,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+e[t+f],f+=d,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,n),a-=u}return(h?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:a-1,p=n?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+f>=1?d/l:d*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+h]=255&s,h+=p,s/=256,i-=8);for(o=o<0;e[r+h]=255&o,h+=p,o/=256,u-=8);e[r+h-p]|=128*v}},42018:function(e){"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},47216:function(e,t,r){"use strict";var n=r(84543)(),i=r(6614)("Object.prototype.toString"),a=function(e){return!(n&&e&&"object"===typeof e&&Symbol.toStringTag in e)&&"[object Arguments]"===i(e)},o=function(e){return!!a(e)||null!==e&&"object"===typeof e&&"number"===typeof e.length&&e.length>=0&&"[object Array]"!==i(e)&&"[object Function]"===i(e.callee)},s=function(){return a(arguments)}();a.isLegacyArguments=o,e.exports=s?a:o},54404:function(e){e.exports=!0},85395:function e(t){"use strict";var r,n,i=Function.prototype.toString,a="object"===typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"===typeof a&&"function"===typeof Object.defineProperty)try{r=Object.defineProperty({},"length",{get:function(){throw n}}),n={},a((function(){throw 42}),null,r)}catch(e){e!==n&&(a=null)}else a=null;var o=/^\s*class\b/,s=function(e){try{var t=i.call(e);return o.test(t)}catch(r){return!1}},l=function(e){try{return!s(e)&&(i.call(e),!0)}catch(t){return!1}},u=Object.prototype.toString,c="function"===typeof Symbol&&!!Symbol.toStringTag,f=!(0 in[,]),d=function(){return!1};if("object"===typeof document){var h=document.all;u.call(h)===u.call(document.all)&&(d=function(e){if((f||!e)&&("undefined"===typeof e||"object"===typeof e))try{var t=u.call(e);return("[object HTMLAllCollection]"===t||"[object HTML document.all class]"===t||"[object HTMLCollection]"===t||"[object Object]"===t)&&null==e("")}catch(r){}return!1})}t.exports=a?function(e){if(d(e))return!0;if(!e)return!1;if("function"!==typeof e&&"object"!==typeof e)return!1;try{a(e,null,r)}catch(t){if(t!==n)return!1}return!s(e)&&l(e)}:function(e){if(d(e))return!0;if(!e)return!1;if("function"!==typeof e&&"object"!==typeof e)return!1;if(c)return l(e);if(s(e))return!1;var t=u.call(e);return!("[object Function]"!==t&&"[object GeneratorFunction]"!==t&&!/^\[object HTML/.test(t))&&l(e)}},65481:function(e,t,r){"use strict";var n,i=Object.prototype.toString,a=Function.prototype.toString,o=/^\s*(?:function)?\*/,s=r(84543)(),l=Object.getPrototypeOf;e.exports=function(e){if("function"!==typeof e)return!1;if(o.test(a.call(e)))return!0;if(!s)return"[object GeneratorFunction]"===i.call(e);if(!l)return!1;if("undefined"===typeof n){var t=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(e){}}();n=!!t&&l(t)}return l(e)===n}},62683:function(e){"use strict";e.exports="undefined"!==typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))},64274:function(e){"use strict";e.exports=function(e){return e!==e}},15567:function(e,t,r){"use strict";var n=r(68222),i=r(17045),a=r(64274),o=r(14922),s=r(22442),l=n(o(),Number);i(l,{getPolyfill:o,implementation:a,shim:s}),e.exports=l},14922:function(e,t,r){"use strict";var n=r(64274);e.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:n}},22442:function(e,t,r){"use strict";var n=r(17045),i=r(14922);e.exports=function(){var e=i();return n(Number,{isNaN:e},{isNaN:function(){return Number.isNaN!==e}}),e}},64941:function(e){"use strict";e.exports=function(e){var t=typeof e;return null!==e&&("object"===t||"function"===t)}},10973:function(e){"use strict";var t=Object.prototype.toString;e.exports=function(e){var r;return"[object Object]"===t.call(e)&&(null===(r=Object.getPrototypeOf(e))||r===Object.getPrototypeOf({}))}},18546:function(e){"use strict";e.exports=function(e){for(var t,r=e.length,n=0;n13)&&32!==t&&133!==t&&160!==t&&5760!==t&&6158!==t&&(t<8192||t>8205)&&8232!==t&&8233!==t&&8239!==t&&8287!==t&&8288!==t&&12288!==t&&65279!==t)return!1;return!0}},89546:function(e){"use strict";e.exports=function(e){return"string"===typeof e&&(e=e.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(e)&&/[\dz]$/i.test(e)&&e.length>4))}},9187:function(e,t,r){"use strict";var n=r(31353),i=r(72077),a=r(6614),o=a("Object.prototype.toString"),s=r(84543)(),l=r(40383),u="undefined"===typeof globalThis?r.g:globalThis,c=i(),f=a("Array.prototype.indexOf",!0)||function(e,t){for(var r=0;r-1}return!!l&&function(e){var t=!1;return n(h,(function(r,n){if(!t)try{t=r.call(e)===n}catch(i){}})),t}(e)}},44517:function(e){e.exports=function(){"use strict";var e,t,r;function n(n,i){if(e)if(t){var a="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",o={};e(o),(r=i(o)).workerUrl=window.URL.createObjectURL(new Blob([a],{type:"text/javascript"}))}else t=i;else e=i}return n(["exports"],(function(e){function t(e,t){return e(t={exports:{}},t.exports),t.exports}var r="1.10.1",n=i;function i(e,t,r,n){this.cx=3*e,this.bx=3*(r-e)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*t,this.by=3*(n-t)-this.cy,this.ay=1-this.cy-this.by,this.p1x=e,this.p1y=n,this.p2x=r,this.p2y=n}i.prototype.sampleCurveX=function(e){return((this.ax*e+this.bx)*e+this.cx)*e},i.prototype.sampleCurveY=function(e){return((this.ay*e+this.by)*e+this.cy)*e},i.prototype.sampleCurveDerivativeX=function(e){return(3*this.ax*e+2*this.bx)*e+this.cx},i.prototype.solveCurveX=function(e,t){var r,n,i,a,o;for("undefined"===typeof t&&(t=1e-6),i=e,o=0;o<8;o++){if(a=this.sampleCurveX(i)-e,Math.abs(a)(n=1))return n;for(;ra?r=i:n=i,i=.5*(n-r)+r}return i},i.prototype.solve=function(e,t){return this.sampleCurveY(this.solveCurveX(e,t))};var a=o;function o(e,t){this.x=e,this.y=t}function s(e,t){if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var r=0;r=1)return 1;var t=e*e,r=t*e;return 4*(e<.5?r:3*(e-t)+r-.75)}function u(e,t,r,i){var a=new n(e,t,r,i);return function(e){return a.solve(e)}}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(e){return this.clone()._add(e)},sub:function(e){return this.clone()._sub(e)},multByPoint:function(e){return this.clone()._multByPoint(e)},divByPoint:function(e){return this.clone()._divByPoint(e)},mult:function(e){return this.clone()._mult(e)},div:function(e){return this.clone()._div(e)},rotate:function(e){return this.clone()._rotate(e)},rotateAround:function(e,t){return this.clone()._rotateAround(e,t)},matMult:function(e){return this.clone()._matMult(e)},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(e){return this.x===e.x&&this.y===e.y},dist:function(e){return Math.sqrt(this.distSqr(e))},distSqr:function(e){var t=e.x-this.x,r=e.y-this.y;return t*t+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith:function(e){return this.angleWithSep(e.x,e.y)},angleWithSep:function(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult:function(e){var t=e[0]*this.x+e[1]*this.y,r=e[2]*this.x+e[3]*this.y;return this.x=t,this.y=r,this},_add:function(e){return this.x+=e.x,this.y+=e.y,this},_sub:function(e){return this.x-=e.x,this.y-=e.y,this},_mult:function(e){return this.x*=e,this.y*=e,this},_div:function(e){return this.x/=e,this.y/=e,this},_multByPoint:function(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint:function(e){return this.x/=e.x,this.y/=e.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var e=this.y;return this.y=this.x,this.x=-e,this},_rotate:function(e){var t=Math.cos(e),r=Math.sin(e),n=t*this.x-r*this.y,i=r*this.x+t*this.y;return this.x=n,this.y=i,this},_rotateAround:function(e,t){var r=Math.cos(e),n=Math.sin(e),i=t.x+r*(this.x-t.x)-n*(this.y-t.y),a=t.y+n*(this.x-t.x)+r*(this.y-t.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(e){return e instanceof o?e:Array.isArray(e)?new o(e[0],e[1]):e};var c=u(.25,.1,.25,1);function f(e,t,r){return Math.min(r,Math.max(t,e))}function d(e,t,r){var n=r-t,i=((e-t)%n+n)%n+t;return i===t?r:i}function h(e,t,r){if(!e.length)return r(null,[]);var n=e.length,i=new Array(e.length),a=null;e.forEach((function(e,o){t(e,(function(e,t){e&&(a=e),i[o]=t,0===--n&&r(a,i)}))}))}function p(e){var t=[];for(var r in e)t.push(e[r]);return t}function v(e,t){var r=[];for(var n in e)n in t||r.push(n);return r}function m(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];for(var n=0,i=t;n>t/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,e)}return e()}function _(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function w(e,t){e.forEach((function(e){t[e]&&(t[e]=t[e].bind(t))}))}function k(e,t){return-1!==e.indexOf(t,e.length-t.length)}function T(e,t,r){var n={};for(var i in e)n[i]=t.call(r||this,e[i],i,e);return n}function M(e,t,r){var n={};for(var i in e)t.call(r||this,e[i],i,e)&&(n[i]=e[i]);return n}function A(e){return Array.isArray(e)?e.map(A):"object"===typeof e&&e?T(e,A):e}function S(e,t){for(var r=0;r=0)return!0;return!1}var E={};function C(e){E[e]||("undefined"!==typeof console&&console.warn(e),E[e]=!0)}function L(e,t,r){return(r.y-e.y)*(t.x-e.x)>(t.y-e.y)*(r.x-e.x)}function P(e){for(var t=0,r=0,n=e.length,i=n-1,a=void 0,o=void 0;r@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,r={};if(e.replace(t,(function(e,t,n,i){var a=n||i;return r[t]=!a||a.toLowerCase(),""})),r["max-age"]){var n=parseInt(r["max-age"],10);isNaN(n)?delete r["max-age"]:r["max-age"]=n}return r}var R=null;function z(e){if(null==R){var t=e.navigator?e.navigator.userAgent:null;R=!!e.safari||!(!t||!(/\b(iPad|iPhone|iPod)\b/.test(t)||t.match("Safari")&&!t.match("Chrome")))}return R}function F(e){try{var t=self[e];return t.setItem("_mapbox_test_",1),t.removeItem("_mapbox_test_"),!0}catch(r){return!1}}function N(e){return self.btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(function(e,t){return String.fromCharCode(Number("0x"+t))})))}function B(e){return decodeURIComponent(self.atob(e).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join(""))}var j,U,V,H,q=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),W=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,G=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,Y={now:q,frame:function(e){var t=W(e);return{cancel:function(){return G(t)}}},getImageData:function(e,t){void 0===t&&(t=0);var r=self.document.createElement("canvas"),n=r.getContext("2d");if(!n)throw new Error("failed to create canvas 2d context");return r.width=e.width,r.height=e.height,n.drawImage(e,0,0,e.width,e.height),n.getImageData(-t,-t,e.width+2*t,e.height+2*t)},resolveURL:function(e){return j||(j=self.document.createElement("a")),j.href=e,j.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)}},Z={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,$=!1;function J(e){!K&&H&&($?Q(e):V=e)}function Q(e){var t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t);try{if(e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,H),e.isContextLost())return;X.supported=!0}catch(r){}e.deleteTexture(t),K=!0}self.document&&((H=self.document.createElement("img")).onload=function(){V&&Q(V),V=null,$=!0},H.onerror=function(){K=!0,V=null},H.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");var ee="01";function te(){for(var e="1",t="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",r="",n=0;n<10;n++)r+=t[Math.floor(62*Math.random())];var i=432e5;return{token:[e,ee,r].join(""),tokenExpiresAt:Date.now()+i}}var re=function(e,t){this._transformRequestFn=e,this._customAccessToken=t,this._createSkuToken()};function ne(e){return 0===e.indexOf("mapbox:")}re.prototype._createSkuToken=function(){var e=te();this._skuToken=e.token,this._skuTokenExpiresAt=e.tokenExpiresAt},re.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},re.prototype.transformRequest=function(e,t){return this._transformRequestFn&&this._transformRequestFn(e,t)||{url:e}},re.prototype.normalizeStyleURL=function(e,t){if(!ne(e))return e;var r=ue(e);return r.path="/styles/v1"+r.path,this._makeAPIURL(r,this._customAccessToken||t)},re.prototype.normalizeGlyphsURL=function(e,t){if(!ne(e))return e;var r=ue(e);return r.path="/fonts/v1"+r.path,this._makeAPIURL(r,this._customAccessToken||t)},re.prototype.normalizeSourceURL=function(e,t){if(!ne(e))return e;var r=ue(e);return r.path="/v4/"+r.authority+".json",r.params.push("secure"),this._makeAPIURL(r,this._customAccessToken||t)},re.prototype.normalizeSpriteURL=function(e,t,r,n){var i=ue(e);return ne(e)?(i.path="/styles/v1"+i.path+"/sprite"+t+r,this._makeAPIURL(i,this._customAccessToken||n)):(i.path+=""+t+r,ce(i))},re.prototype.normalizeTileURL=function(e,t){if(this._isSkuTokenExpired()&&this._createSkuToken(),e&&!ne(e))return e;var r=ue(e),n=/(\.(png|jpg)\d*)(?=$)/,i=/^.+\/v4\//,a=Y.devicePixelRatio>=2||512===t?"@2x":"",o=X.supported?".webp":"$1";r.path=r.path.replace(n,""+a+o),r.path=r.path.replace(i,"/"),r.path="/v4"+r.path;var s=this._customAccessToken||se(r.params)||Z.ACCESS_TOKEN;return Z.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&r.params.push("sku="+this._skuToken),this._makeAPIURL(r,s)},re.prototype.canonicalizeTileURL=function(e,t){var r="/v4/",n=/\.[\w]+$/,i=ue(e);if(!i.path.match(/(^\/v4\/)/)||!i.path.match(n))return e;var a="mapbox://tiles/";a+=i.path.replace(r,"");var o=i.params;return t&&(o=o.filter((function(e){return!e.match(/^access_token=/)}))),o.length&&(a+="?"+o.join("&")),a},re.prototype.canonicalizeTileset=function(e,t){for(var r=!!t&&ne(t),n=[],i=0,a=e.tiles||[];i=1&&self.localStorage.setItem(t,JSON.stringify(this.eventData))}catch(n){C("Unable to write to LocalStorage")}},he.prototype.processRequests=function(e){},he.prototype.postEvent=function(e,t,n,i){var a=this;if(Z.EVENTS_URL){var o=ue(Z.EVENTS_URL);o.params.push("access_token="+(i||Z.ACCESS_TOKEN||""));var s={event:this.type,created:new Date(e).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:ee,userId:this.anonId},l=t?m(s,t):s,u={url:ce(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([l])};this.pendingRequest=Ze(u,(function(e){a.pendingRequest=null,n(e),a.saveEventData(),a.processRequests(i)}))}},he.prototype.queueRequest=function(e,t){this.queue.push(e),this.processRequests(t)};var pe,ve,me=function(e){function t(){e.call(this,"map.load"),this.success={},this.skuToken=""}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.postMapLoadEvent=function(e,t,r,n){this.skuToken=r,(Z.EVENTS_URL&&n||Z.ACCESS_TOKEN&&Array.isArray(e)&&e.some((function(e){return ne(e)||ae(e)})))&&this.queueRequest({id:t,timestamp:Date.now()},n)},t.prototype.processRequests=function(e){var t=this;if(!this.pendingRequest&&0!==this.queue.length){var r=this.queue.shift(),n=r.id,i=r.timestamp;n&&this.success[n]||(this.anonId||this.fetchEventData(),_(this.anonId)||(this.anonId=b()),this.postEvent(i,{skuToken:this.skuToken},(function(e){e||n&&(t.success[n]=!0)}),e))}},t}(he),ge=function(e){function t(t){e.call(this,"appUserTurnstile"),this._customAccessToken=t}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.postTurnstileEvent=function(e,t){Z.EVENTS_URL&&Z.ACCESS_TOKEN&&Array.isArray(e)&&e.some((function(e){return ne(e)||ae(e)}))&&this.queueRequest(Date.now(),t)},t.prototype.processRequests=function(e){var t=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var r=de(Z.ACCESS_TOKEN),n=r?r.u:Z.ACCESS_TOKEN,i=n!==this.eventData.tokenU;_(this.anonId)||(this.anonId=b(),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(e){e||(t.eventData.lastSuccess=a,t.eventData.tokenU=n)}),e)}},t}(he),ye=new ge,xe=ye.postTurnstileEvent.bind(ye),be=new me,_e=be.postMapLoadEvent.bind(be),we="mapbox-tiles",ke=500,Te=50,Me=42e4;function Ae(){self.caches&&!pe&&(pe=self.caches.open(we))}function Se(e,t){if(void 0===ve)try{new Response(new ReadableStream),ve=!0}catch(r){ve=!1}ve?t(e.body):e.blob().then(t)}function Ee(e,t,r){if(Ae(),pe){var n={status:t.status,statusText:t.statusText,headers:new self.Headers};t.headers.forEach((function(e,t){return n.headers.set(t,e)}));var i=D(t.headers.get("Cache-Control")||"");i["no-store"]||(i["max-age"]&&n.headers.set("Expires",new Date(r+1e3*i["max-age"]).toUTCString()),new Date(n.headers.get("Expires")).getTime()-rDate.now()&&!r["no-cache"]}var Oe,Ie=1/0;function De(e){++Ie>Te&&(e.getActor().send("enforceCacheSizeLimit",ke),Ie=0)}function Re(e){Ae(),pe&&pe.then((function(t){t.keys().then((function(r){for(var n=0;n=200&&r.status<300||0===r.status)&&null!==r.response){var n=r.response;if("json"===e.type)try{n=JSON.parse(r.response)}catch(i){return t(i)}t(null,n,r.getResponseHeader("Cache-Control"),r.getResponseHeader("Expires"))}else t(new je(r.statusText,r.status,e.url))},r.send(e.body),{cancel:function(){return r.abort()}}}var We=function(e,t){if(!Ve(e.url)){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty("signal"))return He(e,t);if(I()&&self.worker&&self.worker.actor){var r=!0;return self.worker.actor.send("getResource",e,t,void 0,r)}}return qe(e,t)},Ge=function(e,t){return We(m(e,{type:"json"}),t)},Ye=function(e,t){return We(m(e,{type:"arrayBuffer"}),t)},Ze=function(e,t){return We(m(e,{method:"POST"}),t)};function Xe(e){var t=self.document.createElement("a");return t.href=e,t.protocol===self.document.location.protocol&&t.host===self.document.location.host}var Ke,$e,Je="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Qe(e,t,r,n){var i=new self.Image,a=self.URL;i.onload=function(){t(null,i),a.revokeObjectURL(i.src)},i.onerror=function(){return t(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(e)],{type:"image/png"});i.cacheControl=r,i.expires=n,i.src=e.byteLength?a.createObjectURL(o):Je}function et(e,t){var r=new self.Blob([new Uint8Array(e)],{type:"image/png"});self.createImageBitmap(r).then((function(e){t(null,e)})).catch((function(e){t(new Error("Could not load image because of "+e.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))}))}Ke=[],$e=0;var tt=function e(t,r){if(X.supported&&(t.headers||(t.headers={}),t.headers.accept="image/webp,*/*"),$e>=Z.MAX_PARALLEL_IMAGE_REQUESTS){var n={requestParameters:t,callback:r,cancelled:!1,cancel:function(){this.cancelled=!0}};return Ke.push(n),n}$e++;var i=!1,a=function(){if(!i)for(i=!0,$e--;Ke.length&&$e0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},st.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this};var lt={$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"}}},ut=function(e,t,r,n){this.message=(e?e+": ":"")+r,n&&(this.identifier=n),null!==t&&void 0!==t&&t.__line__&&(this.line=t.__line__)};function ct(e){var t=e.key,r=e.value;return r?[new ut(t,r,"constants have been deprecated as of v8")]:[]}function ft(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];for(var n=0,i=t;n":"value"===e.itemType.kind?"array":"array<"+t+">"}return e.kind}var Ct=[mt,gt,yt,xt,bt,Mt,_t,St(wt),At];function Lt(e,t){if("error"===t.kind)return null;if("array"===e.kind){if("array"===t.kind&&(0===t.N&&"value"===t.itemType.kind||!Lt(e.itemType,t.itemType))&&("number"!==typeof e.N||e.N===t.N))return null}else{if(e.kind===t.kind)return null;if("value"===e.kind)for(var r=0,n=Ct;r255?255:e}function i(e){return e<0?0:e>1?1:e}function a(e){return"%"===e[e.length-1]?n(parseFloat(e)/100*255):n(parseInt(e))}function o(e){return"%"===e[e.length-1]?i(parseFloat(e)/100):i(parseFloat(e))}function s(e,t,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?e+(t-e)*r*6:2*r<1?t:3*r<2?e+(t-e)*(2/3-r)*6:e}function l(e){var t,i=e.replace(/ /g,"").toLowerCase();if(i in r)return r[i].slice();if("#"===i[0])return 4===i.length?(t=parseInt(i.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===i.length&&(t=parseInt(i.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;var l=i.indexOf("("),u=i.indexOf(")");if(-1!==l&&u+1===i.length){var c=i.substr(0,l),f=i.substr(l+1,u-(l+1)).split(","),d=1;switch(c){case"rgba":if(4!==f.length)return null;d=o(f.pop());case"rgb":return 3!==f.length?null:[a(f[0]),a(f[1]),a(f[2]),d];case"hsla":if(4!==f.length)return null;d=o(f.pop());case"hsl":if(3!==f.length)return null;var h=(parseFloat(f[0])%360+360)%360/360,p=o(f[1]),v=o(f[2]),m=v<=.5?v*(p+1):v+p-v*p,g=2*v-m;return[n(255*s(g,m,h+1/3)),n(255*s(g,m,h)),n(255*s(g,m,h-1/3)),d];default:return null}}return null}try{t.parseCSSColor=l}catch(u){}})),Dt=It.parseCSSColor,Rt=function(e,t,r,n){void 0===n&&(n=1),this.r=e,this.g=t,this.b=r,this.a=n};Rt.parse=function(e){if(e){if(e instanceof Rt)return e;if("string"===typeof e){var t=Dt(e);if(t)return new Rt(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3])}}},Rt.prototype.toString=function(){var e=this.toArray(),t=e[0],r=e[1],n=e[2],i=e[3];return"rgba("+Math.round(t)+","+Math.round(r)+","+Math.round(n)+","+i+")"},Rt.prototype.toArray=function(){var e=this,t=e.r,r=e.g,n=e.b,i=e.a;return 0===i?[0,0,0,0]:[255*t/i,255*r/i,255*n/i,i]},Rt.black=new Rt(0,0,0,1),Rt.white=new Rt(1,1,1,1),Rt.transparent=new Rt(0,0,0,0),Rt.red=new Rt(1,0,0,1);var zt=function(e,t,r){this.sensitivity=e?t?"variant":"case":t?"accent":"base",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};zt.prototype.compare=function(e,t){return this.collator.compare(e,t)},zt.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Ft=function(e,t,r,n,i){this.text=e,this.image=t,this.scale=r,this.fontStack=n,this.textColor=i},Nt=function(e){this.sections=e};Nt.fromString=function(e){return new Nt([new Ft(e,null,null,null,null)])},Nt.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(e){return 0!==e.text.length||e.image&&0!==e.image.name.length}))},Nt.factory=function(e){return e instanceof Nt?e:Nt.fromString(e)},Nt.prototype.toString=function(){return 0===this.sections.length?"":this.sections.map((function(e){return e.text})).join("")},Nt.prototype.serialize=function(){for(var e=["format"],t=0,r=this.sections;t=0&&e<=255&&"number"===typeof t&&t>=0&&t<=255&&"number"===typeof r&&r>=0&&r<=255?"undefined"===typeof n||"number"===typeof n&&n>=0&&n<=1?null:"Invalid rgba value ["+[e,t,r,n].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+("number"===typeof n?[e,t,r,n]:[e,t,r]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function Ut(e){if(null===e)return!0;if("string"===typeof e)return!0;if("boolean"===typeof e)return!0;if("number"===typeof e)return!0;if(e instanceof Rt)return!0;if(e instanceof zt)return!0;if(e instanceof Nt)return!0;if(e instanceof Bt)return!0;if(Array.isArray(e)){for(var t=0,r=e;t2){var s=e[1];if("string"!==typeof s||!(s in Gt)||"object"===s)return t.error('The item type argument of "array" must be one of string, number, boolean',1);a=Gt[s],n++}else a=wt;if(e.length>3){if(null!==e[2]&&("number"!==typeof e[2]||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to "array" must be a positive integer literal',2);o=e[2],n++}r=St(a,o)}else r=Gt[i];for(var l=[];n1)&&t.push(n)}}return t.concat(this.args.map((function(e){return e.serialize()})))};var Zt=function(e){this.type=Mt,this.sections=e};Zt.parse=function(e,t){if(e.length<2)return t.error("Expected at least one argument.");var r=e[1];if(!Array.isArray(r)&&"object"===typeof r)return t.error("First argument must be an image or text section.");for(var n=[],i=!1,a=1;a<=e.length-1;++a){var o=e[a];if(i&&"object"===typeof o&&!Array.isArray(o)){i=!1;var s=null;if(o["font-scale"]&&!(s=t.parse(o["font-scale"],1,gt)))return null;var l=null;if(o["text-font"]&&!(l=t.parse(o["text-font"],1,St(yt))))return null;var u=null;if(o["text-color"]&&!(u=t.parse(o["text-color"],1,bt)))return null;var c=n[n.length-1];c.scale=s,c.font=l,c.textColor=u}else{var f=t.parse(e[a],1,wt);if(!f)return null;var d=f.type.kind;if("string"!==d&&"value"!==d&&"null"!==d&&"resolvedImage"!==d)return t.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,n.push({content:f,scale:null,font:null,textColor:null})}}return new Zt(n)},Zt.prototype.evaluate=function(e){var t=function(t){var r=t.content.evaluate(e);return Vt(r)===At?new Ft("",r,null,null,null):new Ft(Ht(r),null,t.scale?t.scale.evaluate(e):null,t.font?t.font.evaluate(e).join(","):null,t.textColor?t.textColor.evaluate(e):null)};return new Nt(this.sections.map(t))},Zt.prototype.eachChild=function(e){for(var t=0,r=this.sections;t-1),r},Xt.prototype.eachChild=function(e){e(this.input)},Xt.prototype.outputDefined=function(){return!1},Xt.prototype.serialize=function(){return["image",this.input.serialize()]};var Kt={"to-boolean":xt,"to-color":bt,"to-number":gt,"to-string":yt},$t=function(e,t){this.type=e,this.args=t};$t.parse=function(e,t){if(e.length<2)return t.error("Expected at least one argument.");var r=e[0];if(("to-boolean"===r||"to-string"===r)&&2!==e.length)return t.error("Expected one argument.");for(var n=Kt[r],i=[],a=1;a4?"Invalid rbga value "+JSON.stringify(t)+": expected an array containing either three or four numeric values.":jt(t[0],t[1],t[2],t[3])))return new Rt(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new Wt(r||"Could not parse color from value '"+("string"===typeof t?t:String(JSON.stringify(t)))+"'")}if("number"===this.type.kind){for(var o=null,s=0,l=this.args;s=t[2])&&!(e[1]<=t[1])&&!(e[3]>=t[3])}function lr(e,t){var r=ar(e[0]),n=or(e[1]),i=Math.pow(2,t.z);return[Math.round(r*i*nr),Math.round(n*i*nr)]}function ur(e,t,r){var n=e[0]-t[0],i=e[1]-t[1],a=e[0]-r[0],o=e[1]-r[1];return n*o-a*i===0&&n*a<=0&&i*o<=0}function cr(e,t,r){return t[1]>e[1]!==r[1]>e[1]&&e[0]<(r[0]-t[0])*(e[1]-t[1])/(r[1]-t[1])+t[0]}function fr(e,t){for(var r=!1,n=0,i=t.length;n0&&f<0||c<0&&f>0}function vr(e,t,r,n){var i=[t[0]-e[0],t[1]-e[1]];return 0!==hr([n[0]-r[0],n[1]-r[1]],i)&&!(!pr(e,t,r,n)||!pr(r,n,e,t))}function mr(e,t,r){for(var n=0,i=r;nr[2]){var i=.5*n,a=e[0]-r[0]>i?-n:r[0]-e[0]>i?n:0;0===a&&(a=e[0]-r[2]>i?-n:r[2]-e[0]>i?n:0),e[0]+=a}ir(t,e)}function wr(e){e[0]=e[1]=1/0,e[2]=e[3]=-1/0}function kr(e,t,r,n){for(var i=Math.pow(2,n.z)*nr,a=[n.x*nr,n.y*nr],o=[],s=0,l=e;s=0)return!1;var r=!0;return e.eachChild((function(e){r&&!Lr(e,t)&&(r=!1)})),r}Sr.parse=function(e,t){if(2!==e.length)return t.error("'within' expression requires exactly one argument, but found "+(e.length-1)+" instead.");if(Ut(e[1])){var r=e[1];if("FeatureCollection"===r.type)for(var n=0;nt))throw new Wt("Input is not a number.");o=s-1}return 0}Or.prototype.parse=function(e,t,r,n,i){return void 0===i&&(i={}),t?this.concat(t,r,n)._parse(e,i):this._parse(e,i)},Or.prototype._parse=function(e,t){function r(e,t,r){return"assert"===r?new Yt(t,[e]):"coerce"===r?new $t(t,[e]):e}if(null!==e&&"string"!==typeof e&&"boolean"!==typeof e&&"number"!==typeof e||(e=["literal",e]),Array.isArray(e)){if(0===e.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var n=e[0];if("string"!==typeof n)return this.error("Expression name must be a string, but found "+typeof n+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var i=this.registry[n];if(i){var a=i.parse(e,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=r(a,o,t.typeAnnotation||"coerce");else a=r(a,o,t.typeAnnotation||"assert")}if(!(a instanceof qt)&&"resolvedImage"!==a.type.kind&&Ir(a)){var l=new Qt;try{a=new qt(a.type,a.evaluate(l))}catch(u){return this.error(u.message),null}}return a}return this.error('Unknown expression "'+n+'". If you wanted a literal array, use ["literal", [...]].',0)}return"undefined"===typeof e?this.error("'undefined' value invalid. Use null instead."):"object"===typeof e?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof e+" instead.")},Or.prototype.concat=function(e,t,r){var n="number"===typeof e?this.path.concat(e):this.path,i=r?this.scope.concat(r):this.scope;return new Or(this.registry,n,t||null,i,this.errors)},Or.prototype.error=function(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];var n=""+this.key+t.map((function(e){return"["+e+"]"})).join("");this.errors.push(new pt(n,e))},Or.prototype.checkSubtype=function(e,t){var r=Lt(e,t);return r&&this.error(r),r};var Rr=function(e,t,r){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(var n=0,i=r;n=o)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',l);var c=t.parse(s,u,i);if(!c)return null;i=i||c.type,n.push([o,c])}return new Rr(i,r,n)},Rr.prototype.evaluate=function(e){var t=this.labels,r=this.outputs;if(1===t.length)return r[0].evaluate(e);var n=this.input.evaluate(e);if(n<=t[0])return r[0].evaluate(e);var i=t.length;return n>=t[i-1]?r[i-1].evaluate(e):r[Dr(t,n)].evaluate(e)},Rr.prototype.eachChild=function(e){e(this.input);for(var t=0,r=this.outputs;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e};var Br=Object.freeze({__proto__:null,number:zr,color:Fr,array:Nr}),jr=.95047,Ur=1,Vr=1.08883,Hr=4/29,qr=6/29,Wr=3*qr*qr,Gr=qr*qr*qr,Yr=Math.PI/180,Zr=180/Math.PI;function Xr(e){return e>Gr?Math.pow(e,1/3):e/Wr+Hr}function Kr(e){return e>qr?e*e*e:Wr*(e-Hr)}function $r(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Jr(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function Qr(e){var t=Jr(e.r),r=Jr(e.g),n=Jr(e.b),i=Xr((.4124564*t+.3575761*r+.1804375*n)/jr),a=Xr((.2126729*t+.7151522*r+.072175*n)/Ur);return{l:116*a-16,a:500*(i-a),b:200*(a-Xr((.0193339*t+.119192*r+.9503041*n)/Vr)),alpha:e.a}}function en(e){var t=(e.l+16)/116,r=isNaN(e.a)?t:t+e.a/500,n=isNaN(e.b)?t:t-e.b/200;return t=Ur*Kr(t),r=jr*Kr(r),n=Vr*Kr(n),new Rt($r(3.2404542*r-1.5371385*t-.4985314*n),$r(-.969266*r+1.8760108*t+.041556*n),$r(.0556434*r-.2040259*t+1.0572252*n),e.alpha)}function tn(e,t,r){return{l:zr(e.l,t.l,r),a:zr(e.a,t.a,r),b:zr(e.b,t.b,r),alpha:zr(e.alpha,t.alpha,r)}}function rn(e){var t=Qr(e),r=t.l,n=t.a,i=t.b,a=Math.atan2(i,n)*Zr;return{h:a<0?a+360:a,c:Math.sqrt(n*n+i*i),l:r,alpha:e.a}}function nn(e){var t=e.h*Yr,r=e.c;return en({l:e.l,a:Math.cos(t)*r,b:Math.sin(t)*r,alpha:e.alpha})}function an(e,t,r){var n=t-e;return e+r*(n>180||n<-180?n-360*Math.round(n/360):n)}function on(e,t,r){return{h:an(e.h,t.h,r),c:zr(e.c,t.c,r),l:zr(e.l,t.l,r),alpha:zr(e.alpha,t.alpha,r)}}var sn={forward:Qr,reverse:en,interpolate:tn},ln={forward:rn,reverse:nn,interpolate:on},un=Object.freeze({__proto__:null,lab:sn,hcl:ln}),cn=function(e,t,r,n,i){this.type=e,this.operator=t,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var a=0,o=i;a1})))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);n={name:"cubic-bezier",controlPoints:s}}if(e.length-1<4)return t.error("Expected at least 4 arguments, but found only "+(e.length-1)+".");if((e.length-1)%2!==0)return t.error("Expected an even number of arguments.");if(!(i=t.parse(i,2,gt)))return null;var l=[],u=null;"interpolate-hcl"===r||"interpolate-lab"===r?u=bt:t.expectedType&&"value"!==t.expectedType.kind&&(u=t.expectedType);for(var c=0;c=f)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',h);var v=t.parse(d,p,u);if(!v)return null;u=u||v.type,l.push([f,v])}return"number"===u.kind||"color"===u.kind||"array"===u.kind&&"number"===u.itemType.kind&&"number"===typeof u.N?new cn(u,r,n,i,l):t.error("Type "+Et(u)+" is not interpolatable.")},cn.prototype.evaluate=function(e){var t=this.labels,r=this.outputs;if(1===t.length)return r[0].evaluate(e);var n=this.input.evaluate(e);if(n<=t[0])return r[0].evaluate(e);var i=t.length;if(n>=t[i-1])return r[i-1].evaluate(e);var a=Dr(t,n),o=t[a],s=t[a+1],l=cn.interpolationFactor(this.interpolation,n,o,s),u=r[a].evaluate(e),c=r[a+1].evaluate(e);return"interpolate"===this.operator?Br[this.type.kind.toLowerCase()](u,c,l):"interpolate-hcl"===this.operator?ln.reverse(ln.interpolate(ln.forward(u),ln.forward(c),l)):sn.reverse(sn.interpolate(sn.forward(u),sn.forward(c),l))},cn.prototype.eachChild=function(e){e(this.input);for(var t=0,r=this.outputs;t=r.length)throw new Wt("Array index out of bounds: "+t+" > "+(r.length-1)+".");if(t!==Math.floor(t))throw new Wt("Array index must be an integer, but found "+t+" instead.");return r[t]},pn.prototype.eachChild=function(e){e(this.index),e(this.input)},pn.prototype.outputDefined=function(){return!1},pn.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var vn=function(e,t){this.type=xt,this.needle=e,this.haystack=t};vn.parse=function(e,t){if(3!==e.length)return t.error("Expected 2 arguments, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1,wt),n=t.parse(e[2],2,wt);return r&&n?Pt(r.type,[xt,yt,gt,mt,wt])?new vn(r,n):t.error("Expected first argument to be of type boolean, string, number or null, but found "+Et(r.type)+" instead"):null},vn.prototype.evaluate=function(e){var t=this.needle.evaluate(e),r=this.haystack.evaluate(e);if(!r)return!1;if(!Ot(t,["boolean","string","number","null"]))throw new Wt("Expected first argument to be of type boolean, string, number or null, but found "+Et(Vt(t))+" instead.");if(!Ot(r,["string","array"]))throw new Wt("Expected second argument to be of type array or string, but found "+Et(Vt(r))+" instead.");return r.indexOf(t)>=0},vn.prototype.eachChild=function(e){e(this.needle),e(this.haystack)},vn.prototype.outputDefined=function(){return!0},vn.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var mn=function(e,t,r){this.type=gt,this.needle=e,this.haystack=t,this.fromIndex=r};mn.parse=function(e,t){if(e.length<=2||e.length>=5)return t.error("Expected 3 or 4 arguments, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1,wt),n=t.parse(e[2],2,wt);if(!r||!n)return null;if(!Pt(r.type,[xt,yt,gt,mt,wt]))return t.error("Expected first argument to be of type boolean, string, number or null, but found "+Et(r.type)+" instead");if(4===e.length){var i=t.parse(e[3],3,gt);return i?new mn(r,n,i):null}return new mn(r,n)},mn.prototype.evaluate=function(e){var t=this.needle.evaluate(e),r=this.haystack.evaluate(e);if(!Ot(t,["boolean","string","number","null"]))throw new Wt("Expected first argument to be of type boolean, string, number or null, but found "+Et(Vt(t))+" instead.");if(!Ot(r,["string","array"]))throw new Wt("Expected second argument to be of type array or string, but found "+Et(Vt(r))+" instead.");if(this.fromIndex){var n=this.fromIndex.evaluate(e);return r.indexOf(t,n)}return r.indexOf(t)},mn.prototype.eachChild=function(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)},mn.prototype.outputDefined=function(){return!1},mn.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var gn=function(e,t,r,n,i,a){this.inputType=e,this.type=t,this.input=r,this.cases=n,this.outputs=i,this.otherwise=a};gn.parse=function(e,t){if(e.length<5)return t.error("Expected at least 4 arguments, but found only "+(e.length-1)+".");if(e.length%2!==1)return t.error("Expected an even number of arguments.");var r,n;t.expectedType&&"value"!==t.expectedType.kind&&(n=t.expectedType);for(var i={},a=[],o=2;oNumber.MAX_SAFE_INTEGER)return u.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if("number"===typeof d&&Math.floor(d)!==d)return u.error("Numeric branch labels must be integer values.");if(r){if(u.checkSubtype(r,Vt(d)))return null}else r=Vt(d);if("undefined"!==typeof i[String(d)])return u.error("Branch labels must be unique.");i[String(d)]=a.length}var h=t.parse(l,o,n);if(!h)return null;n=n||h.type,a.push(h)}var p=t.parse(e[1],1,wt);if(!p)return null;var v=t.parse(e[e.length-1],e.length-1,n);return v?"value"!==p.type.kind&&t.concat(1).checkSubtype(r,p.type)?null:new gn(r,n,p,i,a,v):null},gn.prototype.evaluate=function(e){var t=this.input.evaluate(e);return(Vt(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)},gn.prototype.eachChild=function(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)},gn.prototype.outputDefined=function(){return this.outputs.every((function(e){return e.outputDefined()}))&&this.otherwise.outputDefined()},gn.prototype.serialize=function(){for(var e=this,t=["match",this.input.serialize()],r=[],n={},i=0,a=Object.keys(this.cases).sort();ir}function Mn(e,t,r){return t<=r}function An(e,t,r){return t>=r}function Sn(e,t,r,n){return 0===n.compare(t,r)}function En(e,t,r,n){return!Sn(e,t,r,n)}function Cn(e,t,r,n){return n.compare(t,r)<0}function Ln(e,t,r,n){return n.compare(t,r)>0}function Pn(e,t,r,n){return n.compare(t,r)<=0}function On(e,t,r,n){return n.compare(t,r)>=0}function In(e,t,r){var n="=="!==e&&"!="!==e;return function(){function i(e,t,r){this.type=xt,this.lhs=e,this.rhs=t,this.collator=r,this.hasUntypedArgument="value"===e.type.kind||"value"===t.type.kind}return i.parse=function(e,t){if(3!==e.length&&4!==e.length)return t.error("Expected two or three arguments.");var r=e[0],a=t.parse(e[1],1,wt);if(!a)return null;if(!bn(r,a.type))return t.concat(1).error('"'+r+"\" comparisons are not supported for type '"+Et(a.type)+"'.");var o=t.parse(e[2],2,wt);if(!o)return null;if(!bn(r,o.type))return t.concat(2).error('"'+r+"\" comparisons are not supported for type '"+Et(o.type)+"'.");if(a.type.kind!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return t.error("Cannot compare types '"+Et(a.type)+"' and '"+Et(o.type)+"'.");n&&("value"===a.type.kind&&"value"!==o.type.kind?a=new Yt(o.type,[a]):"value"!==a.type.kind&&"value"===o.type.kind&&(o=new Yt(a.type,[o])));var s=null;if(4===e.length){if("string"!==a.type.kind&&"string"!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return t.error("Cannot use collator to compare non-string types.");if(!(s=t.parse(e[3],3,Tt)))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(n&&this.hasUntypedArgument){var s=Vt(a),l=Vt(o);if(s.kind!==l.kind||"string"!==s.kind&&"number"!==s.kind)throw new Wt('Expected arguments for "'+e+'" to be (string, string) or (number, number), but found ('+s.kind+", "+l.kind+") instead.")}if(this.collator&&!n&&this.hasUntypedArgument){var u=Vt(a),c=Vt(o);if("string"!==u.kind||"string"!==c.kind)return t(i,a,o)}return this.collator?r(i,a,o,this.collator.evaluate(i)):t(i,a,o)},i.prototype.eachChild=function(e){e(this.lhs),e(this.rhs),this.collator&&e(this.collator)},i.prototype.outputDefined=function(){return!0},i.prototype.serialize=function(){var t=[e];return this.eachChild((function(e){t.push(e.serialize())})),t},i}()}xn.parse=function(e,t){if(e.length<=2||e.length>=5)return t.error("Expected 3 or 4 arguments, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1,wt),n=t.parse(e[2],2,gt);if(!r||!n)return null;if(!Pt(r.type,[St(wt),yt,wt]))return t.error("Expected first argument to be of type array or string, but found "+Et(r.type)+" instead");if(4===e.length){var i=t.parse(e[3],3,gt);return i?new xn(r.type,r,n,i):null}return new xn(r.type,r,n)},xn.prototype.evaluate=function(e){var t=this.input.evaluate(e),r=this.beginIndex.evaluate(e);if(!Ot(t,["string","array"]))throw new Wt("Expected first argument to be of type array or string, but found "+Et(Vt(t))+" instead.");if(this.endIndex){var n=this.endIndex.evaluate(e);return t.slice(r,n)}return t.slice(r)},xn.prototype.eachChild=function(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)},xn.prototype.outputDefined=function(){return!1},xn.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};var Dn=In("==",_n,Sn),Rn=In("!=",wn,En),zn=In("<",kn,Cn),Fn=In(">",Tn,Ln),Nn=In("<=",Mn,Pn),Bn=In(">=",An,On),jn=function(e,t,r,n,i){this.type=yt,this.number=e,this.locale=t,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i};jn.parse=function(e,t){if(3!==e.length)return t.error("Expected two arguments.");var r=t.parse(e[1],1,gt);if(!r)return null;var n=e[2];if("object"!==typeof n||Array.isArray(n))return t.error("NumberFormat options argument must be an object.");var i=null;if(n.locale&&!(i=t.parse(n.locale,1,yt)))return null;var a=null;if(n.currency&&!(a=t.parse(n.currency,1,yt)))return null;var o=null;if(n["min-fraction-digits"]&&!(o=t.parse(n["min-fraction-digits"],1,gt)))return null;var s=null;return n["max-fraction-digits"]&&!(s=t.parse(n["max-fraction-digits"],1,gt))?null:new jn(r,i,a,o,s)},jn.prototype.evaluate=function(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))},jn.prototype.eachChild=function(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)},jn.prototype.outputDefined=function(){return!1},jn.prototype.serialize=function(){var e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]};var Un=function(e){this.type=gt,this.input=e};Un.parse=function(e,t){if(2!==e.length)return t.error("Expected 1 argument, but found "+(e.length-1)+" instead.");var r=t.parse(e[1],1);return r?"array"!==r.type.kind&&"string"!==r.type.kind&&"value"!==r.type.kind?t.error("Expected argument of type string or array, but found "+Et(r.type)+" instead."):new Un(r):null},Un.prototype.evaluate=function(e){var t=this.input.evaluate(e);if("string"===typeof t)return t.length;if(Array.isArray(t))return t.length;throw new Wt("Expected value to be of type string or array, but found "+Et(Vt(t))+" instead.")},Un.prototype.eachChild=function(e){e(this.input)},Un.prototype.outputDefined=function(){return!1},Un.prototype.serialize=function(){var e=["length"];return this.eachChild((function(t){e.push(t.serialize())})),e};var Vn={"==":Dn,"!=":Rn,">":Fn,"<":zn,">=":Bn,"<=":Nn,array:Yt,at:pn,boolean:Yt,case:yn,coalesce:dn,collator:rr,format:Zt,image:Xt,in:vn,"index-of":mn,interpolate:cn,"interpolate-hcl":cn,"interpolate-lab":cn,length:Un,let:hn,literal:qt,match:gn,number:Yt,"number-format":jn,object:Yt,slice:xn,step:Rr,string:Yt,"to-boolean":$t,"to-color":$t,"to-number":$t,"to-string":$t,var:Pr,within:Sr};function Hn(e,t){var r=t[0],n=t[1],i=t[2],a=t[3];r=r.evaluate(e),n=n.evaluate(e),i=i.evaluate(e);var o=a?a.evaluate(e):1,s=jt(r,n,i,o);if(s)throw new Wt(s);return new Rt(r/255*o,n/255*o,i/255*o,o)}function qn(e,t){return e in t}function Wn(e,t){var r=t[e];return"undefined"===typeof r?null:r}function Gn(e,t,r,n){for(;r<=n;){var i=r+n>>1;if(t[i]===e)return!0;t[i]>e?n=i-1:r=i+1}return!1}function Yn(e){return{type:e}}function Zn(e){return{result:"success",value:e}}function Xn(e){return{result:"error",value:e}}function Kn(e){return"data-driven"===e["property-type"]||"cross-faded-data-driven"===e["property-type"]}function $n(e){return!!e.expression&&e.expression.parameters.indexOf("zoom")>-1}function Jn(e){return!!e.expression&&e.expression.interpolated}function Qn(e){return e instanceof Number?"number":e instanceof String?"string":e instanceof Boolean?"boolean":Array.isArray(e)?"array":null===e?"null":typeof e}function ei(e){return"object"===typeof e&&null!==e&&!Array.isArray(e)}function ti(e){return e}function ri(e,t){var r,n,i,a="color"===t.type,o=e.stops&&"object"===typeof e.stops[0][0],s=o||void 0!==e.property,l=o||!s,u=e.type||(Jn(t)?"exponential":"interval");if(a&&((e=ft({},e)).stops&&(e.stops=e.stops.map((function(e){return[e[0],Rt.parse(e[1])]}))),e.default?e.default=Rt.parse(e.default):e.default=Rt.parse(t.default)),e.colorSpace&&"rgb"!==e.colorSpace&&!un[e.colorSpace])throw new Error("Unknown color space: "+e.colorSpace);if("exponential"===u)r=oi;else if("interval"===u)r=ai;else if("categorical"===u){r=ii,n=Object.create(null);for(var c=0,f=e.stops;c=e.stops[n-1][0])return e.stops[n-1][1];var i=Dr(e.stops.map((function(e){return e[0]})),r);return e.stops[i][1]}function oi(e,t,r){var n=void 0!==e.base?e.base:1;if("number"!==Qn(r))return ni(e.default,t.default);var i=e.stops.length;if(1===i)return e.stops[0][1];if(r<=e.stops[0][0])return e.stops[0][1];if(r>=e.stops[i-1][0])return e.stops[i-1][1];var a=Dr(e.stops.map((function(e){return e[0]})),r),o=li(r,n,e.stops[a][0],e.stops[a+1][0]),s=e.stops[a][1],l=e.stops[a+1][1],u=Br[t.type]||ti;if(e.colorSpace&&"rgb"!==e.colorSpace){var c=un[e.colorSpace];u=function(e,t){return c.reverse(c.interpolate(c.forward(e),c.forward(t),o))}}return"function"===typeof s.evaluate?{evaluate:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var r=s.evaluate.apply(void 0,e),n=l.evaluate.apply(void 0,e);if(void 0!==r&&void 0!==n)return u(r,n,o)}}:u(s,l,o)}function si(e,t,r){return"color"===t.type?r=Rt.parse(r):"formatted"===t.type?r=Nt.fromString(r.toString()):"resolvedImage"===t.type?r=Bt.fromString(r.toString()):Qn(r)===t.type||"enum"===t.type&&t.values[r]||(r=void 0),ni(r,e.default,t.default)}function li(e,t,r,n){var i=n-r,a=e-r;return 0===i?0:1===t?a/i:(Math.pow(t,a)-1)/(Math.pow(t,i)-1)}er.register(Vn,{error:[kt,[yt],function(e,t){var r=t[0];throw new Wt(r.evaluate(e))}],typeof:[yt,[wt],function(e,t){return Et(Vt(t[0].evaluate(e)))}],"to-rgba":[St(gt,4),[bt],function(e,t){return t[0].evaluate(e).toArray()}],rgb:[bt,[gt,gt,gt],Hn],rgba:[bt,[gt,gt,gt,gt],Hn],has:{type:xt,overloads:[[[yt],function(e,t){return qn(t[0].evaluate(e),e.properties())}],[[yt,_t],function(e,t){var r=t[0],n=t[1];return qn(r.evaluate(e),n.evaluate(e))}]]},get:{type:wt,overloads:[[[yt],function(e,t){return Wn(t[0].evaluate(e),e.properties())}],[[yt,_t],function(e,t){var r=t[0],n=t[1];return Wn(r.evaluate(e),n.evaluate(e))}]]},"feature-state":[wt,[yt],function(e,t){return Wn(t[0].evaluate(e),e.featureState||{})}],properties:[_t,[],function(e){return e.properties()}],"geometry-type":[yt,[],function(e){return e.geometryType()}],id:[wt,[],function(e){return e.id()}],zoom:[gt,[],function(e){return e.globals.zoom}],"heatmap-density":[gt,[],function(e){return e.globals.heatmapDensity||0}],"line-progress":[gt,[],function(e){return e.globals.lineProgress||0}],accumulated:[wt,[],function(e){return void 0===e.globals.accumulated?null:e.globals.accumulated}],"+":[gt,Yn(gt),function(e,t){for(var r=0,n=0,i=t;n":[xt,[yt,wt],function(e,t){var r=t[0],n=t[1],i=e.properties()[r.value],a=n.value;return typeof i===typeof a&&i>a}],"filter-id->":[xt,[wt],function(e,t){var r=t[0],n=e.id(),i=r.value;return typeof n===typeof i&&n>i}],"filter-<=":[xt,[yt,wt],function(e,t){var r=t[0],n=t[1],i=e.properties()[r.value],a=n.value;return typeof i===typeof a&&i<=a}],"filter-id-<=":[xt,[wt],function(e,t){var r=t[0],n=e.id(),i=r.value;return typeof n===typeof i&&n<=i}],"filter->=":[xt,[yt,wt],function(e,t){var r=t[0],n=t[1],i=e.properties()[r.value],a=n.value;return typeof i===typeof a&&i>=a}],"filter-id->=":[xt,[wt],function(e,t){var r=t[0],n=e.id(),i=r.value;return typeof n===typeof i&&n>=i}],"filter-has":[xt,[wt],function(e,t){return t[0].value in e.properties()}],"filter-has-id":[xt,[],function(e){return null!==e.id()&&void 0!==e.id()}],"filter-type-in":[xt,[St(yt)],function(e,t){return t[0].value.indexOf(e.geometryType())>=0}],"filter-id-in":[xt,[St(wt)],function(e,t){return t[0].value.indexOf(e.id())>=0}],"filter-in-small":[xt,[yt,St(wt)],function(e,t){var r=t[0];return t[1].value.indexOf(e.properties()[r.value])>=0}],"filter-in-large":[xt,[yt,St(wt)],function(e,t){var r=t[0],n=t[1];return Gn(e.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:xt,overloads:[[[xt,xt],function(e,t){var r=t[0],n=t[1];return r.evaluate(e)&&n.evaluate(e)}],[Yn(xt),function(e,t){for(var r=0,n=t;r0&&"string"===typeof e[0]&&e[0]in Vn}function fi(e,t){var r=new Or(Vn,[],t?yi(t):void 0),n=r.parse(e,void 0,void 0,void 0,t&&"string"===t.type?{typeAnnotation:"coerce"}:void 0);return n?Zn(new ui(n,t)):Xn(r.errors)}ui.prototype.evaluateWithoutErrorHandling=function(e,t,r,n,i,a){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)},ui.prototype.evaluate=function(e,t,r,n,i,a){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,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 Wt("Expected value to be one of "+Object.keys(this._enumValues).map((function(e){return JSON.stringify(e)})).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 di=function(e,t){this.kind=e,this._styleExpression=t,this.isStateDependent="constant"!==e&&!Cr(t.expression)};di.prototype.evaluateWithoutErrorHandling=function(e,t,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(e,t,r,n,i,a)},di.prototype.evaluate=function(e,t,r,n,i,a){return this._styleExpression.evaluate(e,t,r,n,i,a)};var hi=function(e,t,r,n){this.kind=e,this.zoomStops=r,this._styleExpression=t,this.isStateDependent="camera"!==e&&!Cr(t.expression),this.interpolationType=n};function pi(e,t){if("error"===(e=fi(e,t)).result)return e;var r=e.value.expression,n=Er(r);if(!n&&!Kn(t))return Xn([new pt("","data expressions not supported")]);var i=Lr(r,["zoom"]);if(!i&&!$n(t))return Xn([new pt("","zoom expressions not supported")]);var a=gi(r);if(!a&&!i)return Xn([new pt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(a instanceof pt)return Xn([a]);if(a instanceof cn&&!Jn(t))return Xn([new pt("",'"interpolate" expressions cannot be used with this property')]);if(!a)return Zn(new di(n?"constant":"source",e.value));var o=a instanceof cn?a.interpolation:void 0;return Zn(new hi(n?"camera":"composite",e.value,a.labels,o))}hi.prototype.evaluateWithoutErrorHandling=function(e,t,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(e,t,r,n,i,a)},hi.prototype.evaluate=function(e,t,r,n,i,a){return this._styleExpression.evaluate(e,t,r,n,i,a)},hi.prototype.interpolationFactor=function(e,t,r){return this.interpolationType?cn.interpolationFactor(this.interpolationType,e,t,r):0};var vi=function(e,t){this._parameters=e,this._specification=t,ft(this,ri(this._parameters,this._specification))};function mi(e,t){if(ei(e))return new vi(e,t);if(ci(e)){var r=pi(e,t);if("error"===r.result)throw new Error(r.value.map((function(e){return e.key+": "+e.message})).join(", "));return r.value}var n=e;return"string"===typeof e&&"color"===t.type&&(n=Rt.parse(e)),{kind:"constant",evaluate:function(){return n}}}function gi(e){var t=null;if(e instanceof hn)t=gi(e.result);else if(e instanceof dn)for(var r=0,n=e.args;rn.maximum?[new ut(t,r,r+" is greater than the maximum value "+n.maximum)]:[]}function ki(e){var t,r,n,i=e.valueSpec,a=dt(e.value.type),o={},s="categorical"!==a&&void 0===e.value.property,l=!s,u="array"===Qn(e.value.stops)&&"array"===Qn(e.value.stops[0])&&"object"===Qn(e.value.stops[0][0]),c=bi({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:f,default:p}});return"identity"===a&&s&&c.push(new ut(e.key,e.value,'missing required property "property"')),"identity"===a||e.value.stops||c.push(new ut(e.key,e.value,'missing required property "stops"')),"exponential"===a&&e.valueSpec.expression&&!Jn(e.valueSpec)&&c.push(new ut(e.key,e.value,"exponential functions not supported")),e.styleSpec.$version>=8&&(l&&!Kn(e.valueSpec)?c.push(new ut(e.key,e.value,"property functions not supported")):s&&!$n(e.valueSpec)&&c.push(new ut(e.key,e.value,"zoom functions not supported"))),"categorical"!==a&&!u||void 0!==e.value.property||c.push(new ut(e.key,e.value,'"property" property is required')),c;function f(e){if("identity"===a)return[new ut(e.key,e.value,'identity function may not have a "stops" property')];var t=[],r=e.value;return t=t.concat(_i({key:e.key,value:r,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:d})),"array"===Qn(r)&&0===r.length&&t.push(new ut(e.key,r,"array must have at least one stop")),t}function d(e){var t=[],a=e.value,s=e.key;if("array"!==Qn(a))return[new ut(s,a,"array expected, "+Qn(a)+" found")];if(2!==a.length)return[new ut(s,a,"array length 2 expected, length "+a.length+" found")];if(u){if("object"!==Qn(a[0]))return[new ut(s,a,"object expected, "+Qn(a[0])+" found")];if(void 0===a[0].zoom)return[new ut(s,a,"object stop key must have zoom")];if(void 0===a[0].value)return[new ut(s,a,"object stop key must have value")];if(n&&n>dt(a[0].zoom))return[new ut(s,a[0].zoom,"stop zoom values must appear in ascending order")];dt(a[0].zoom)!==n&&(n=dt(a[0].zoom),r=void 0,o={}),t=t.concat(bi({key:s+"[0]",value:a[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:wi,value:h}}))}else t=t.concat(h({key:s+"[0]",value:a[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec},a));return ci(ht(a[1]))?t.concat([new ut(s+"[1]",a[1],"expressions are not allowed in function stops.")]):t.concat(Qi({key:s+"[1]",value:a[1],valueSpec:i,style:e.style,styleSpec:e.styleSpec}))}function h(e,n){var s=Qn(e.value),l=dt(e.value),u=null!==e.value?e.value:n;if(t){if(s!==t)return[new ut(e.key,u,s+" stop domain type must match previous stop domain type "+t)]}else t=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new ut(e.key,u,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==a){var c="number expected, "+s+" found";return Kn(i)&&void 0===a&&(c+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ut(e.key,u,c)]}return"categorical"!==a||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==a&&"number"===s&&void 0!==r&&l=2&&"$id"!==e[1]&&"$type"!==e[1];case"in":return e.length>=3&&("string"!==typeof e[1]||Array.isArray(e[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==e.length||Array.isArray(e[1])||Array.isArray(e[2]);case"any":case"all":for(var t=0,r=e.slice(1);tt?1:0}function Oi(e){if(!Array.isArray(e))return!1;if("within"===e[0])return!0;for(var t=1;t"===t||"<="===t||">="===t?Di(e[1],e[2],t):"any"===t?Ri(e.slice(1)):"all"===t?["all"].concat(e.slice(1).map(Ii)):"none"===t?["all"].concat(e.slice(1).map(Ii).map(Ni)):"in"===t?zi(e[1],e.slice(2)):"!in"===t?Ni(zi(e[1],e.slice(2))):"has"===t?Fi(e[1]):"!has"===t?Ni(Fi(e[1])):"within"!==t||e}function Di(e,t,r){switch(e){case"$type":return["filter-type-"+r,t];case"$id":return["filter-id-"+r,t];default:return["filter-"+r,e,t]}}function Ri(e){return["any"].concat(e.map(Ii))}function zi(e,t){if(0===t.length)return!1;switch(e){case"$type":return["filter-type-in",["literal",t]];case"$id":return["filter-id-in",["literal",t]];default:return t.length>200&&!t.some((function(e){return typeof e!==typeof t[0]}))?["filter-in-large",e,["literal",t.sort(Pi)]]:["filter-in-small",e,["literal",t]]}}function Fi(e){switch(e){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",e]}}function Ni(e){return["!",e]}function Bi(e){return Ei(ht(e.value))?Ti(ft({},e,{expressionContext:"filter",valueSpec:{value:"boolean"}})):ji(e)}function ji(e){var t=e.value,r=e.key;if("array"!==Qn(t))return[new ut(r,t,"array expected, "+Qn(t)+" found")];var n,i=e.styleSpec,a=[];if(t.length<1)return[new ut(r,t,"filter array must have at least 1 element")];switch(a=a.concat(Si({key:r+"[0]",value:t[0],valueSpec:i.filter_operator,style:e.style,styleSpec:e.styleSpec})),dt(t[0])){case"<":case"<=":case">":case">=":t.length>=2&&"$type"===dt(t[1])&&a.push(new ut(r,t,'"$type" cannot be use with operator "'+t[0]+'"'));case"==":case"!=":3!==t.length&&a.push(new ut(r,t,'filter array for operator "'+t[0]+'" must have 3 elements'));case"in":case"!in":t.length>=2&&"string"!==(n=Qn(t[1]))&&a.push(new ut(r+"[1]",t[1],"string expected, "+n+" found"));for(var o=2;o=c[h+0]&&n>=c[h+1])?(o[d]=!0,a.push(u[d])):o[d]=!1}}},fa.prototype._forEachCell=function(e,t,r,n,i,a,o,s){for(var l=this._convertToCellCoord(e),u=this._convertToCellCoord(t),c=this._convertToCellCoord(r),f=this._convertToCellCoord(n),d=l;d<=c;d++)for(var h=u;h<=f;h++){var p=this.d*h+d;if((!s||s(this._convertFromCellCoord(d),this._convertFromCellCoord(h),this._convertFromCellCoord(d+1),this._convertFromCellCoord(h+1)))&&i.call(this,e,t,r,n,p,a,o,s))return}},fa.prototype._convertFromCellCoord=function(e){return(e-this.padding)/this.scale},fa.prototype._convertToCellCoord=function(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding))},fa.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var e=this.cells,t=ca+this.cells.length+1+1,r=0,n=0;n=0)){var f=e[c];u[c]=pa[l].shallow.indexOf(c)>=0?f:xa(f,t)}e instanceof Error&&(u.message=e.message)}if(u.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==l&&(u.$name=l),u}throw new Error("can't serialize object of type "+typeof e)}function ba(e){if(null===e||void 0===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||e instanceof Boolean||e instanceof Number||e instanceof String||e instanceof Date||e instanceof RegExp||ga(e)||ya(e)||ArrayBuffer.isView(e)||e instanceof da)return e;if(Array.isArray(e))return e.map(ba);if("object"===typeof e){var t=e.$name||"Object",r=pa[t].klass;if(!r)throw new Error("can't deserialize unregistered class "+t);if(r.deserialize)return r.deserialize(e);for(var n=Object.create(r.prototype),i=0,a=Object.keys(e);i=0?s:ba(s)}}return n}throw new Error("can't deserialize object of type "+typeof e)}var _a=function(){this.first=!0};_a.prototype.update=function(e,t){var r=Math.floor(e);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=e,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=t):this.lastFloorZoom=128&&e<=255},Arabic:function(e){return e>=1536&&e<=1791},"Arabic Supplement":function(e){return e>=1872&&e<=1919},"Arabic Extended-A":function(e){return e>=2208&&e<=2303},"Hangul Jamo":function(e){return e>=4352&&e<=4607},"Unified Canadian Aboriginal Syllabics":function(e){return e>=5120&&e<=5759},Khmer:function(e){return e>=6016&&e<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(e){return e>=6320&&e<=6399},"General Punctuation":function(e){return e>=8192&&e<=8303},"Letterlike Symbols":function(e){return e>=8448&&e<=8527},"Number Forms":function(e){return e>=8528&&e<=8591},"Miscellaneous Technical":function(e){return e>=8960&&e<=9215},"Control Pictures":function(e){return e>=9216&&e<=9279},"Optical Character Recognition":function(e){return e>=9280&&e<=9311},"Enclosed Alphanumerics":function(e){return e>=9312&&e<=9471},"Geometric Shapes":function(e){return e>=9632&&e<=9727},"Miscellaneous Symbols":function(e){return e>=9728&&e<=9983},"Miscellaneous Symbols and Arrows":function(e){return e>=11008&&e<=11263},"CJK Radicals Supplement":function(e){return e>=11904&&e<=12031},"Kangxi Radicals":function(e){return e>=12032&&e<=12255},"Ideographic Description Characters":function(e){return e>=12272&&e<=12287},"CJK Symbols and Punctuation":function(e){return e>=12288&&e<=12351},Hiragana:function(e){return e>=12352&&e<=12447},Katakana:function(e){return e>=12448&&e<=12543},Bopomofo:function(e){return e>=12544&&e<=12591},"Hangul Compatibility Jamo":function(e){return e>=12592&&e<=12687},Kanbun:function(e){return e>=12688&&e<=12703},"Bopomofo Extended":function(e){return e>=12704&&e<=12735},"CJK Strokes":function(e){return e>=12736&&e<=12783},"Katakana Phonetic Extensions":function(e){return e>=12784&&e<=12799},"Enclosed CJK Letters and Months":function(e){return e>=12800&&e<=13055},"CJK Compatibility":function(e){return e>=13056&&e<=13311},"CJK Unified Ideographs Extension A":function(e){return e>=13312&&e<=19903},"Yijing Hexagram Symbols":function(e){return e>=19904&&e<=19967},"CJK Unified Ideographs":function(e){return e>=19968&&e<=40959},"Yi Syllables":function(e){return e>=40960&&e<=42127},"Yi Radicals":function(e){return e>=42128&&e<=42191},"Hangul Jamo Extended-A":function(e){return e>=43360&&e<=43391},"Hangul Syllables":function(e){return e>=44032&&e<=55215},"Hangul Jamo Extended-B":function(e){return e>=55216&&e<=55295},"Private Use Area":function(e){return e>=57344&&e<=63743},"CJK Compatibility Ideographs":function(e){return e>=63744&&e<=64255},"Arabic Presentation Forms-A":function(e){return e>=64336&&e<=65023},"Vertical Forms":function(e){return e>=65040&&e<=65055},"CJK Compatibility Forms":function(e){return e>=65072&&e<=65103},"Small Form Variants":function(e){return e>=65104&&e<=65135},"Arabic Presentation Forms-B":function(e){return e>=65136&&e<=65279},"Halfwidth and Fullwidth Forms":function(e){return e>=65280&&e<=65519}};function ka(e){for(var t=0,r=e;t=65097&&e<=65103)||!!wa["CJK Compatibility Ideographs"](e)||!!wa["CJK Compatibility"](e)||!!wa["CJK Radicals Supplement"](e)||!!wa["CJK Strokes"](e)||!(!wa["CJK Symbols and Punctuation"](e)||e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||!!wa["CJK Unified Ideographs Extension A"](e)||!!wa["CJK Unified Ideographs"](e)||!!wa["Enclosed CJK Letters and Months"](e)||!!wa["Hangul Compatibility Jamo"](e)||!!wa["Hangul Jamo Extended-A"](e)||!!wa["Hangul Jamo Extended-B"](e)||!!wa["Hangul Jamo"](e)||!!wa["Hangul Syllables"](e)||!!wa.Hiragana(e)||!!wa["Ideographic Description Characters"](e)||!!wa.Kanbun(e)||!!wa["Kangxi Radicals"](e)||!!wa["Katakana Phonetic Extensions"](e)||!(!wa.Katakana(e)||12540===e)||!(!wa["Halfwidth and Fullwidth Forms"](e)||65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||!(!wa["Small Form Variants"](e)||e>=65112&&e<=65118||e>=65123&&e<=65126)||!!wa["Unified Canadian Aboriginal Syllabics"](e)||!!wa["Unified Canadian Aboriginal Syllabics Extended"](e)||!!wa["Vertical Forms"](e)||!!wa["Yijing Hexagram Symbols"](e)||!!wa["Yi Syllables"](e)||!!wa["Yi Radicals"](e))}function Ea(e){return!(!wa["Latin-1 Supplement"](e)||167!==e&&169!==e&&174!==e&&177!==e&&188!==e&&189!==e&&190!==e&&215!==e&&247!==e)||!(!wa["General Punctuation"](e)||8214!==e&&8224!==e&&8225!==e&&8240!==e&&8241!==e&&8251!==e&&8252!==e&&8258!==e&&8263!==e&&8264!==e&&8265!==e&&8273!==e)||!!wa["Letterlike Symbols"](e)||!!wa["Number Forms"](e)||!(!wa["Miscellaneous Technical"](e)||!(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215))||!(!wa["Control Pictures"](e)||9251===e)||!!wa["Optical Character Recognition"](e)||!!wa["Enclosed Alphanumerics"](e)||!!wa["Geometric Shapes"](e)||!(!wa["Miscellaneous Symbols"](e)||e>=9754&&e<=9759)||!(!wa["Miscellaneous Symbols and Arrows"](e)||!(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243))||!!wa["CJK Symbols and Punctuation"](e)||!!wa.Katakana(e)||!!wa["Private Use Area"](e)||!!wa["CJK Compatibility Forms"](e)||!!wa["Small Form Variants"](e)||!!wa["Halfwidth and Fullwidth Forms"](e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e}function Ca(e){return!(Sa(e)||Ea(e))}function La(e){return wa.Arabic(e)||wa["Arabic Supplement"](e)||wa["Arabic Extended-A"](e)||wa["Arabic Presentation Forms-A"](e)||wa["Arabic Presentation Forms-B"](e)}function Pa(e){return e>=1424&&e<=2303||wa["Arabic Presentation Forms-A"](e)||wa["Arabic Presentation Forms-B"](e)}function Oa(e,t){return!(!t&&Pa(e))&&!(e>=2304&&e<=3583||e>=3840&&e<=4255||wa.Khmer(e))}function Ia(e){for(var t=0,r=e;t-1&&(Fa=Ra.error),za&&za(e)};function ja(){Ua.fire(new at("pluginStateChange",{pluginStatus:Fa,pluginURL:Na}))}var Ua=new st,Va=function(){return Fa},Ha=function(e){return e({pluginStatus:Fa,pluginURL:Na}),Ua.on("pluginStateChange",e),e},qa=function(e,t,r){if(void 0===r&&(r=!1),Fa===Ra.deferred||Fa===Ra.loading||Fa===Ra.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Na=Y.resolveURL(e),Fa=Ra.deferred,za=t,ja(),r||Wa()},Wa=function(){if(Fa!==Ra.deferred||!Na)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Fa=Ra.loading,ja(),Na&&Ye({url:Na},(function(e){e?Ba(e):(Fa=Ra.loaded,ja())}))},Ga={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Fa===Ra.loaded||null!=Ga.applyArabicShaping},isLoading:function(){return Fa===Ra.loading},setState:function(e){Fa=e.pluginStatus,Na=e.pluginURL},isParsed:function(){return null!=Ga.applyArabicShaping&&null!=Ga.processBidirectionalText&&null!=Ga.processStyledBidirectionalText},getPluginURL:function(){return Na}},Ya=function(){Ga.isLoading()||Ga.isLoaded()||"deferred"!==Va()||Wa()},Za=function(e,t){this.zoom=e,t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.zoomHistory=t.zoomHistory,this.transition=t.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new _a,this.transition={})};Za.prototype.isSupportedScript=function(e){return Da(e,Ga.isLoaded())},Za.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Za.prototype.getCrossfadeParameters=function(){var e=this.zoom,t=e-Math.floor(e),r=this.crossFadingFactor();return e>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:t+(1-t)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*t}};var Xa=function(e,t){this.property=e,this.value=t,this.expression=mi(void 0===t?e.specification.default:t,e.specification)};Xa.prototype.isDataDriven=function(){return"source"===this.expression.kind||"composite"===this.expression.kind},Xa.prototype.possiblyEvaluate=function(e,t,r){return this.property.possiblyEvaluate(this,e,t,r)};var Ka=function(e){this.property=e,this.value=new Xa(e,void 0)};Ka.prototype.transitioned=function(e,t){return new Ja(this.property,this.value,t,m({},e.transition,this.transition),e.now)},Ka.prototype.untransitioned=function(){return new Ja(this.property,this.value,null,{},0)};var $a=function(e){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues)};$a.prototype.getValue=function(e){return A(this._values[e].value.value)},$a.prototype.setValue=function(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Ka(this._values[e].property)),this._values[e].value=new Xa(this._values[e].property,null===t?void 0:A(t))},$a.prototype.getTransition=function(e){return A(this._values[e].transition)},$a.prototype.setTransition=function(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Ka(this._values[e].property)),this._values[e].transition=A(t)||void 0},$a.prototype.serialize=function(){for(var e={},t=0,r=Object.keys(this._values);tthis.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(nn.zoomHistory.lastIntegerZoom?{from:e,to:t}:{from:r,to:t}},t.prototype.interpolate=function(e){return e},t}(io),oo=function(e){this.specification=e};oo.prototype.possiblyEvaluate=function(e,t,r,n){if(void 0!==e.value){if("constant"===e.expression.kind){var i=e.expression.evaluate(t,null,{},r,n);return this._calculate(i,i,i,t)}return this._calculate(e.expression.evaluate(new Za(Math.floor(t.zoom-1),t)),e.expression.evaluate(new Za(Math.floor(t.zoom),t)),e.expression.evaluate(new Za(Math.floor(t.zoom+1),t)),t)}},oo.prototype._calculate=function(e,t,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:e,to:t}:{from:r,to:t}},oo.prototype.interpolate=function(e){return e};var so=function(e){this.specification=e};so.prototype.possiblyEvaluate=function(e,t,r,n){return!!e.expression.evaluate(t,null,{},r,n)},so.prototype.interpolate=function(){return!1};var lo=function(e){for(var t in this.properties=e,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],e){var r=e[t];r.specification.overridable&&this.overridableProperties.push(t);var n=this.defaultPropertyValues[t]=new Xa(r,void 0),i=this.defaultTransitionablePropertyValues[t]=new Ka(r);this.defaultTransitioningPropertyValues[t]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[t]=n.possiblyEvaluate({})}};va("DataDrivenProperty",io),va("DataConstantProperty",no),va("CrossFadedDataDrivenProperty",ao),va("CrossFadedProperty",oo),va("ColorRampProperty",so);var uo="-transition",co=function(e){function t(t,r){if(e.call(this),this.id=t.id,this.type=t.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},"custom"!==t.type&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,"background"!==t.type&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter),r.layout&&(this._unevaluatedLayout=new eo(r.layout)),r.paint)){for(var n in this._transitionablePaint=new $a(r.paint),t.paint)this.setPaintProperty(n,t.paint[n],{validate:!1});for(var i in t.layout)this.setLayoutProperty(i,t.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new ro(r.paint)}}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},t.prototype.getLayoutProperty=function(e){return"visibility"===e?this.visibility:this._unevaluatedLayout.getValue(e)},t.prototype.setLayoutProperty=function(e,t,r){if(void 0===r&&(r={}),null!==t&&void 0!==t){var n="layers."+this.id+".layout."+e;if(this._validate(sa,n,e,t,r))return}"visibility"!==e?this._unevaluatedLayout.setValue(e,t):this.visibility=t},t.prototype.getPaintProperty=function(e){return k(e,uo)?this._transitionablePaint.getTransition(e.slice(0,-uo.length)):this._transitionablePaint.getValue(e)},t.prototype.setPaintProperty=function(e,t,r){if(void 0===r&&(r={}),null!==t&&void 0!==t){var n="layers."+this.id+".paint."+e;if(this._validate(oa,n,e,t,r))return!1}if(k(e,uo))return this._transitionablePaint.setTransition(e.slice(0,-uo.length),t||void 0),!1;var i=this._transitionablePaint._values[e],a="cross-faded-data-driven"===i.property.specification["property-type"],o=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(e,t),this._handleSpecialPaintPropertyUpdate(e);var l=this._transitionablePaint._values[e].value;return l.isDataDriven()||o||a||this._handleOverridablePaintPropertyUpdate(e,s,l)},t.prototype._handleSpecialPaintPropertyUpdate=function(e){},t.prototype._handleOverridablePaintPropertyUpdate=function(e,t,r){return!1},t.prototype.isHidden=function(e){return!!(this.minzoom&&e=this.maxzoom)||"none"===this.visibility},t.prototype.updateTransitions=function(e){this._transitioningPaint=this._transitionablePaint.transitioned(e,this._transitioningPaint)},t.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},t.prototype.recalculate=function(e,t){e.getCrossfadeParameters&&(this._crossfadeParameters=e.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(e,void 0,t)),this.paint=this._transitioningPaint.possiblyEvaluate(e,void 0,t)},t.prototype.serialize=function(){var e={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&&(e.layout=e.layout||{},e.layout.visibility=this.visibility),M(e,(function(e,t){return void 0!==e&&!("layout"===t&&!Object.keys(e).length)&&!("paint"===t&&!Object.keys(e).length)}))},t.prototype._validate=function(e,t,r,n,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&la(this,e.call(ia,{key:t,layerType:this.type,objectKey:r,value:n,styleSpec:lt,style:{glyphs:!0,sprite:!0}}))},t.prototype.is3D=function(){return!1},t.prototype.isTileClipped=function(){return!1},t.prototype.hasOffscreenPass=function(){return!1},t.prototype.resize=function(){},t.prototype.isStateDependent=function(){for(var e in this.paint._values){var t=this.paint.get(e);if(t instanceof to&&Kn(t.property.specification)&&("source"===t.value.kind||"composite"===t.value.kind)&&t.value.isStateDependent)return!0}return!1},t}(st),fo={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},ho=function(e,t){this._structArray=e,this._pos1=t*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},po=128,vo=5,mo=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function go(e,t){void 0===t&&(t=1);var r=0,n=0;return{members:e.map((function(e){var i=yo(e.type),a=r=xo(r,Math.max(t,i)),o=e.components||1;return n=Math.max(n,i),r+=i*o,{name:e.name,type:e.type,components:o,offset:a}})),size:xo(r,Math.max(n,t)),alignment:t}}function yo(e){return fo[e].BYTES_PER_ELEMENT}function xo(e,t){return Math.ceil(e/t)*t}mo.serialize=function(e,t){return e._trim(),t&&(e.isTransferred=!0,t.push(e.arrayBuffer)),{length:e.length,arrayBuffer:e.arrayBuffer}},mo.deserialize=function(e){var t=Object.create(this.prototype);return t.arrayBuffer=e.arrayBuffer,t.length=e.length,t.capacity=e.arrayBuffer.byteLength/t.bytesPerElement,t._refreshViews(),t},mo.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},mo.prototype.clear=function(){this.length=0},mo.prototype.resize=function(e){this.reserve(e),this.length=e},mo.prototype.reserve=function(e){if(e>this.capacity){this.capacity=Math.max(e,Math.floor(this.capacity*vo),po),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var t=this.uint8;this._refreshViews(),t&&this.uint8.set(t)}},mo.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};var bo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t){var r=this.length;return this.resize(r+1),this.emplace(r,e,t)},t.prototype.emplace=function(e,t,r){var n=2*e;return this.int16[n+0]=t,this.int16[n+1]=r,e},t}(mo);bo.prototype.bytesPerElement=4,va("StructArrayLayout2i4",bo);var _o=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,e,t,r,n)},t.prototype.emplace=function(e,t,r,n,i){var a=4*e;return this.int16[a+0]=t,this.int16[a+1]=r,this.int16[a+2]=n,this.int16[a+3]=i,e},t}(mo);_o.prototype.bytesPerElement=8,va("StructArrayLayout4i8",_o);var wo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,e,t,r,n,i,a)},t.prototype.emplace=function(e,t,r,n,i,a,o){var s=6*e;return this.int16[s+0]=t,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,e},t}(mo);wo.prototype.bytesPerElement=12,va("StructArrayLayout2i4i12",wo);var ko=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,e,t,r,n,i,a)},t.prototype.emplace=function(e,t,r,n,i,a,o){var s=4*e,l=8*e;return this.int16[s+0]=t,this.int16[s+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=i,this.uint8[l+6]=a,this.uint8[l+7]=o,e},t}(mo);ko.prototype.bytesPerElement=8,va("StructArrayLayout2i4ub8",ko);var To=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u){var c=this.length;return this.resize(c+1),this.emplace(c,e,t,r,n,i,a,o,s,l,u)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c){var f=9*e,d=18*e;return this.uint16[f+0]=t,this.uint16[f+1]=r,this.uint16[f+2]=n,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[d+16]=u,this.uint8[d+17]=c,e},t}(mo);To.prototype.bytesPerElement=18,va("StructArrayLayout8ui2ub18",To);var Mo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u,c,f){var d=this.length;return this.resize(d+1),this.emplace(d,e,t,r,n,i,a,o,s,l,u,c,f)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c,f,d){var h=12*e;return this.int16[h+0]=t,this.int16[h+1]=r,this.int16[h+2]=n,this.int16[h+3]=i,this.uint16[h+4]=a,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.int16[h+8]=u,this.int16[h+9]=c,this.int16[h+10]=f,this.int16[h+11]=d,e},t}(mo);Mo.prototype.bytesPerElement=24,va("StructArrayLayout4i4ui4i24",Mo);var Ao=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=3*e;return this.float32[i+0]=t,this.float32[i+1]=r,this.float32[i+2]=n,e},t}(mo);Ao.prototype.bytesPerElement=12,va("StructArrayLayout3f12",Ao);var So=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e){var t=this.length;return this.resize(t+1),this.emplace(t,e)},t.prototype.emplace=function(e,t){var r=1*e;return this.uint32[r+0]=t,e},t}(mo);So.prototype.bytesPerElement=4,va("StructArrayLayout1ul4",So);var Eo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.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)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l){var u=this.length;return this.resize(u+1),this.emplace(u,e,t,r,n,i,a,o,s,l)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u){var c=10*e,f=5*e;return this.int16[c+0]=t,this.int16[c+1]=r,this.int16[c+2]=n,this.int16[c+3]=i,this.int16[c+4]=a,this.int16[c+5]=o,this.uint32[f+3]=s,this.uint16[c+8]=l,this.uint16[c+9]=u,e},t}(mo);Eo.prototype.bytesPerElement=20,va("StructArrayLayout6i1ul2ui20",Eo);var Co=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,e,t,r,n,i,a)},t.prototype.emplace=function(e,t,r,n,i,a,o){var s=6*e;return this.int16[s+0]=t,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,e},t}(mo);Co.prototype.bytesPerElement=12,va("StructArrayLayout2i2i2i12",Co);var Lo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n,i){var a=this.length;return this.resize(a+1),this.emplace(a,e,t,r,n,i)},t.prototype.emplace=function(e,t,r,n,i,a){var o=4*e,s=8*e;return this.float32[o+0]=t,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=i,this.int16[s+7]=a,e},t}(mo);Lo.prototype.bytesPerElement=16,va("StructArrayLayout2f1f2i16",Lo);var Po=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,e,t,r,n)},t.prototype.emplace=function(e,t,r,n,i){var a=12*e,o=3*e;return this.uint8[a+0]=t,this.uint8[a+1]=r,this.float32[o+1]=n,this.float32[o+2]=i,e},t}(mo);Po.prototype.bytesPerElement=12,va("StructArrayLayout2ub2f12",Po);var Oo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=3*e;return this.uint16[i+0]=t,this.uint16[i+1]=r,this.uint16[i+2]=n,e},t}(mo);Oo.prototype.bytesPerElement=6,va("StructArrayLayout3ui6",Oo);var Io=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.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)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m){var g=this.length;return this.resize(g+1),this.emplace(g,e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g){var y=24*e,x=12*e,b=48*e;return this.int16[y+0]=t,this.int16[y+1]=r,this.uint16[y+2]=n,this.uint16[y+3]=i,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=u,this.uint16[y+12]=c,this.float32[x+7]=f,this.float32[x+8]=d,this.uint8[b+36]=h,this.uint8[b+37]=p,this.uint8[b+38]=v,this.uint32[x+10]=m,this.int16[y+22]=g,e},t}(mo);Io.prototype.bytesPerElement=48,va("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Io);var Do=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.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)},t.prototype.emplaceBack=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S){var E=this.length;return this.resize(E+1),this.emplace(E,e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S)},t.prototype.emplace=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v,m,g,y,x,b,_,w,k,T,M,A,S,E){var C=34*e,L=17*e;return this.int16[C+0]=t,this.int16[C+1]=r,this.int16[C+2]=n,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]=u,this.uint16[C+9]=c,this.uint16[C+10]=f,this.uint16[C+11]=d,this.uint16[C+12]=h,this.uint16[C+13]=p,this.uint16[C+14]=v,this.uint16[C+15]=m,this.uint16[C+16]=g,this.uint16[C+17]=y,this.uint16[C+18]=x,this.uint16[C+19]=b,this.uint16[C+20]=_,this.uint16[C+21]=w,this.uint16[C+22]=k,this.uint32[L+12]=T,this.float32[L+13]=M,this.float32[L+14]=A,this.float32[L+15]=S,this.float32[L+16]=E,e},t}(mo);Do.prototype.bytesPerElement=68,va("StructArrayLayout8i15ui1ul4f68",Do);var Ro=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e){var t=this.length;return this.resize(t+1),this.emplace(t,e)},t.prototype.emplace=function(e,t){var r=1*e;return this.float32[r+0]=t,e},t}(mo);Ro.prototype.bytesPerElement=4,va("StructArrayLayout1f4",Ro);var zo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=3*e;return this.int16[i+0]=t,this.int16[i+1]=r,this.int16[i+2]=n,e},t}(mo);zo.prototype.bytesPerElement=6,va("StructArrayLayout3i6",zo);var Fo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r){var n=this.length;return this.resize(n+1),this.emplace(n,e,t,r)},t.prototype.emplace=function(e,t,r,n){var i=2*e,a=4*e;return this.uint32[i+0]=t,this.uint16[a+2]=r,this.uint16[a+3]=n,e},t}(mo);Fo.prototype.bytesPerElement=8,va("StructArrayLayout1ul2ui8",Fo);var No=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t){var r=this.length;return this.resize(r+1),this.emplace(r,e,t)},t.prototype.emplace=function(e,t,r){var n=2*e;return this.uint16[n+0]=t,this.uint16[n+1]=r,e},t}(mo);No.prototype.bytesPerElement=4,va("StructArrayLayout2ui4",No);var Bo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e){var t=this.length;return this.resize(t+1),this.emplace(t,e)},t.prototype.emplace=function(e,t){var r=1*e;return this.uint16[r+0]=t,e},t}(mo);Bo.prototype.bytesPerElement=2,va("StructArrayLayout1ui2",Bo);var jo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t){var r=this.length;return this.resize(r+1),this.emplace(r,e,t)},t.prototype.emplace=function(e,t,r){var n=2*e;return this.float32[n+0]=t,this.float32[n+1]=r,e},t}(mo);jo.prototype.bytesPerElement=8,va("StructArrayLayout2f8",jo);var Uo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(e,t,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,e,t,r,n)},t.prototype.emplace=function(e,t,r,n,i){var a=4*e;return this.float32[a+0]=t,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,e},t}(mo);Uo.prototype.bytesPerElement=16,va("StructArrayLayout4f16",Uo);var Vo=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={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 r.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},r.x1.get=function(){return this._structArray.int16[this._pos2+2]},r.y1.get=function(){return this._structArray.int16[this._pos2+3]},r.x2.get=function(){return this._structArray.int16[this._pos2+4]},r.y2.get=function(){return this._structArray.int16[this._pos2+5]},r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(t.prototype,r),t}(ho);Vo.prototype.size=20;var Ho=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new Vo(this,e)},t}(Eo);va("CollisionBoxArray",Ho);var qo=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={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 r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},r.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},r.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},r.segment.get=function(){return this._structArray.uint16[this._pos2+10]},r.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},r.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},r.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},r.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},r.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},r.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},r.placedOrientation.set=function(e){this._structArray.uint8[this._pos1+37]=e},r.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},r.hidden.set=function(e){this._structArray.uint8[this._pos1+38]=e},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},r.crossTileID.set=function(e){this._structArray.uint32[this._pos4+10]=e},r.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(t.prototype,r),t}(ho);qo.prototype.size=48;var Wo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new qo(this,e)},t}(Io);va("PlacedSymbolArray",Wo);var Go=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={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 r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},r.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},r.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},r.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},r.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},r.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},r.key.get=function(){return this._structArray.uint16[this._pos2+8]},r.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},r.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},r.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},r.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},r.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},r.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},r.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},r.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},r.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},r.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},r.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},r.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},r.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},r.crossTileID.set=function(e){this._structArray.uint32[this._pos4+12]=e},r.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},r.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},r.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},r.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(t.prototype,r),t}(ho);Go.prototype.size=68;var Yo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new Go(this,e)},t}(Do);va("SymbolInstanceArray",Yo);var Zo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getoffsetX=function(e){return this.float32[1*e+0]},t}(Ro);va("GlyphOffsetArray",Zo);var Xo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.getx=function(e){return this.int16[3*e+0]},t.prototype.gety=function(e){return this.int16[3*e+1]},t.prototype.gettileUnitDistanceFromAnchor=function(e){return this.int16[3*e+2]},t}(zo);va("SymbolLineVertexArray",Xo);var Ko=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(t.prototype,r),t}(ho);Ko.prototype.size=8;var $o=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e){return new Ko(this,e)},t}(Fo);va("FeatureIndexArray",$o);var Jo=go([{name:"a_pos",components:2,type:"Int16"}],4).members,Qo=function(e){void 0===e&&(e=[]),this.segments=e};function es(e,t){return 256*(e=f(Math.floor(e),0,255))+(t=f(Math.floor(t),0,255))}Qo.prototype.prepareSegment=function(e,t,r,n){var i=this.segments[this.segments.length-1];return e>Qo.MAX_VERTEX_ARRAY_LENGTH&&C("Max vertices per segment is "+Qo.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+e),(!i||i.vertexLength+e>Qo.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:t.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i},Qo.prototype.get=function(){return this.segments},Qo.prototype.destroy=function(){for(var e=0,t=this.segments;e>>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,r){case 3:l^=(255&e.charCodeAt(u+2))<<16;case 2:l^=(255&e.charCodeAt(u+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&e.charCodeAt(u)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=e.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}e.exports=t})),ns=t((function(e){function t(e,t){for(var r,n=e.length,i=t^n,a=0;n>=4;)r=1540483477*(65535&(r=255&e.charCodeAt(a)|(255&e.charCodeAt(++a))<<8|(255&e.charCodeAt(++a))<<16|(255&e.charCodeAt(++a))<<24))+((1540483477*(r>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++a;switch(n){case 3:i^=(255&e.charCodeAt(a+2))<<16;case 2:i^=(255&e.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&e.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}e.exports=t})),is=rs,as=rs,os=ns;is.murmur3=as,is.murmur2=os;var ss=function(){this.ids=[],this.positions=[],this.indexed=!1};ss.prototype.add=function(e,t,r,n){this.ids.push(us(e)),this.positions.push(t,r,n)},ss.prototype.getPositions=function(e){for(var t=us(e),r=0,n=this.ids.length-1;r>1;this.ids[i]>=t?n=i:r=i+1}for(var a=[];this.ids[r]===t;){var o=this.positions[3*r],s=this.positions[3*r+1],l=this.positions[3*r+2];a.push({index:o,start:s,end:l}),r++}return a},ss.serialize=function(e,t){var r=new Float64Array(e.ids),n=new Uint32Array(e.positions);return cs(r,n,0,r.length-1),t&&t.push(r.buffer,n.buffer),{ids:r,positions:n}},ss.deserialize=function(e){var t=new ss;return t.ids=e.ids,t.positions=e.positions,t.indexed=!0,t};var ls=Math.pow(2,53)-1;function us(e){var t=+e;return!isNaN(t)&&t<=ls?t:is(String(e))}function cs(e,t,r,n){for(;r>1],a=r-1,o=n+1;;){do{a++}while(e[a]i);if(a>=o)break;fs(e,a,o),fs(t,3*a,3*o),fs(t,3*a+1,3*o+1),fs(t,3*a+2,3*o+2)}o-rDs.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 r}function zs(e,t,r,n,i){e.emplaceBack(2*t+(n+1)/2,2*r+(i+1)/2)}var Fs=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((function(e){return e.id})),this.index=e.index,this.hasPattern=!1,this.layoutVertexArray=new bo,this.indexArray=new Oo,this.segments=new Qo,this.programConfigurations=new Es(Jo,e.layers,e.zoom),this.stateDependentLayerIds=this.layers.filter((function(e){return e.isStateDependent()})).map((function(e){return e.id}))};function Ns(e,t){for(var r=0;r=3)for(var a=0;a1){if(Hs(e,t))return!0;for(var n=0;n1?e.distSqr(r):e.distSqr(r.sub(t)._mult(i)._add(t))}function Ys(e,t){for(var r,n,i,a=!1,o=0;ot.y!==i.y>t.y&&t.x<(i.x-n.x)*(t.y-n.y)/(i.y-n.y)+n.x&&(a=!a);return a}function Zs(e,t){for(var r=!1,n=0,i=e.length-1;nt.y!==o.y>t.y&&t.x<(o.x-a.x)*(t.y-a.y)/(o.y-a.y)+a.x&&(r=!r)}return r}function Xs(e,t,r,n,i){for(var o=0,s=e;o=l.x&&i>=l.y)return!0}var u=[new a(t,r),new a(t,i),new a(n,i),new a(n,r)];if(e.length>2)for(var c=0,f=u;ci.x&&t.x>i.x||e.yi.y&&t.y>i.y)return!1;var a=L(e,t,r[0]);return a!==L(e,t,r[1])||a!==L(e,t,r[2])||a!==L(e,t,r[3])}function $s(e,t,r){var n=t.paint.get(e).value;return"constant"===n.kind?n.value:r.programConfigurations.get(t.id).getMaxValue(e)}function Js(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Qs(e,t,r,n,i){if(!t[0]&&!t[1])return e;var o=a.convert(t)._mult(i);"viewport"===r&&o._rotate(-n);for(var s=[],l=0;l=Os||c<0||c>=Os)){var f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,e.sortKey),d=f.vertexLength;zs(this.layoutVertexArray,u,c,-1,-1),zs(this.layoutVertexArray,u,c,1,-1),zs(this.layoutVertexArray,u,c,1,1),zs(this.layoutVertexArray,u,c,-1,1),this.indexArray.emplaceBack(d,d+1,d+2),this.indexArray.emplaceBack(d,d+3,d+2),f.vertexLength+=4,f.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,r,{},n)},va("CircleBucket",Fs,{omit:["layers"]});var el=new lo({"circle-sort-key":new io(lt.layout_circle["circle-sort-key"])}),tl={paint:new lo({"circle-radius":new io(lt.paint_circle["circle-radius"]),"circle-color":new io(lt.paint_circle["circle-color"]),"circle-blur":new io(lt.paint_circle["circle-blur"]),"circle-opacity":new io(lt.paint_circle["circle-opacity"]),"circle-translate":new no(lt.paint_circle["circle-translate"]),"circle-translate-anchor":new no(lt.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new no(lt.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new no(lt.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new io(lt.paint_circle["circle-stroke-width"]),"circle-stroke-color":new io(lt.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new io(lt.paint_circle["circle-stroke-opacity"])}),layout:el},rl="undefined"!==typeof Float32Array?Float32Array:Array;function nl(){var e=new rl(4);return rl!=Float32Array&&(e[1]=0,e[2]=0),e[0]=1,e[3]=1,e}function il(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=Math.sin(r),l=Math.cos(r);return e[0]=n*l+a*s,e[1]=i*l+o*s,e[2]=n*-s+a*l,e[3]=i*-s+o*l,e}function al(){var e=new rl(9);return rl!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function ol(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=-r,e[4]=n,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e}function sl(){var e=new rl(16);return rl!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function ll(e){var t=new rl(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function ul(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function cl(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],d=t[10],h=t[11],p=t[12],v=t[13],m=t[14],g=t[15],y=r*s-n*o,x=r*l-i*o,b=r*u-a*o,_=n*l-i*s,w=n*u-a*s,k=i*u-a*l,T=c*v-f*p,M=c*m-d*p,A=c*g-h*p,S=f*m-d*v,E=f*g-h*v,C=d*g-h*m,L=y*C-x*E+b*S+_*A-w*M+k*T;return L?(L=1/L,e[0]=(s*C-l*E+u*S)*L,e[1]=(i*E-n*C-a*S)*L,e[2]=(v*k-m*w+g*_)*L,e[3]=(d*w-f*k-h*_)*L,e[4]=(l*A-o*C-u*M)*L,e[5]=(r*C-i*A+a*M)*L,e[6]=(m*b-p*k-g*x)*L,e[7]=(c*k-d*b+h*x)*L,e[8]=(o*E-s*A+u*T)*L,e[9]=(n*A-r*E-a*T)*L,e[10]=(p*w-v*b+g*y)*L,e[11]=(f*b-c*w-h*y)*L,e[12]=(s*M-o*S-l*T)*L,e[13]=(r*S-n*M+i*T)*L,e[14]=(v*x-p*_-m*y)*L,e[15]=(c*_-f*x+d*y)*L,e):null}function fl(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],v=t[12],m=t[13],g=t[14],y=t[15],x=r[0],b=r[1],_=r[2],w=r[3];return e[0]=x*n+b*s+_*f+w*v,e[1]=x*i+b*l+_*d+w*m,e[2]=x*a+b*u+_*h+w*g,e[3]=x*o+b*c+_*p+w*y,x=r[4],b=r[5],_=r[6],w=r[7],e[4]=x*n+b*s+_*f+w*v,e[5]=x*i+b*l+_*d+w*m,e[6]=x*a+b*u+_*h+w*g,e[7]=x*o+b*c+_*p+w*y,x=r[8],b=r[9],_=r[10],w=r[11],e[8]=x*n+b*s+_*f+w*v,e[9]=x*i+b*l+_*d+w*m,e[10]=x*a+b*u+_*h+w*g,e[11]=x*o+b*c+_*p+w*y,x=r[12],b=r[13],_=r[14],w=r[15],e[12]=x*n+b*s+_*f+w*v,e[13]=x*i+b*l+_*d+w*m,e[14]=x*a+b*u+_*h+w*g,e[15]=x*o+b*c+_*p+w*y,e}function dl(e,t,r){var n,i,a,o,s,l,u,c,f,d,h,p,v=r[0],m=r[1],g=r[2];return t===e?(e[12]=t[0]*v+t[4]*m+t[8]*g+t[12],e[13]=t[1]*v+t[5]*m+t[9]*g+t[13],e[14]=t[2]*v+t[6]*m+t[10]*g+t[14],e[15]=t[3]*v+t[7]*m+t[11]*g+t[15]):(n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],p=t[11],e[0]=n,e[1]=i,e[2]=a,e[3]=o,e[4]=s,e[5]=l,e[6]=u,e[7]=c,e[8]=f,e[9]=d,e[10]=h,e[11]=p,e[12]=n*v+s*m+f*g+t[12],e[13]=i*v+l*m+d*g+t[13],e[14]=a*v+u*m+h*g+t[14],e[15]=o*v+c*m+p*g+t[15]),e}function hl(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function pl(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+d*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=d*i-l*n,e}function vl(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+d*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=d*i-l*n,e}function ml(e,t,r,n,i){var a,o=1/Math.tan(t/2);return e[0]=o/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=i&&i!==1/0?(a=1/(n-i),e[10]=(i+n)*a,e[14]=2*i*n*a):(e[10]=-1,e[14]=-2*n),e}function gl(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}Math.hypot||(Math.hypot=function(){for(var e=arguments,t=0,r=arguments.length;r--;)t+=e[r]*e[r];return Math.sqrt(t)});var yl=fl;function xl(){var e=new rl(3);return rl!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function bl(e){var t=new rl(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function _l(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e}function wl(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e}function kl(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e}function Tl(e,t){var r=t[0],n=t[1],i=t[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a,e}function Ml(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Al(e,t,r){var n=t[0],i=t[1],a=t[2],o=r[0],s=r[1],l=r[2];return e[0]=i*l-a*s,e[1]=a*o-n*l,e[2]=n*s-i*o,e}function Sl(e,t,r){var n=t[0],i=t[1],a=t[2];return e[0]=n*r[0]+i*r[3]+a*r[6],e[1]=n*r[1]+i*r[4]+a*r[7],e[2]=n*r[2]+i*r[5]+a*r[8],e}var El=wl;function Cl(){var e=new rl(4);return rl!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function Ll(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e}function Pl(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function Ol(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3];return e[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,e[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,e[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,e[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,e}function Il(){var e=new rl(2);return rl!=Float32Array&&(e[0]=0,e[1]=0),e}function Dl(e){var t=e[0],r=e[1];return t*t+r*r}xl(),Cl();var Rl=Dl,zl=(Il(),function(e){function t(t){e.call(this,t,tl)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new Fs(e)},t.prototype.queryRadius=function(e){var t=e;return $s("circle-radius",this,t)+$s("circle-stroke-width",this,t)+Js(this.paint.get("circle-translate"))},t.prototype.queryIntersectsFeature=function(e,t,r,n,i,a,o,s){for(var l=Qs(e,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),a.angle,o),u=this.paint.get("circle-radius").evaluate(t,r)+this.paint.get("circle-stroke-width").evaluate(t,r),c="map"===this.paint.get("circle-pitch-alignment"),f=c?l:Nl(l,s),d=c?u*o:u,h=0,p=n;he.width||i.height>e.height||r.x>e.width-i.width||r.y>e.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>t.width||i.height>t.height||n.x>t.width-i.width||n.y>t.height-i.height)throw new RangeError("out of range destination coordinates for image copy");for(var o=e.data,s=t.data,l=0;l80*r){n=a=e[0],i=o=e[1];for(var p=r;pa&&(a=s),l>o&&(o=l);u=0!==(u=Math.max(a-n,o-i))?1/u:0}return ru(d,h,r,n,i,u),h}function eu(e,t,r,n,i){var a,o;if(i===Lu(e,t,r,n)>0)for(a=t;a=t;a-=n)o=Su(a,e[a],e[a+1],o);return o&&xu(o,o.next)&&(Eu(o),o=o.next),o}function tu(e,t){if(!e)return e;t||(t=e);var r,n=e;do{if(r=!1,n.steiner||!xu(n,n.next)&&0!==yu(n.prev,n,n.next))n=n.next;else{if(Eu(n),(n=t=n.prev)===n.next)break;r=!0}}while(r||n!==t);return t}function ru(e,t,r,n,i,a,o){if(e){!o&&a&&du(e,n,i,a);for(var s,l,u=e;e.prev!==e.next;)if(s=e.prev,l=e.next,a?iu(e,n,i,a):nu(e))t.push(s.i/r),t.push(e.i/r),t.push(l.i/r),Eu(e),e=l.next,u=l.next;else if((e=l)===u){o?1===o?ru(e=au(tu(e),t,r),t,r,n,i,a,2):2===o&&ou(e,t,r,n,i,a):ru(tu(e),t,r,n,i,a,1);break}}}function nu(e){var t=e.prev,r=e,n=e.next;if(yu(t,r,n)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(mu(t.x,t.y,r.x,r.y,n.x,n.y,i.x,i.y)&&yu(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function iu(e,t,r,n){var i=e.prev,a=e,o=e.next;if(yu(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,c=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=pu(s,l,t,r,n),d=pu(u,c,t,r,n),h=e.prevZ,p=e.nextZ;h&&h.z>=f&&p&&p.z<=d;){if(h!==e.prev&&h!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,h.x,h.y)&&yu(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,p!==e.prev&&p!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yu(p.prev,p,p.next)>=0)return!1;p=p.nextZ}for(;h&&h.z>=f;){if(h!==e.prev&&h!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,h.x,h.y)&&yu(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;p&&p.z<=d;){if(p!==e.prev&&p!==e.next&&mu(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yu(p.prev,p,p.next)>=0)return!1;p=p.nextZ}return!0}function au(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!xu(i,a)&&bu(i,n,n.next,a)&&Tu(i,a)&&Tu(a,i)&&(t.push(i.i/r),t.push(n.i/r),t.push(a.i/r),Eu(n),Eu(n.next),n=e=a),n=n.next}while(n!==e);return tu(n)}function ou(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&gu(o,s)){var l=Au(o,s);return o=tu(o,o.next),l=tu(l,l.next),ru(o,t,r,n,i,a),void ru(l,t,r,n,i,a)}s=s.next}o=o.next}while(o!==e)}function su(e,t,r,n){var i,a,o,s=[];for(i=0,a=t.length;i=n.next.y&&n.next.y!==n.y){var s=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>o){if(o=s,s===i){if(a===n.y)return n;if(a===n.next.y)return n.next}r=n.x=n.x&&n.x>=c&&i!==n.x&&mu(ar.x||n.x===r.x&&fu(r,n)))&&(r=n,d=l)),n=n.next}while(n!==u);return r}function fu(e,t){return yu(e.prev,e,t.prev)<0&&yu(t.next,e,e.next)<0}function du(e,t,r,n){var i=e;do{null===i.z&&(i.z=pu(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,hu(i)}function hu(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1);return e}function pu(e,t,r,n,i){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function vu(e){var t=e,r=e;do{(t.x=0&&(e-o)*(n-s)-(r-o)*(t-s)>=0&&(r-o)*(a-s)-(i-o)*(n-s)>=0}function gu(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!ku(e,t)&&(Tu(e,t)&&Tu(t,e)&&Mu(e,t)&&(yu(e.prev,e,t.prev)||yu(e,t.prev,t))||xu(e,t)&&yu(e.prev,e,e.next)>0&&yu(t.prev,t,t.next)>0)}function yu(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function xu(e,t){return e.x===t.x&&e.y===t.y}function bu(e,t,r,n){var i=wu(yu(e,t,r)),a=wu(yu(e,t,n)),o=wu(yu(r,n,e)),s=wu(yu(r,n,t));return i!==a&&o!==s||!(0!==i||!_u(e,r,t))||!(0!==a||!_u(e,n,t))||!(0!==o||!_u(r,e,n))||!(0!==s||!_u(r,t,n))}function _u(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function wu(e){return e>0?1:e<0?-1:0}function ku(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&bu(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function Tu(e,t){return yu(e.prev,e,e.next)<0?yu(e,t,e.next)>=0&&yu(e,e.prev,t)>=0:yu(e,t,e.prev)<0||yu(e,e.next,t)<0}function Mu(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do{r.y>a!==r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==e);return n}function Au(e,t){var r=new Cu(e.i,e.x,e.y),n=new Cu(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function Su(e,t,r,n){var i=new Cu(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function Eu(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Cu(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Lu(e,t,r,n){for(var i=0,a=t,o=r-n;ar;){if(n-r>600){var a=n-r+1,o=t-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),u=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);Ou(e,t,Math.max(r,Math.floor(t-o*l/a+u)),Math.min(n,Math.floor(t+(a-o)*l/a+u)),i)}var c=e[t],f=r,d=n;for(Iu(e,r,t),i(e[n],c)>0&&Iu(e,r,n);f0;)d--}0===i(e[r],c)?Iu(e,r,d):Iu(e,++d,n),d<=t&&(r=d+1),t<=d&&(n=d-1)}}function Iu(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function Du(e,t){return et?1:0}function Ru(e,t){var r=e.length;if(r<=1)return[e];for(var n,i,a=[],o=0;o1)for(var l=0;l0&&(n+=e[i-1].length,r.holes.push(n))}return r},$l.default=Jl;var Bu=500,ju=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((function(e){return e.id})),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new bo,this.indexArray=new Oo,this.indexArray2=new No,this.programConfigurations=new Es(Kl,e.layers,e.zoom),this.segments=new Qo,this.segments2=new Qo,this.stateDependentLayerIds=this.layers.filter((function(e){return e.isStateDependent()})).map((function(e){return e.id}))};ju.prototype.populate=function(e,t,r){this.hasPattern=Fu("fill",this.layers,t);for(var n=this.layers[0].layout.get("fill-sort-key"),i=[],a=0,o=e;a>3}if(i--,1===n||2===n)o+=e.readSVarint(),s+=e.readSVarint(),1===n&&(t&&l.push(t),t=[]),t.push(new a(o,s));else{if(7!==n)throw new Error("unknown command "+n);t&&t.push(t[0].clone())}}return t&&l.push(t),l},Gu.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,n=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,u=-1/0;e.pos>3}if(n--,1===r||2===r)(i+=e.readSVarint())s&&(s=i),(a+=e.readSVarint())u&&(u=a);else if(7!==r)throw new Error("unknown command "+r)}return[o,l,s,u]},Gu.prototype.toGeoJSON=function(e,t,r){var n,i,a=this.extent*Math.pow(2,r),o=this.extent*e,s=this.extent*t,l=this.loadGeometry(),u=Gu.types[this.type];function c(e){for(var t=0;t>3;t=1===n?e.readString():2===n?e.readFloat():3===n?e.readDouble():4===n?e.readVarint64():5===n?e.readVarint():6===n?e.readSVarint():7===n?e.readBoolean():null}return t}function tc(e,t){this.layers=e.readFields(rc,{},t)}function rc(e,t,r){if(3===e){var n=new $u(r,r.readVarint()+r.pos);n.length&&(t[n.name]=n)}}Ju.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new Wu(this._pbf,t,this.extent,this._keys,this._values)};var nc={VectorTile:tc,VectorTileFeature:Wu,VectorTileLayer:$u},ic=nc.VectorTileFeature.types,ac=500,oc=Math.pow(2,13);function sc(e,t,r,n,i,a,o,s){e.emplaceBack(t,r,2*Math.floor(n*oc)+o,i*oc*2,a*oc*2,Math.round(s))}var lc=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((function(e){return e.id})),this.index=e.index,this.hasPattern=!1,this.layoutVertexArray=new wo,this.indexArray=new Oo,this.programConfigurations=new Es(qu,e.layers,e.zoom),this.segments=new Qo,this.stateDependentLayerIds=this.layers.filter((function(e){return e.isStateDependent()})).map((function(e){return e.id}))};function uc(e,t){return e.x===t.x&&(e.x<0||e.x>Os)||e.y===t.y&&(e.y<0||e.y>Os)}function cc(e){return e.every((function(e){return e.x<0}))||e.every((function(e){return e.x>Os}))||e.every((function(e){return e.y<0}))||e.every((function(e){return e.y>Os}))}lc.prototype.populate=function(e,t,r){this.features=[],this.hasPattern=Fu("fill-extrusion",this.layers,t);for(var n=0,i=e;n=1){var y=p[m-1];if(!uc(g,y)){f.vertexLength+4>Qo.MAX_VERTEX_ARRAY_LENGTH&&(f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=g.sub(y)._perp()._unit(),b=y.dist(g);v+b>32768&&(v=0),sc(this.layoutVertexArray,g.x,g.y,x.x,x.y,0,0,v),sc(this.layoutVertexArray,g.x,g.y,x.x,x.y,0,1,v),v+=b,sc(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,v),sc(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,v);var _=f.vertexLength;this.indexArray.emplaceBack(_,_+2,_+1),this.indexArray.emplaceBack(_+1,_+2,_+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"===ic[e.type]){for(var w=[],k=[],T=f.vertexLength,M=0,A=s;M=2&&e[l-1].equals(e[l-2]);)l--;for(var u=0;u0;if(k&&g>u){var M=c.dist(h);if(M>2*f){var A=c.sub(c.sub(h)._mult(f/M)._round());this.updateDistance(h,A),this.addCurrentVertex(A,v,0,0,d),h=A}}var S=h&&p,E=S?r:s?"butt":n;if(S&&"round"===E&&(_i&&(E="bevel"),"bevel"===E&&(_>2&&(E="flipbevel"),_100)y=m.mult(-1);else{var C=_*v.add(m).mag()/v.sub(m).mag();y._perp()._mult(C*(T?-1:1))}this.addCurrentVertex(c,y,0,0,d),this.addCurrentVertex(c,y.mult(-1),0,0,d)}else if("bevel"===E||"fakeround"===E){var L=-Math.sqrt(_*_-1),P=T?L:0,O=T?0:L;if(h&&this.addCurrentVertex(c,v,P,O,d),"fakeround"===E)for(var I=Math.round(180*w/Math.PI/kc),D=1;D2*f){var j=c.add(p.sub(c)._mult(f/B)._round());this.updateDistance(c,j),this.addCurrentVertex(j,m,0,0,d),c=j}}}}},Sc.prototype.addCurrentVertex=function(e,t,r,n,i,a){void 0===a&&(a=!1);var o=t.x+t.y*r,s=t.y-t.x*r,l=-t.x+t.y*n,u=-t.y-t.x*n;this.addHalfVertex(e,o,s,a,!1,r,i),this.addHalfVertex(e,l,u,a,!0,-n,i),this.distance>Ac/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(e,t,r,n,i,a))},Sc.prototype.addHalfVertex=function(e,t,r,n,i,a,o){var s=e.x,l=e.y,u=this.scaledDistance*Mc;this.layoutVertexArray.emplaceBack((s<<1)+(n?1:0),(l<<1)+(i?1:0),Math.round(bc*t)+128,Math.round(bc*r)+128,1+(0===a?0:a<0?-1:1)|(63&u)<<2,u>>6);var c=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,c),o.primitiveLength++),i?this.e2=c:this.e1=c},Sc.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(Ac-1):this.distance},Sc.prototype.updateDistance=function(e,t){this.distance+=e.dist(t),this.updateScaledDistance()},va("LineBucket",Sc,{omit:["layers","patternFeatures"]});var Ec=new lo({"line-cap":new no(lt.layout_line["line-cap"]),"line-join":new io(lt.layout_line["line-join"]),"line-miter-limit":new no(lt.layout_line["line-miter-limit"]),"line-round-limit":new no(lt.layout_line["line-round-limit"]),"line-sort-key":new io(lt.layout_line["line-sort-key"])}),Cc={paint:new lo({"line-opacity":new io(lt.paint_line["line-opacity"]),"line-color":new io(lt.paint_line["line-color"]),"line-translate":new no(lt.paint_line["line-translate"]),"line-translate-anchor":new no(lt.paint_line["line-translate-anchor"]),"line-width":new io(lt.paint_line["line-width"]),"line-gap-width":new io(lt.paint_line["line-gap-width"]),"line-offset":new io(lt.paint_line["line-offset"]),"line-blur":new io(lt.paint_line["line-blur"]),"line-dasharray":new oo(lt.paint_line["line-dasharray"]),"line-pattern":new ao(lt.paint_line["line-pattern"]),"line-gradient":new so(lt.paint_line["line-gradient"])}),layout:Ec},Lc=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.possiblyEvaluate=function(t,r){return r=new Za(Math.floor(r.zoom),{now:r.now,fadeDuration:r.fadeDuration,zoomHistory:r.zoomHistory,transition:r.transition}),e.prototype.possiblyEvaluate.call(this,t,r)},t.prototype.evaluate=function(t,r,n,i){return r=m({},r,{zoom:Math.floor(r.zoom)}),e.prototype.evaluate.call(this,t,r,n,i)},t}(io),Pc=new Lc(Cc.paint.properties["line-width"].specification);Pc.useIntegerZoom=!0;var Oc=function(e){function t(t){e.call(this,t,Cc)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._handleSpecialPaintPropertyUpdate=function(e){"line-gradient"===e&&this._updateGradient()},t.prototype._updateGradient=function(){var e=this._transitionablePaint._values["line-gradient"].value.expression;this.gradient=Gl(e,"lineProgress"),this.gradientTexture=null},t.prototype.recalculate=function(t,r){e.prototype.recalculate.call(this,t,r),this.paint._values["line-floorwidth"]=Pc.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,t)},t.prototype.createBucket=function(e){return new Sc(e)},t.prototype.queryRadius=function(e){var t=e,r=Ic($s("line-width",this,t),$s("line-gap-width",this,t)),n=$s("line-offset",this,t);return r/2+Math.abs(n)+Js(this.paint.get("line-translate"))},t.prototype.queryIntersectsFeature=function(e,t,r,n,i,a,o){var s=Qs(e,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),a.angle,o),l=o/2*Ic(this.paint.get("line-width").evaluate(t,r),this.paint.get("line-gap-width").evaluate(t,r)),u=this.paint.get("line-offset").evaluate(t,r);return u&&(n=Dc(n,u*o)),Us(s,n,l)},t.prototype.isTileClipped=function(){return!0},t}(co);function Ic(e,t){return t>0?t+2*e:e}function Dc(e,t){for(var r=[],n=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 qc(e){for(var t="",r=0;r>1,c=-7,f=r?i-1:0,d=r?-1:1,h=e[t+f];for(f+=d,a=h&(1<<-c)-1,h>>=-c,c+=s;c>0;a=256*a+e[t+f],f+=d,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+e[t+f],f+=d,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,n),a-=u}return(h?-1:1)*o*Math.pow(2,a-n)},write:function(e,t,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:a-1,p=n?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),(t+=o+f>=1?d/l:d*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+h]=255&s,h+=p,s/=256,i-=8);for(o=o<0;e[r+h]=255&o,h+=p,o/=256,u-=8);e[r+h-p]|=128*v}},Yc=Zc;function Zc(e){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(e)?e:new Uint8Array(e||0),this.pos=0,this.type=0,this.length=this.buf.length}Zc.Varint=0,Zc.Fixed64=1,Zc.Bytes=2,Zc.Fixed32=5;var Xc=4294967296,Kc=1/Xc,$c=12,Jc="undefined"===typeof TextDecoder?null:new TextDecoder("utf8");function Qc(e,t,r){var n,i,a=r.buf;if(n=(112&(i=a[r.pos++]))>>4,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<3,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<10,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<17,i<128)return tf(e,n,t);if(n|=(127&(i=a[r.pos++]))<<24,i<128)return tf(e,n,t);if(n|=(1&(i=a[r.pos++]))<<31,i<128)return tf(e,n,t);throw new Error("Expected varint not more than 10 bytes")}function ef(e){return e.type===Zc.Bytes?e.readVarint()+e.pos:e.pos+1}function tf(e,t,r){return r?4294967296*t+(e>>>0):4294967296*(t>>>0)+(e>>>0)}function rf(e,t){var r,n;if(e>=0?(r=e%4294967296|0,n=e/4294967296|0):(n=~(-e/4294967296),4294967295^(r=~(-e%4294967296))?r=r+1|0:(r=0,n=n+1|0)),e>=0x10000000000000000||e<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");t.realloc(10),nf(r,n,t),af(n,t)}function nf(e,t,r){r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos++]=127&e|128,e>>>=7,r.buf[r.pos]=127&e}function af(e,t){var r=(7&e)<<4;t.buf[t.pos++]|=r|((e>>>=3)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e)))))}function of(e,t,r){var n=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.floor(Math.log(t)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=e;i--)r.buf[i+n]=r.buf[i]}function sf(e,t){for(var r=0;r>>8,e[r+2]=t>>>16,e[r+3]=t>>>24}function yf(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16)+(e[t+3]<<24)}function xf(e,t,r){for(var n="",i=t;i239?4:l>223?3:l>191?2:1;if(i+c>r)break;1===c?l<128&&(u=l):2===c?128===(192&(a=e[i+1]))&&(u=(31&l)<<6|63&a)<=127&&(u=null):3===c?(a=e[i+1],o=e[i+2],128===(192&a)&&128===(192&o)&&((u=(15&l)<<12|(63&a)<<6|63&o)<=2047||u>=55296&&u<=57343)&&(u=null)):4===c&&(a=e[i+1],o=e[i+2],s=e[i+3],128===(192&a)&&128===(192&o)&&128===(192&s)&&((u=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||u>=1114112)&&(u=null)),null===u?(u=65533,c=1):u>65535&&(u-=65536,n+=String.fromCharCode(u>>>10&1023|55296),u=56320|1023&u),n+=String.fromCharCode(u),i+=c}return n}function bf(e,t,r){return Jc.decode(e.subarray(t,r))}function _f(e,t,r){for(var n,i,a=0;a55295&&n<57344){if(!i){n>56319||a+1===t.length?(e[r++]=239,e[r++]=191,e[r++]=189):i=n;continue}if(n<56320){e[r++]=239,e[r++]=191,e[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(e[r++]=239,e[r++]=191,e[r++]=189,i=null);n<128?e[r++]=n:(n<2048?e[r++]=n>>6|192:(n<65536?e[r++]=n>>12|224:(e[r++]=n>>18|240,e[r++]=n>>12&63|128),e[r++]=n>>6&63|128),e[r++]=63&n|128)}return r}Zc.prototype={destroy:function(){this.buf=null},readFields:function(e,t,r){for(r=r||this.length;this.pos>3,a=this.pos;this.type=7&n,e(i,t,this),this.pos===a&&this.skip(n)}return t},readMessage:function(e,t){return this.readFields(e,t,this.readVarint()+this.pos)},readFixed32:function(){var e=mf(this.buf,this.pos);return this.pos+=4,e},readSFixed32:function(){var e=yf(this.buf,this.pos);return this.pos+=4,e},readFixed64:function(){var e=mf(this.buf,this.pos)+mf(this.buf,this.pos+4)*Xc;return this.pos+=8,e},readSFixed64:function(){var e=mf(this.buf,this.pos)+yf(this.buf,this.pos+4)*Xc;return this.pos+=8,e},readFloat:function(){var e=Gc.read(this.buf,this.pos,!0,23,4);return this.pos+=4,e},readDouble:function(){var e=Gc.read(this.buf,this.pos,!0,52,8);return this.pos+=8,e},readVarint:function(e){var t,r,n=this.buf;return t=127&(r=n[this.pos++]),r<128?t:(t|=(127&(r=n[this.pos++]))<<7,r<128?t:(t|=(127&(r=n[this.pos++]))<<14,r<128?t:(t|=(127&(r=n[this.pos++]))<<21,r<128?t:Qc(t|=(15&(r=n[this.pos]))<<28,e,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var e=this.readVarint();return e%2===1?(e+1)/-2:e/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var e=this.readVarint()+this.pos,t=this.pos;return this.pos=e,e-t>=$c&&Jc?bf(this.buf,t,e):xf(this.buf,t,e)},readBytes:function(){var e=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,e);return this.pos=e,t},readPackedVarint:function(e,t){if(this.type!==Zc.Bytes)return e.push(this.readVarint(t));var r=ef(this);for(e=e||[];this.pos127;);else if(t===Zc.Bytes)this.pos=this.readVarint()+this.pos;else if(t===Zc.Fixed32)this.pos+=4;else{if(t!==Zc.Fixed64)throw new Error("Unimplemented type: "+t);this.pos+=8}},writeTag:function(e,t){this.writeVarint(e<<3|t)},realloc:function(e){for(var t=this.length||16;t268435455||e<0?rf(e,this):(this.realloc(4),this.buf[this.pos++]=127&e|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=e>>>7&127))))},writeSVarint:function(e){this.writeVarint(e<0?2*-e-1:2*e)},writeBoolean:function(e){this.writeVarint(Boolean(e))},writeString:function(e){e=String(e),this.realloc(4*e.length),this.pos++;var t=this.pos;this.pos=_f(this.buf,e,this.pos);var r=this.pos-t;r>=128&&of(t,r,this),this.pos=t-1,this.writeVarint(r),this.pos+=r},writeFloat:function(e){this.realloc(4),Gc.write(this.buf,e,this.pos,!0,23,4),this.pos+=4},writeDouble:function(e){this.realloc(8),Gc.write(this.buf,e,this.pos,!0,52,8),this.pos+=8},writeBytes:function(e){var t=e.length;this.writeVarint(t),this.realloc(t);for(var r=0;r=128&&of(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(e,t,r){this.writeTag(e,Zc.Bytes),this.writeRawMessage(t,r)},writePackedVarint:function(e,t){t.length&&this.writeMessage(e,sf,t)},writePackedSVarint:function(e,t){t.length&&this.writeMessage(e,lf,t)},writePackedBoolean:function(e,t){t.length&&this.writeMessage(e,ff,t)},writePackedFloat:function(e,t){t.length&&this.writeMessage(e,uf,t)},writePackedDouble:function(e,t){t.length&&this.writeMessage(e,cf,t)},writePackedFixed32:function(e,t){t.length&&this.writeMessage(e,df,t)},writePackedSFixed32:function(e,t){t.length&&this.writeMessage(e,hf,t)},writePackedFixed64:function(e,t){t.length&&this.writeMessage(e,pf,t)},writePackedSFixed64:function(e,t){t.length&&this.writeMessage(e,vf,t)},writeBytesField:function(e,t){this.writeTag(e,Zc.Bytes),this.writeBytes(t)},writeFixed32Field:function(e,t){this.writeTag(e,Zc.Fixed32),this.writeFixed32(t)},writeSFixed32Field:function(e,t){this.writeTag(e,Zc.Fixed32),this.writeSFixed32(t)},writeFixed64Field:function(e,t){this.writeTag(e,Zc.Fixed64),this.writeFixed64(t)},writeSFixed64Field:function(e,t){this.writeTag(e,Zc.Fixed64),this.writeSFixed64(t)},writeVarintField:function(e,t){this.writeTag(e,Zc.Varint),this.writeVarint(t)},writeSVarintField:function(e,t){this.writeTag(e,Zc.Varint),this.writeSVarint(t)},writeStringField:function(e,t){this.writeTag(e,Zc.Bytes),this.writeString(t)},writeFloatField:function(e,t){this.writeTag(e,Zc.Fixed32),this.writeFloat(t)},writeDoubleField:function(e,t){this.writeTag(e,Zc.Fixed64),this.writeDouble(t)},writeBooleanField:function(e,t){this.writeVarintField(e,Boolean(t))}};var wf=3;function kf(e,t,r){1===e&&r.readMessage(Tf,t)}function Tf(e,t,r){if(3===e){var n=r.readMessage(Mf,{}),i=n.id,a=n.bitmap,o=n.width,s=n.height,l=n.left,u=n.top,c=n.advance;t.push({id:i,bitmap:new Hl({width:o+2*wf,height:s+2*wf},a),metrics:{width:o,height:s,left:l,top:u,advance:c}})}}function Mf(e,t,r){1===e?t.id=r.readVarint():2===e?t.bitmap=r.readBytes():3===e?t.width=r.readVarint():4===e?t.height=r.readVarint():5===e?t.left=r.readSVarint():6===e?t.top=r.readSVarint():7===e&&(t.advance=r.readVarint())}function Af(e){return new Yc(e).readFields(kf,[])}var Sf=wf;function Ef(e){for(var t=0,r=0,n=0,i=e;n=0;d--){var h=o[d];if(!(f.w>h.w||f.h>h.h)){if(f.x=h.x,f.y=h.y,l=Math.max(l,f.y+f.h),s=Math.max(s,f.x+f.w),f.w===h.w&&f.h===h.h){var p=o.pop();d=0&&n>=e&&Vf[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(e,r),this.sectionIndex=this.sectionIndex.slice(e,r)},Bf.prototype.substring=function(e,t){var r=new Bf;return r.text=this.text.substring(e,t),r.sectionIndex=this.sectionIndex.slice(e,t),r.sections=this.sections,r},Bf.prototype.toString=function(){return this.text},Bf.prototype.getMaxScale=function(){var e=this;return this.sectionIndex.reduce((function(t,r){return Math.max(t,e.sections[r].scale)}),0)},Bf.prototype.addTextSection=function(e,t){this.text+=e.text,this.sections.push(Nf.forText(e.scale,e.fontStack||t));for(var r=this.sections.length-1,n=0;n=Ff?null:++this.imageSectionID:(this.imageSectionID=zf,this.imageSectionID)};var Vf={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Hf={};function qf(e,t,r,n,i,a){if(t.imageName){var o=n[t.imageName];return o?o.displaySize[0]*t.scale*Wc/a+i:0}var s=r[t.fontStack],l=s&&s[e];return l?l.metrics.advance*t.scale+i:0}function Wf(e,t,r,n,i,a){for(var o=0,s=0;s=0,c=0,f=0;f0&&N>M&&(M=N)}else{var B=r[S.fontStack],j=B&&B[C];if(j&&j.rect)O=j.rect,P=j.metrics;else{var U=t[S.fontStack],V=U&&U[C];if(!V)continue;P=V.metrics}L=(_-S.scale)*Wc}R?(e.verticalizable=!0,T.push({glyph:C,imageName:I,x:d,y:h+L,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:O}),d+=D*S.scale+u):(T.push({glyph:C,imageName:I,x:d,y:h+L,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:O}),d+=P.advance*S.scale+u)}if(0!==T.length){var H=d-u;p=Math.max(H,p),Qf(T,0,T.length-1,m,M)}d=0;var q=a*_+M;k.lineOffset=Math.max(M,w),h+=q,v=Math.max(q,v),++g}else h+=a,++g}var W=h-Df,G=$f(o),Y=G.horizontalAlign,Z=G.verticalAlign;ed(e.positionedLines,m,Y,Z,p,v,a,W,i.length),e.top+=-Z*W,e.bottom=e.top+W,e.left+=-Y*p,e.right=e.left+p}function Qf(e,t,r,n,i){if(n||i)for(var a=e[r],o=a.metrics.advance*a.scale,s=(e[r].x+o)*n,l=t;l<=r;l++)e[l].x-=s,e[l].y+=i}function ed(e,t,r,n,i,a,o,s,l){var u=(t-r)*i,c=0;c=a!==o?-s*n-Df:(-n*l+.5)*o;for(var f=0,d=e;f-r/2;){if(--o<0)return!1;s-=e[o].dist(a),a=e[o]}s+=e[o].dist(e[o+1]),o++;for(var l=[],u=0;sn;)u-=l.shift().angleDelta;if(u>i)return!1;o++,s+=f.dist(d)}return!0}function cd(e){for(var t=0,r=0;ru){var p=(u-l)/h,v=zr(f.x,d.x,p),m=zr(f.y,d.y,p),g=new nd(v,m,d.angleTo(f),c);return g._round(),!o||ud(e,g,s,o,t)?g:void 0}l+=h}}function pd(e,t,r,n,i,a,o,s,l){var u=fd(n,a,o),c=dd(n,i),f=c*o,d=0===e[0].x||e[0].x===l||0===e[0].y||e[0].y===l;return t-f=0&&b=0&&_=0&&d+u<=c){var w=new nd(b,_,y,p);w._round(),n&&!ud(e,w,a,n,i)||h.push(w)}}f+=g}return s||h.length||o||(h=vd(e,f/2,r,n,i,a,o,!0,l)),h}function md(e,t,r,n,i){for(var o=[],s=0;s=n&&d.x>=n||(f.x>=n?f=new a(n,f.y+(d.y-f.y)*((n-f.x)/(d.x-f.x)))._round():d.x>=n&&(d=new a(n,f.y+(d.y-f.y)*((n-f.x)/(d.x-f.x)))._round()),f.y>=i&&d.y>=i||(f.y>=i?f=new a(f.x+(d.x-f.x)*((i-f.y)/(d.y-f.y)),i)._round():d.y>=i&&(d=new a(f.x+(d.x-f.x)*((i-f.y)/(d.y-f.y)),i)._round()),u&&f.equals(u[u.length-1])||(u=[f],o.push(u)),u.push(d)))))}return o}var gd=Cf;function yd(e,t,r,n){var i=[],o=e.image,s=o.pixelRatio,l=o.paddedRect.w-2*gd,u=o.paddedRect.h-2*gd,c=e.right-e.left,f=e.bottom-e.top,d=o.stretchX||[[0,l]],h=o.stretchY||[[0,u]],p=function(e,t){return e+t[1]-t[0]},v=d.reduce(p,0),m=h.reduce(p,0),g=l-v,y=u-m,x=0,b=v,_=0,w=m,k=0,T=g,M=0,A=y;if(o.content&&n){var S=o.content;x=xd(d,0,S[0]),_=xd(h,0,S[1]),b=xd(d,S[0],S[2]),w=xd(h,S[1],S[3]),k=S[0]-x,M=S[1]-_,T=S[2]-S[0]-b,A=S[3]-S[1]-w}var E=function(n,i,l,u){var d=_d(n.stretch-x,b,c,e.left),h=wd(n.fixed-k,T,n.stretch,v),p=_d(i.stretch-_,w,f,e.top),g=wd(i.fixed-M,A,i.stretch,m),y=_d(l.stretch-x,b,c,e.left),S=wd(l.fixed-k,T,l.stretch,v),E=_d(u.stretch-_,w,f,e.top),C=wd(u.fixed-M,A,u.stretch,m),L=new a(d,p),P=new a(y,p),O=new a(y,E),I=new a(d,E),D=new a(h/s,g/s),R=new a(S/s,C/s),z=t*Math.PI/180;if(z){var F=Math.sin(z),N=Math.cos(z),B=[N,-F,F,N];L._matMult(B),P._matMult(B),I._matMult(B),O._matMult(B)}var j=n.stretch+n.fixed,U=l.stretch+l.fixed,V=i.stretch+i.fixed,H=u.stretch+u.fixed;return{tl:L,tr:P,bl:I,br:O,tex:{x:o.paddedRect.x+gd+j,y:o.paddedRect.y+gd+V,w:U-j,h:H-V},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:T/s/c,minFontScaleY:A/s/f,isSDF:r}};if(n&&(o.stretchX||o.stretchY))for(var C=bd(d,g,v),L=bd(h,y,m),P=0;P0&&(p=Math.max(10,p),this.circleDiameter=p)}else{var v=o.top*s-l,m=o.bottom*s+l,g=o.left*s-l,y=o.right*s+l,x=o.collisionPadding;if(x&&(g-=x[0]*s,v-=x[1]*s,y+=x[2]*s,m+=x[3]*s),c){var b=new a(g,v),_=new a(y,v),w=new a(g,m),k=new a(y,m),T=c*Math.PI/180;b._rotate(T),_._rotate(T),w._rotate(T),k._rotate(T),g=Math.min(b.x,_.x,w.x,k.x),y=Math.max(b.x,_.x,w.x,k.x),v=Math.min(b.y,_.y,w.y,k.y),m=Math.max(b.y,_.y,w.y,k.y)}e.emplaceBack(t.x,t.y,g,v,y,m,r,n,i)}this.boxEndIndex=e.length},Md=function(e,t){if(void 0===e&&(e=[]),void 0===t&&(t=Ad),this.data=e,this.length=this.data.length,this.compare=t,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function Ad(e,t){return et?1:0}function Sd(e,t,r){void 0===t&&(t=1),void 0===r&&(r=!1);for(var n=1/0,i=1/0,o=-1/0,s=-1/0,l=e[0],u=0;uo)&&(o=c.x),(!u||c.y>s)&&(s=c.y)}var f=o-n,d=s-i,h=Math.min(f,d),p=h/2,v=new Md([],Ed);if(0===h)return new a(n,i);for(var m=n;my.d||!y.d)&&(y=b,r&&console.log("found best %d after %d probes",Math.round(1e4*b.d)/1e4,x)),b.max-y.d<=t||(p=b.h/2,v.push(new Cd(b.p.x-p,b.p.y-p,p,e)),v.push(new Cd(b.p.x+p,b.p.y-p,p,e)),v.push(new Cd(b.p.x-p,b.p.y+p,p,e)),v.push(new Cd(b.p.x+p,b.p.y+p,p,e)),x+=4)}return r&&(console.log("num probes: "+x),console.log("best distance: "+y.d)),y.p}function Ed(e,t){return t.max-e.max}function Cd(e,t,r,n){this.p=new a(e,t),this.h=r,this.d=Ld(this.p,n),this.max=this.d+this.h*Math.SQRT2}function Ld(e,t){for(var r=!1,n=1/0,i=0;ie.y!==c.y>e.y&&e.x<(c.x-u.x)*(e.y-u.y)/(c.y-u.y)+u.x&&(r=!r),n=Math.min(n,Gs(e,u,c))}return(r?1:-1)*Math.sqrt(n)}function Pd(e){for(var t=0,r=0,n=0,i=e[0],a=0,o=i.length,s=o-1;a0&&(this.data[0]=t,this._down(0)),e}},Md.prototype.peek=function(){return this.data[0]},Md.prototype._up=function(e){for(var t=this,r=t.data,n=t.compare,i=r[e];e>0;){var a=e-1>>1,o=r[a];if(n(i,o)>=0)break;r[e]=o,e=a}r[e]=i},Md.prototype._down=function(e){for(var t=this,r=t.data,n=t.compare,i=this.length>>1,a=r[e];e=0)break;r[e]=s,e=o}r[e]=a};var Od=7,Id=Number.POSITIVE_INFINITY;function Dd(e,t){function r(e,t){var r=0,n=0;t<0&&(t=0);var i=t/Math.sqrt(2);switch(e){case"top-right":case"top-left":n=i-Od;break;case"bottom-right":case"bottom-left":n=-i+Od;break;case"bottom":n=-t+Od;break;case"top":n=t-Od}switch(e){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=t;break;case"right":r=-t}return[r,n]}function n(e,t,r){var n=0,i=0;switch(t=Math.abs(t),r=Math.abs(r),e){case"top-right":case"top-left":case"top":i=r-Od;break;case"bottom-right":case"bottom-left":case"bottom":i=-r+Od}switch(e){case"top-right":case"bottom-right":case"right":n=-t;break;case"top-left":case"bottom-left":case"left":n=t}return[n,i]}return t[1]!==Id?n(e,t[0],t[1]):r(e,t[0])}function Rd(e,t,r,n,i,a,o){e.createArrays();var s=512*e.overscaling;e.tilePixelRatio=Os/s,e.compareText={},e.iconsNeedLinear=!1;var l=e.layers[0].layout,u=e.layers[0]._unevaluatedLayout._values,c={};if("composite"===e.textSizeData.kind){var f=e.textSizeData,d=f.minZoom,h=f.maxZoom;c.compositeTextSizes=[u["text-size"].possiblyEvaluate(new Za(d),o),u["text-size"].possiblyEvaluate(new Za(h),o)]}if("composite"===e.iconSizeData.kind){var p=e.iconSizeData,v=p.minZoom,m=p.maxZoom;c.compositeIconSizes=[u["icon-size"].possiblyEvaluate(new Za(v),o),u["icon-size"].possiblyEvaluate(new Za(m),o)]}c.layoutTextSize=u["text-size"].possiblyEvaluate(new Za(e.zoom+1),o),c.layoutIconSize=u["icon-size"].possiblyEvaluate(new Za(e.zoom+1),o),c.textMaxSize=u["text-size"].possiblyEvaluate(new Za(18));for(var g=l.get("text-line-height")*Wc,y="map"===l.get("text-rotation-alignment")&&"point"!==l.get("symbol-placement"),x=l.get("text-keep-upright"),b=l.get("text-size"),_=function(){var a=k[w],s=l.get("text-font").evaluate(a,{},o).join(","),u=b.evaluate(a,{},o),f=c.layoutTextSize.evaluate(a,{},o),d=c.layoutIconSize.evaluate(a,{},o),h={horizontal:{},vertical:void 0},p=a.text,v=[0,0];if(p){var m=p.toString(),_=l.get("text-letter-spacing").evaluate(a,{},o)*Wc,T=Ta(m)?_: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);v=S?Dd(M,[S*Wc,Id]):l.get("text-offset").evaluate(a,{},o).map((function(e){return e*Wc}))}var E=y?"center":l.get("text-justify").evaluate(a,{},o),L=l.get("symbol-placement"),P="point"===L?l.get("text-max-width").evaluate(a,{},o)*Wc:0,O=function(){e.allowVerticalPlacement&&ka(m)&&(h.vertical=Uf(p,t,r,i,s,P,g,M,"left",T,v,If.vertical,!0,L,f,u))};if(!y&&A){for(var I="auto"===E?A.map((function(e){return zd(e)})):[E],D=!1,R=0;R=Os||f.y<0||f.y>=Os||Vd(e,f,s,r,n,i,d,e.layers[0],e.collisionBoxArray,t.index,t.sourceLayerIndex,e.index,y,w,M,l,b,k,A,p,t,a,u,c,o)};if("line"===S)for(var P=0,O=md(t.geometry,0,0,Os,Os);P1){var j=hd(B,T,r.vertical||v,n,m,x);j&&L(B,j)}}else if("Polygon"===t.type)for(var U=0,V=Ru(t.geometry,0);UBd&&C(e.layerIds[0]+': Value for "text-size" is >= '+Nd+'. Reduce your "text-size".'):"composite"===m.kind&&((g=[id*h.compositeTextSizes[0].evaluate(o,{},p),id*h.compositeTextSizes[1].evaluate(o,{},p)])[0]>Bd||g[1]>Bd)&&C(e.layerIds[0]+': Value for "text-size" is >= '+Nd+'. Reduce your "text-size".'),e.addSymbols(e.text,v,g,s,a,o,u,t,l.lineStartIndex,l.lineLength,d,p);for(var y=0,x=c;yBd&&C(e.layerIds[0]+': Value for "icon-size" is >= '+Nd+'. Reduce your "icon-size".'):"composite"===Z.kind&&((X=[id*_.compositeIconSizes[0].evaluate(b,{},k),id*_.compositeIconSizes[1].evaluate(b,{},k)])[0]>Bd||X[1]>Bd)&&C(e.layerIds[0]+': Value for "icon-size" is >= '+Nd+'. Reduce your "icon-size".'),e.addSymbols(e.icon,G,X,x,y,b,!1,t,P.lineStartIndex,P.lineLength,-1,k),z=e.icon.placedSymbolArray.length-1,Y&&(I=4*Y.length,e.addSymbols(e.icon,Y,X,x,y,b,If.vertical,t,P.lineStartIndex,P.lineLength,-1,k),F=e.icon.placedSymbolArray.length-1)}for(var K in n.horizontal){var $=n.horizontal[K];if(!A){B=is($.text);var J=s.layout.get("text-rotate").evaluate(b,{},k);A=new Td(l,t,u,c,f,$,d,h,p,J)}var Q=1===$.positionedLines.length;if(D+=jd(e,t,$,a,s,p,b,v,P,n.vertical?If.horizontal:If.horizontalOnly,Q?Object.keys(n.horizontal):[K],N,z,_,k),Q)break}n.vertical&&(R+=jd(e,t,n.vertical,a,s,p,b,v,P,If.vertical,["vertical"],N,F,_,k));var ee=A?A.boxStartIndex:e.collisionBoxArray.length,te=A?A.boxEndIndex:e.collisionBoxArray.length,re=E?E.boxStartIndex:e.collisionBoxArray.length,ne=E?E.boxEndIndex:e.collisionBoxArray.length,ie=S?S.boxStartIndex:e.collisionBoxArray.length,ae=S?S.boxEndIndex:e.collisionBoxArray.length,oe=L?L.boxStartIndex:e.collisionBoxArray.length,se=L?L.boxEndIndex:e.collisionBoxArray.length,le=-1,ue=function(e,t){return e&&e.circleDiameter?Math.max(e.circleDiameter,t):t};le=ue(A,le),le=ue(E,le),le=ue(S,le);var ce=(le=ue(L,le))>-1?1:0;ce&&(le*=T/Wc),e.glyphOffsetArray.length>=$d.MAX_GLYPHS&&C("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==b.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,b.sortKey),e.symbolInstances.emplaceBack(t.x,t.y,N.right>=0?N.right:-1,N.center>=0?N.center:-1,N.left>=0?N.left:-1,N.vertical||-1,z,F,B,ee,te,re,ne,ie,ae,oe,se,u,D,R,O,I,ce,0,d,j,U,le)}function Hd(e,t,r,n){var i=e.compareText;if(t in i){for(var a=i[t],o=a.length-1;o>=0;o--)if(n.dist(a[o])0)&&("constant"!==a.value.kind||a.value.value.length>0),u="constant"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,c=i.get("symbol-sort-key");if(this.features=[],l||u){for(var f=t.iconDependencies,d=t.glyphDependencies,h=t.availableImages,p=new Za(this.zoom),v=0,m=e;v=0;for(var I=0,D=T.sections;I=0;s--)a[s]={x:t[s].x,y:t[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=t[s-1].dist(t[s]));for(var l=0;l0},$d.prototype.hasIconData=function(){return this.icon.segments.get().length>0},$d.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},$d.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},$d.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},$d.prototype.addIndicesForPlacedSymbol=function(e,t){for(var r=e.placedSymbolArray.get(t),n=r.vertexStartIndex+4*r.numGlyphs,i=r.vertexStartIndex;i1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(e),this.sortedAngle=e,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r=0&&n.indexOf(e)===r&&t.addIndicesForPlacedSymbol(t.text,e)})),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)}},va("SymbolBucket",$d,{omit:["layers","collisionBoxArray","features","compareText"]}),$d.MAX_GLYPHS=65535,$d.addDynamicAttributes=Yd;var Qd=new lo({"symbol-placement":new no(lt.layout_symbol["symbol-placement"]),"symbol-spacing":new no(lt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new no(lt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new io(lt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new no(lt.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new no(lt.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new no(lt.layout_symbol["icon-ignore-placement"]),"icon-optional":new no(lt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new no(lt.layout_symbol["icon-rotation-alignment"]),"icon-size":new io(lt.layout_symbol["icon-size"]),"icon-text-fit":new no(lt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new no(lt.layout_symbol["icon-text-fit-padding"]),"icon-image":new io(lt.layout_symbol["icon-image"]),"icon-rotate":new io(lt.layout_symbol["icon-rotate"]),"icon-padding":new no(lt.layout_symbol["icon-padding"]),"icon-keep-upright":new no(lt.layout_symbol["icon-keep-upright"]),"icon-offset":new io(lt.layout_symbol["icon-offset"]),"icon-anchor":new io(lt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new no(lt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new no(lt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new no(lt.layout_symbol["text-rotation-alignment"]),"text-field":new io(lt.layout_symbol["text-field"]),"text-font":new io(lt.layout_symbol["text-font"]),"text-size":new io(lt.layout_symbol["text-size"]),"text-max-width":new io(lt.layout_symbol["text-max-width"]),"text-line-height":new no(lt.layout_symbol["text-line-height"]),"text-letter-spacing":new io(lt.layout_symbol["text-letter-spacing"]),"text-justify":new io(lt.layout_symbol["text-justify"]),"text-radial-offset":new io(lt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new no(lt.layout_symbol["text-variable-anchor"]),"text-anchor":new io(lt.layout_symbol["text-anchor"]),"text-max-angle":new no(lt.layout_symbol["text-max-angle"]),"text-writing-mode":new no(lt.layout_symbol["text-writing-mode"]),"text-rotate":new io(lt.layout_symbol["text-rotate"]),"text-padding":new no(lt.layout_symbol["text-padding"]),"text-keep-upright":new no(lt.layout_symbol["text-keep-upright"]),"text-transform":new io(lt.layout_symbol["text-transform"]),"text-offset":new io(lt.layout_symbol["text-offset"]),"text-allow-overlap":new no(lt.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new no(lt.layout_symbol["text-ignore-placement"]),"text-optional":new no(lt.layout_symbol["text-optional"])}),eh={paint:new lo({"icon-opacity":new io(lt.paint_symbol["icon-opacity"]),"icon-color":new io(lt.paint_symbol["icon-color"]),"icon-halo-color":new io(lt.paint_symbol["icon-halo-color"]),"icon-halo-width":new io(lt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new io(lt.paint_symbol["icon-halo-blur"]),"icon-translate":new no(lt.paint_symbol["icon-translate"]),"icon-translate-anchor":new no(lt.paint_symbol["icon-translate-anchor"]),"text-opacity":new io(lt.paint_symbol["text-opacity"]),"text-color":new io(lt.paint_symbol["text-color"],{runtimeType:bt,getOverride:function(e){return e.textColor},hasOverride:function(e){return!!e.textColor}}),"text-halo-color":new io(lt.paint_symbol["text-halo-color"]),"text-halo-width":new io(lt.paint_symbol["text-halo-width"]),"text-halo-blur":new io(lt.paint_symbol["text-halo-blur"]),"text-translate":new no(lt.paint_symbol["text-translate"]),"text-translate-anchor":new no(lt.paint_symbol["text-translate-anchor"])}),layout:Qd},th=function(e){this.type=e.property.overrides?e.property.overrides.runtimeType:mt,this.defaultValue=e};th.prototype.evaluate=function(e){if(e.formattedSection){var t=this.defaultValue.property.overrides;if(t&&t.hasOverride(e.formattedSection))return t.getOverride(e.formattedSection)}return e.feature&&e.featureState?this.defaultValue.evaluate(e.feature,e.featureState):this.defaultValue.property.specification.default},th.prototype.eachChild=function(e){this.defaultValue.isConstant()||e(this.defaultValue.value._styleExpression.expression)},th.prototype.outputDefined=function(){return!1},th.prototype.serialize=function(){return null},va("FormatSectionOverride",th,{omit:["defaultValue"]});var rh=function(e){function t(t){e.call(this,t,eh)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.recalculate=function(t,r){if(e.prototype.recalculate.call(this,t,r),"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 n=this.layout.get("text-writing-mode");if(n){for(var i=[],a=0,o=n;a",targetMapId:n,sourceMapId:a.mapId})}}},yh.prototype.receive=function(e){var t=e.data,r=t.id;if(r&&(!t.targetMapId||this.mapId===t.targetMapId))if(""===t.type){delete this.tasks[r];var n=this.cancelCallbacks[r];delete this.cancelCallbacks[r],n&&n()}else I()||t.mustQueue?(this.tasks[r]=t,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,t)},yh.prototype.process=function(){if(this.taskQueue.length){var e=this.taskQueue.shift(),t=this.tasks[e];delete this.tasks[e],this.taskQueue.length&&this.invoker.trigger(),t&&this.processTask(e,t)}},yh.prototype.processTask=function(e,t){var r=this;if(""===t.type){var n=this.callbacks[e];delete this.callbacks[e],n&&(t.error?n(ba(t.error)):n(null,ba(t.data)))}else{var i=!1,a=z(this.globalScope)?void 0:[],o=t.hasCallback?function(t,n){i=!0,delete r.cancelCallbacks[e],r.target.postMessage({id:e,type:"",sourceMapId:r.mapId,error:t?xa(t):null,data:xa(n,a)},a)}:function(e){i=!0},s=null,l=ba(t.data);if(this.parent[t.type])s=this.parent[t.type](t.sourceMapId,l,o);else if(this.parent.getWorkerSource){var u=t.type.split(".");s=this.parent.getWorkerSource(t.sourceMapId,u[0],l.source)[u[1]](l,o)}else o(new Error("Could not find function "+t.type));!i&&s&&s.cancel&&(this.cancelCallbacks[e]=s.cancel)}},yh.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var _h=function(e,t){e&&(t?this.setSouthWest(e).setNorthEast(t):4===e.length?this.setSouthWest([e[0],e[1]]).setNorthEast([e[2],e[3]]):this.setSouthWest(e[0]).setNorthEast(e[1]))};_h.prototype.setNorthEast=function(e){return this._ne=e instanceof kh?new kh(e.lng,e.lat):kh.convert(e),this},_h.prototype.setSouthWest=function(e){return this._sw=e instanceof kh?new kh(e.lng,e.lat):kh.convert(e),this},_h.prototype.extend=function(e){var t,r,n=this._sw,i=this._ne;if(e instanceof kh)t=e,r=e;else{if(!(e instanceof _h)){if(Array.isArray(e)){if(4===e.length||e.every(Array.isArray)){var a=e;return this.extend(_h.convert(a))}var o=e;return this.extend(kh.convert(o))}return this}if(t=e._sw,r=e._ne,!t||!r)return this}return n||i?(n.lng=Math.min(t.lng,n.lng),n.lat=Math.min(t.lat,n.lat),i.lng=Math.max(r.lng,i.lng),i.lat=Math.max(r.lat,i.lat)):(this._sw=new kh(t.lng,t.lat),this._ne=new kh(r.lng,r.lat)),this},_h.prototype.getCenter=function(){return new kh((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},_h.prototype.getSouthWest=function(){return this._sw},_h.prototype.getNorthEast=function(){return this._ne},_h.prototype.getNorthWest=function(){return new kh(this.getWest(),this.getNorth())},_h.prototype.getSouthEast=function(){return new kh(this.getEast(),this.getSouth())},_h.prototype.getWest=function(){return this._sw.lng},_h.prototype.getSouth=function(){return this._sw.lat},_h.prototype.getEast=function(){return this._ne.lng},_h.prototype.getNorth=function(){return this._ne.lat},_h.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},_h.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},_h.prototype.isEmpty=function(){return!(this._sw&&this._ne)},_h.prototype.contains=function(e){var t=kh.convert(e),r=t.lng,n=t.lat,i=this._sw.lat<=n&&n<=this._ne.lat,a=this._sw.lng<=r&&r<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=r&&r>=this._ne.lng),i&&a},_h.convert=function(e){return!e||e instanceof _h?e:new _h(e)};var wh=6371008.8,kh=function(e,t){if(isNaN(e)||isNaN(t))throw new Error("Invalid LngLat object: ("+e+", "+t+")");if(this.lng=+e,this.lat=+t,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};kh.prototype.wrap=function(){return new kh(d(this.lng,-180,180),this.lat)},kh.prototype.toArray=function(){return[this.lng,this.lat]},kh.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},kh.prototype.distanceTo=function(e){var t=Math.PI/180,r=this.lat*t,n=e.lat*t,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((e.lng-this.lng)*t);return wh*Math.acos(Math.min(i,1))},kh.prototype.toBounds=function(e){void 0===e&&(e=0);var t=360*e/40075017,r=t/Math.cos(Math.PI/180*this.lat);return new _h(new kh(this.lng-r,this.lat-t),new kh(this.lng+r,this.lat+t))},kh.convert=function(e){if(e instanceof kh)return e;if(Array.isArray(e)&&(2===e.length||3===e.length))return new kh(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&"object"===typeof e&&null!==e)return new kh(Number("lng"in e?e.lng:e.lon),Number(e.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 Th=2*Math.PI*wh;function Mh(e){return Th*Math.cos(e*Math.PI/180)}function Ah(e){return(180+e)/360}function Sh(e){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e*Math.PI/360)))/360}function Eh(e,t){return e/Mh(t)}function Ch(e){return 360*e-180}function Lh(e){var t=180-360*e;return 360/Math.PI*Math.atan(Math.exp(t*Math.PI/180))-90}function Ph(e,t){return e*Mh(Lh(t))}function Oh(e){return 1/Math.cos(e*Math.PI/180)}var Ih=function(e,t,r){void 0===r&&(r=0),this.x=+e,this.y=+t,this.z=+r};Ih.fromLngLat=function(e,t){void 0===t&&(t=0);var r=kh.convert(e);return new Ih(Ah(r.lng),Sh(r.lat),Eh(t,r.lat))},Ih.prototype.toLngLat=function(){return new kh(Ch(this.x),Lh(this.y))},Ih.prototype.toAltitude=function(){return Ph(this.z,this.y)},Ih.prototype.meterInMercatorCoordinateUnits=function(){return 1/Th*Oh(Lh(this.y))};var Dh=function(e,t,r){this.z=e,this.x=t,this.y=r,this.key=Fh(0,e,e,t,r)};Dh.prototype.equals=function(e){return this.z===e.z&&this.x===e.x&&this.y===e.y},Dh.prototype.url=function(e,t){var r=xh(this.x,this.y,this.z),n=Nh(this.z,this.x,this.y);return e[(this.x+this.y)%e.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"===t?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",n).replace("{bbox-epsg-3857}",r)},Dh.prototype.getTilePoint=function(e){var t=Math.pow(2,this.z);return new a((e.x*t-this.x)*Os,(e.y*t-this.y)*Os)},Dh.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var Rh=function(e,t){this.wrap=e,this.canonical=t,this.key=Fh(e,t.z,t.z,t.x,t.y)},zh=function(e,t,r,n,i){this.overscaledZ=e,this.wrap=t,this.canonical=new Dh(r,+n,+i),this.key=Fh(t,e,r,n,i)};function Fh(e,t,r,n,i){(e*=2)<0&&(e=-1*e-1);var a=1<0;a--)i+=(t&(n=1<this.canonical.z?new zh(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new zh(e,this.wrap,e,this.canonical.x>>t,this.canonical.y>>t)},zh.prototype.calculateScaledKey=function(e,t){var r=this.canonical.z-e;return e>this.canonical.z?Fh(this.wrap*+t,e,this.canonical.z,this.canonical.x,this.canonical.y):Fh(this.wrap*+t,e,e,this.canonical.x>>r,this.canonical.y>>r)},zh.prototype.isChildOf=function(e){if(e.wrap!==this.wrap)return!1;var t=this.canonical.z-e.canonical.z;return 0===e.overscaledZ||e.overscaledZ>t&&e.canonical.y===this.canonical.y>>t},zh.prototype.children=function(e){if(this.overscaledZ>=e)return[new zh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var t=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new zh(t,this.wrap,t,r,n),new zh(t,this.wrap,t,r+1,n),new zh(t,this.wrap,t,r,n+1),new zh(t,this.wrap,t,r+1,n+1)]},zh.prototype.isLessThan=function(e){return this.wrape.wrap)&&(this.overscaledZe.overscaledZ)&&(this.canonical.xe.canonical.x)&&this.canonical.y=this.dim+1||t<-1||t>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(t+1)*this.stride+(e+1)},Bh.prototype._unpackMapbox=function(e,t,r){return(256*e*256+256*t+r)/10-1e4},Bh.prototype._unpackTerrarium=function(e,t,r){return 256*e+t+r/256-32768},Bh.prototype.getPixels=function(){return new ql({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bh.prototype.backfillBorder=function(e,t,r){if(this.dim!==e.dim)throw new Error("dem dimension mismatch");var n=t*this.dim,i=t*this.dim+this.dim,a=r*this.dim,o=r*this.dim+this.dim;switch(t){case-1:n=i-1;break;case 1:i=n+1}switch(r){case-1:a=o-1;break;case 1:o=a+1}for(var s=-t*this.dim,l=-r*this.dim,u=a;u=0&&c[3]>=0&&s.insert(o,c[0],c[1],c[2],c[3])}},Wh.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new nc.VectorTile(new Yc(this.rawTileData)).layers,this.sourceLayerCoder=new Uh(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Wh.prototype.query=function(e,t,r,n){var i=this;this.loadVTLayers();for(var a=e.params||{},o=Os/e.tileSize/e.scale,s=Li(a.filter),l=e.queryGeometry,u=e.queryPadding*o,c=Yh(l),f=this.grid.query(c.minX-u,c.minY-u,c.maxX+u,c.maxY+u),d=Yh(e.cameraQueryGeometry),h=0,p=this.grid3D.query(d.minX-u,d.minY-u,d.maxX+u,d.maxY+u,(function(t,r,n,i){return Xs(e.cameraQueryGeometry,t-u,r-u,n+u,i+u)}));hn)i=!1;else if(t)if(this.expirationTime=E.maxzoom||"none"!==E.visibility&&(l(S,this.zoom,n),(v[E.id]=E.createBucket({index:c.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:b,sourceID:this.source})).populate(_,m,this.tileID.canonical),c.bucketLayerIDs.push(S.map((function(e){return e.id}))))}}}var C=e.mapObject(m.glyphDependencies,(function(e){return Object.keys(e).map(Number)}));Object.keys(C).length?i.send("getGlyphs",{uid:this.uid,stacks:C},(function(e,t){f||(f=e,d=t,O.call(s))})):d={};var L=Object.keys(m.iconDependencies);L.length?i.send("getImages",{icons:L,source:this.source,tileID:this.tileID,type:"icons"},(function(e,t){f||(f=e,h=t,O.call(s))})):h={};var P=Object.keys(m.patternDependencies);function O(){if(f)return a(f);if(d&&h&&p){var t=new o(d),r=new e.ImageAtlas(h,p);for(var i in v){var s=v[i];s instanceof e.SymbolBucket?(l(s.layers,this.zoom,n),e.performSymbolLayout(s,d,t.positions,h,r.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):s.hasPattern&&(s instanceof e.LineBucket||s instanceof e.FillBucket||s instanceof e.FillExtrusionBucket)&&(l(s.layers,this.zoom,n),s.addFeatures(m,this.tileID.canonical,r.patternPositions))}this.status="done",a(null,{buckets:e.values(v).filter((function(e){return!e.isEmpty()})),featureIndex:c,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:t.image,imageAtlas:r,glyphMap:this.returnDependencies?d:null,iconMap:this.returnDependencies?h:null,glyphPositions:this.returnDependencies?t.positions:null})}}P.length?i.send("getImages",{icons:P,source:this.source,tileID:this.tileID,type:"patterns"},(function(e,t){f||(f=e,p=t,O.call(s))})):p={},O.call(this)};var c=function(e,t,r,n){this.actor=e,this.layerIndex=t,this.availableImages=r,this.loadVectorData=n||u,this.loading={},this.loaded={}};c.prototype.loadTile=function(t,r){var n=this,i=t.uid;this.loading||(this.loading={});var a=!!(t&&t.request&&t.request.collectResourceTiming)&&new e.RequestPerformance(t.request),o=this.loading[i]=new s(t);o.abort=this.loadVectorData(t,(function(t,s){if(delete n.loading[i],t||!s)return o.status="done",n.loaded[i]=o,r(t);var l=s.rawData,u={};s.expires&&(u.expires=s.expires),s.cacheControl&&(u.cacheControl=s.cacheControl);var c={};if(a){var f=a.finish();f&&(c.resourceTiming=JSON.parse(JSON.stringify(f)))}o.vectorTile=s.vectorTile,o.parse(s.vectorTile,n.layerIndex,n.availableImages,n.actor,(function(t,n){if(t||!n)return r(t);r(null,e.extend({rawTileData:l.slice(0)},n,u,c))})),n.loaded=n.loaded||{},n.loaded[i]=o}))},c.prototype.reloadTile=function(e,t){var r=this,n=this.loaded,i=e.uid,a=this;if(n&&n[i]){var o=n[i];o.showCollisionBoxes=e.showCollisionBoxes;var s=function(e,n){var i=o.reloadCallback;i&&(delete o.reloadCallback,o.parse(o.vectorTile,a.layerIndex,r.availableImages,a.actor,i)),t(e,n)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},c.prototype.abortTile=function(e,t){var r=this.loading,n=e.uid;r&&r[n]&&r[n].abort&&(r[n].abort(),delete r[n]),t()},c.prototype.removeTile=function(e,t){var r=this.loaded,n=e.uid;r&&r[n]&&delete r[n],t()};var f=e.window.ImageBitmap,d=function(){this.loaded={}};d.prototype.loadTile=function(t,r){var n=t.uid,i=t.encoding,a=t.rawImageData,o=f&&a instanceof f?this.getImageData(a):a,s=new e.DEMData(n,o,i);this.loaded=this.loaded||{},this.loaded[n]=s,r(null,s)},d.prototype.getImageData=function(t){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(t.width,t.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=t.width,this.offscreenCanvas.height=t.height,this.offscreenCanvasContext.drawImage(t,0,0,t.width,t.height);var r=this.offscreenCanvasContext.getImageData(-1,-1,t.width+2,t.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new e.RGBAImage({width:r.width,height:r.height},r.data)},d.prototype.removeTile=function(e){var t=this.loaded,r=e.uid;t&&t[r]&&delete t[r]};var h=p;function p(e,t){var r,n=e&&e.type;if("FeatureCollection"===n)for(r=0;r=0!==!!t&&e.reverse()}var g=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,y=function(t){this._feature=t,this.extent=e.EXTENT,this.type=t.type,this.properties=t.tags,"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))};y.prototype.loadGeometry=function(){if(1===this._feature.type){for(var t=[],r=0,n=this._feature.geometry;r>31}function z(e,t){for(var r=e.loadGeometry(),n=e.type,i=0,a=0,o=r.length,s=0;s>1;B(e,t,o,n,i,a%2),N(e,t,r,n,o-1,a+1),N(e,t,r,o+1,i,a+1)}}function B(e,t,r,n,i,a){for(;i>n;){if(i-n>600){var o=i-n+1,s=r-n+1,l=Math.log(o),u=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*u*(o-u)/o)*(s-o/2<0?-1:1);B(e,t,r,Math.max(n,Math.floor(r-s*u/o+c)),Math.min(i,Math.floor(r+(o-s)*u/o+c)),a)}var f=t[2*r+a],d=n,h=i;for(j(e,t,n,r),t[2*i+a]>f&&j(e,t,n,i);df;)h--}t[2*n+a]===f?j(e,t,n,h):j(e,t,++h,i),h<=r&&(n=h+1),r<=h&&(i=h-1)}}function j(e,t,r,n){U(e,r,n),U(t,2*r,2*n),U(t,2*r+1,2*n+1)}function U(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function V(e,t,r,n,i,a,o){for(var s,l,u=[0,e.length-1,0],c=[];u.length;){var f=u.pop(),d=u.pop(),h=u.pop();if(d-h<=o)for(var p=h;p<=d;p++)s=t[2*p],l=t[2*p+1],s>=r&&s<=i&&l>=n&&l<=a&&c.push(e[p]);else{var v=Math.floor((h+d)/2);s=t[2*v],l=t[2*v+1],s>=r&&s<=i&&l>=n&&l<=a&&c.push(e[v]);var m=(f+1)%2;(0===f?r<=s:n<=l)&&(u.push(h),u.push(v-1),u.push(m)),(0===f?i>=s:a>=l)&&(u.push(v+1),u.push(d),u.push(m))}}return c}function H(e,t,r,n,i,a){for(var o=[0,e.length-1,0],s=[],l=i*i;o.length;){var u=o.pop(),c=o.pop(),f=o.pop();if(c-f<=a)for(var d=f;d<=c;d++)q(t[2*d],t[2*d+1],r,n)<=l&&s.push(e[d]);else{var h=Math.floor((f+c)/2),p=t[2*h],v=t[2*h+1];q(p,v,r,n)<=l&&s.push(e[h]);var m=(u+1)%2;(0===u?r-i<=p:n-i<=v)&&(o.push(f),o.push(h-1),o.push(m)),(0===u?r+i>=p:n+i>=v)&&(o.push(h+1),o.push(c),o.push(m))}}return s}function q(e,t,r,n){var i=e-r,a=t-n;return i*i+a*a}T.fromVectorTileJs=M,T.fromGeojsonVt=A,T.GeoJSONWrapper=S;var W=function(e){return e[0]},G=function(e){return e[1]},Y=function(e,t,r,n,i){void 0===t&&(t=W),void 0===r&&(r=G),void 0===n&&(n=64),void 0===i&&(i=Float64Array),this.nodeSize=n,this.points=e;for(var a=e.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(e.length),s=this.coords=new i(2*e.length),l=0;l=1e4?Math.round(t/1e3)+"k":t>=1e3?Math.round(t/100)/10+"k":t;return ie(ie({},e.properties),{cluster:!0,cluster_id:e.id,point_count:t,point_count_abbreviated:r})}function ee(e){return e/360+.5}function te(e){var t=Math.sin(e*Math.PI/180),r=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return r<0?0:r>1?1:r}function re(e){return 360*(e-.5)}function ne(e){var t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function ie(e,t){for(var r in t)e[r]=t[r];return e}function ae(e){return e.x}function oe(e){return e.y}function se(e,t,r,n){for(var i,a=n,o=r-t>>1,s=r-t,l=e[t],u=e[t+1],c=e[r],f=e[r+1],d=t+3;da)i=d,a=h;else if(h===a){var p=Math.abs(d-o);pn&&(i-t>3&&se(e,t,i,n),e[i+2]=a,r-i>3&&se(e,i,r,n))}function le(e,t,r,n,i,a){var o=i-r,s=a-n;if(0!==o||0!==s){var l=((e-r)*o+(t-n)*s)/(o*o+s*s);l>1?(r=i,n=a):l>0&&(r+=o*l,n+=s*l)}return(o=e-r)*o+(s=t-n)*s}function ue(e,t,r,n){var i={id:"undefined"===typeof e?null:e,type:t,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return ce(i),i}function ce(e){var t=e.geometry,r=e.type;if("Point"===r||"MultiPoint"===r||"LineString"===r)fe(e,t);else if("Polygon"===r||"MultiLineString"===r)for(var n=0;n0&&(o+=n?(i*u-l*a)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(u-a,2))),i=l,a=u}var c=t.length-3;t[2]=1,se(t,0,c,r),t[c+2]=1,t.size=Math.abs(o),t.start=0,t.end=t.size}function me(e,t,r,n){for(var i=0;i1?1:r}function xe(e,t,r,n,i,a,o,s){if(n/=t,a>=(r/=t)&&o=n)return null;for(var l=[],u=0;u=r&&p=n)){var v=[];if("Point"===d||"MultiPoint"===d)be(f,v,r,n,i);else if("LineString"===d)_e(f,v,r,n,i,!1,s.lineMetrics);else if("MultiLineString"===d)ke(f,v,r,n,i,!1);else if("Polygon"===d)ke(f,v,r,n,i,!0);else if("MultiPolygon"===d)for(var m=0;m=r&&o<=n&&(t.push(e[a]),t.push(e[a+1]),t.push(e[a+2]))}}function _e(e,t,r,n,i,a,o){for(var s,l,u=we(e),c=0===i?Me:Ae,f=e.start,d=0;dr&&(l=c(u,h,p,m,g,r),o&&(u.start=f+s*l)):y>n?x=r&&(l=c(u,h,p,m,g,r),b=!0),x>n&&y<=n&&(l=c(u,h,p,m,g,n),b=!0),!a&&b&&(o&&(u.end=f+s*l),t.push(u),u=we(e)),o&&(f+=s)}var _=e.length-3;h=e[_],p=e[_+1],v=e[_+2],(y=0===i?h:p)>=r&&y<=n&&Te(u,h,p,v),_=u.length-3,a&&_>=3&&(u[_]!==u[0]||u[_+1]!==u[1])&&Te(u,u[0],u[1],u[2]),u.length&&t.push(u)}function we(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function ke(e,t,r,n,i,a){for(var o=0;oo.maxX&&(o.maxX=c),f>o.maxY&&(o.maxY=f)}return o}function Ie(e,t,r,n){var i=t.geometry,a=t.type,o=[];if("Point"===a||"MultiPoint"===a)for(var s=0;s0&&t.size<(i?o:n))r.numPoints+=t.length/3;else{for(var s=[],l=0;lo)&&(r.numSimplified++,s.push(t[l]),s.push(t[l+1])),r.numPoints++;i&&Re(s,a),e.push(s)}}function Re(e,t){for(var r=0,n=0,i=e.length,a=i-2;n0===t)for(n=0,i=e.length;n24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");var n=de(e,t);this.tiles={},this.tileCoords=[],r&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",t.indexMaxZoom,t.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(n=Se(n,t)).length&&this.splitTile(n,0,0,0),r&&(n.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 Ne(e,t,r){return 32*((1<=n;u--){var c=+Date.now();s=this._cluster(s,u),this.trees[u]=new Y(s,ae,oe,a,Float32Array),r&&console.log("z%d: %d clusters in %dms",u,s.length,+Date.now()-c)}return r&&console.timeEnd("total time"),this},X.prototype.getClusters=function(e,t){var r=((e[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,e[1])),i=180===e[2]?180:((e[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)r=-180,i=180;else if(r>i){var o=this.getClusters([r,n,180,a],t),s=this.getClusters([-180,n,i,a],t);return o.concat(s)}for(var l=this.trees[this._limitZoom(t)],u=[],c=0,f=l.range(ee(r),te(a),ee(i),te(n));c1?this._map(u,!0):null,m=(l<<5)+(t+1)+this.points.length,g=0,y=f;g>5},X.prototype._getOriginZoom=function(e){return(e-this.points.length)%32},X.prototype._map=function(e,t){if(e.numPoints)return t?ie({},e.properties):e.properties;var r=this.points[e.index].properties,n=this.options.map(r);return t&&n===r?ie({},n):n},Fe.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Fe.prototype.splitTile=function(e,t,r,n,i,a,o){for(var s=[e,t,r,n],l=this.options,u=l.debug;s.length;){n=s.pop(),r=s.pop(),t=s.pop(),e=s.pop();var c=1<1&&console.time("creation"),d=this.tiles[f]=Oe(e,t,r,n,l),this.tileCoords.push({z:t,x:r,y:n}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,r,n,d.numFeatures,d.numPoints,d.numSimplified),console.timeEnd("creation"));var h="z"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(d.source=e,i){if(t===l.maxZoom||t===i)continue;var p=1<1&&console.time("clipping");var v,m,g,y,x,b,_=.5*l.buffer/l.extent,w=.5-_,k=.5+_,T=1+_;v=m=g=y=null,x=xe(e,c,r-_,r+k,0,d.minX,d.maxX,l),b=xe(e,c,r+w,r+T,0,d.minX,d.maxX,l),e=null,x&&(v=xe(x,c,n-_,n+k,1,d.minY,d.maxY,l),m=xe(x,c,n+w,n+T,1,d.minY,d.maxY,l),x=null),b&&(g=xe(b,c,n-_,n+k,1,d.minY,d.maxY,l),y=xe(b,c,n+w,n+T,1,d.minY,d.maxY,l),b=null),u>1&&console.timeEnd("clipping"),s.push(v||[],t+1,2*r,2*n),s.push(m||[],t+1,2*r,2*n+1),s.push(g||[],t+1,2*r+1,2*n),s.push(y||[],t+1,2*r+1,2*n+1)}}},Fe.prototype.getTile=function(e,t,r){var n=this.options,i=n.extent,a=n.debug;if(e<0||e>24)return null;var o=1<1&&console.log("drilling down to z%d-%d-%d",e,t,r);for(var l,u=e,c=t,f=r;!l&&u>0;)u--,c=Math.floor(c/2),f=Math.floor(f/2),l=this.tiles[Ne(u,c,f)];return l&&l.source?(a>1&&console.log("found parent tile z%d-%d-%d",u,c,f),a>1&&console.time("drilling down"),this.splitTile(l.source,u,c,f,e,t,r),a>1&&console.timeEnd("drilling down"),this.tiles[s]?Le(this.tiles[s],i):null):null};var Ue=function(t){function r(e,r,n,i){t.call(this,e,r,n,je),i&&(this.loadGeoJSON=i)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.loadData=function(e,t){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=t,this._pendingLoadDataParams=e,this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},r.prototype._loadData=function(){var t=this;if(this._pendingCallback&&this._pendingLoadDataParams){var r=this._pendingCallback,n=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var i=!!(n&&n.request&&n.request.collectResourceTiming)&&new e.RequestPerformance(n.request);this.loadGeoJSON(n,(function(e,a){if(e||!a)return r(e);if("object"!==typeof a)return r(new Error("Input data given to '"+n.source+"' is not a valid GeoJSON object."));h(a,!0);try{t._geoJSONIndex=n.cluster?new X(Ve(n)).load(a.features):ze(a,n.geojsonVtOptions)}catch(e){return r(e)}t.loaded={};var o={};if(i){var s=i.finish();s&&(o.resourceTiming={},o.resourceTiming[n.source]=JSON.parse(JSON.stringify(s)))}r(null,o)}))}},r.prototype.coalesce=function(){"Coalescing"===this._state?this._state="Idle":"NeedsLoadData"===this._state&&(this._state="Coalescing",this._loadData())},r.prototype.reloadTile=function(e,r){var n=this.loaded,i=e.uid;return n&&n[i]?t.prototype.reloadTile.call(this,e,r):this.loadTile(e,r)},r.prototype.loadGeoJSON=function(t,r){if(t.request)e.getJSON(t.request,r);else{if("string"!==typeof t.data)return r(new Error("Input data given to '"+t.source+"' is not a valid GeoJSON object."));try{return r(null,JSON.parse(t.data))}catch(n){return r(new Error("Input data given to '"+t.source+"' is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(e,t){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),t()},r.prototype.getClusterExpansionZoom=function(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId))}catch(r){t(r)}},r.prototype.getClusterChildren=function(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId))}catch(r){t(r)}},r.prototype.getClusterLeaves=function(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset))}catch(r){t(r)}},r}(c);function Ve(t){var r=t.superclusterOptions,n=t.clusterProperties;if(!n||!r)return r;for(var i={},a={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(n),u=0,c=l;u1?"@2x":"",l=e.getJSON(r.transformRequest(r.normalizeSpriteURL(t,s,".json"),e.ResourceType.SpriteJSON),(function(e,t){l=null,o||(o=e,i=t,c())})),u=e.getImage(r.transformRequest(r.normalizeSpriteURL(t,s,".png"),e.ResourceType.SpriteImage),(function(e,t){u=null,o||(o=e,a=t,c())}));function c(){if(o)n(o);else if(i&&a){var t=e.browser.getImageData(a),r={};for(var s in i){var l=i[s],u=l.width,c=l.height,f=l.x,d=l.y,h=l.sdf,p=l.pixelRatio,v=l.stretchX,m=l.stretchY,g=l.content,y=new e.RGBAImage({width:u,height:c});e.RGBAImage.copy(t,y,{x:f,y:d},{x:0,y:0},{width:u,height:c}),r[s]={data:y,pixelRatio:p,sdf:h,stretchX:v,stretchY:m,content:g}}n(null,r)}}return{cancel:function(){l&&(l.cancel(),l=null),u&&(u.cancel(),u=null)}}}function d(e){var t=e.userImage;return!!(t&&t.render&&t.render())&&(e.data.replace(new Uint8Array(t.data.buffer)),!0)}r.suppressClick=function(){e.window.addEventListener("click",c,!0),e.window.setTimeout((function(){e.window.removeEventListener("click",c,!0)}),0)},r.mousePos=function(t,r){var n=t.getBoundingClientRect();return new e.Point(r.clientX-n.left-t.clientLeft,r.clientY-n.top-t.clientTop)},r.touchPos=function(t,r){for(var n=t.getBoundingClientRect(),i=[],a=0;a=0?0:t.button},r.remove=function(e){e.parentNode&&e.parentNode.removeChild(e)};var h=1,p=function(t){function r(){t.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.isLoaded=function(){return this.loaded},r.prototype.setLoaded=function(e){if(this.loaded!==e&&(this.loaded=e,e)){for(var t=0,r=this.requestors;t=0?1.2:1))}function b(e,t,r,n,i,a,o){for(var s=0;s65535)t(new Error("glyphs > 65535 not supported"));else if(a.ranges[s])t(null,{stack:r,id:i,glyph:o});else{var l=a.requests[s];l||(l=a.requests[s]=[],w.loadGlyphRange(r,s,n.url,n.requestManager,(function(e,t){if(t){for(var r in t)n._doesCharSupportLocalGlyph(+r)||(a.glyphs[+r]=t[+r]);a.ranges[s]=!0}for(var i=0,o=l;i1&&(l=e[++s]);var c=Math.abs(u-l.left),f=Math.abs(u-l.right),d=Math.min(c,f),h=void 0,p=i/r*(n+1);if(l.isDash){var v=n-Math.abs(p);h=Math.sqrt(d*d+v*v)}else h=n-Math.sqrt(d*d+p*p);this.data[o+u]=Math.max(0,Math.min(255,h+128))}},S.prototype.addRegularDash=function(e){for(var t=e.length-1;t>=0;--t){var r=e[t],n=e[t+1];r.zeroLength?e.splice(t,1):n&&n.isDash===r.isDash&&(n.left=r.left,e.splice(t,1))}var i=e[0],a=e[e.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=e[s],u=0;u1&&(l=e[++s]);var c=Math.abs(u-l.left),f=Math.abs(u-l.right),d=Math.min(c,f),h=l.isDash?d:-d;this.data[o+u]=Math.max(0,Math.min(255,h+128))}},S.prototype.addDash=function(t,r){var n=r?7:0,i=2*n+1;if(this.nextRow+i>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var a=0,o=0;o=n.minX&&t.x=n.minY&&t.y0&&(l[new e.OverscaledTileID(t.overscaledZ,a,r.z,i,r.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,t.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+10&&(n.resourceTiming=t._resourceTiming,t._resourceTiming=[]),t.fire(new e.Event("data",n))}}))},r.prototype.onAdd=function(e){this.map=e,this.load()},r.prototype.setData=function(t){var r=this;return this._data=t,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(t){if(t)r.fire(new e.ErrorEvent(t));else{var n={dataType:"source",sourceDataType:"content"};r._collectResourceTiming&&r._resourceTiming&&r._resourceTiming.length>0&&(n.resourceTiming=r._resourceTiming,r._resourceTiming=[]),r.fire(new e.Event("data",n))}})),this},r.prototype.getClusterExpansionZoom=function(e,t){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:e,source:this.id},t),this},r.prototype.getClusterChildren=function(e,t){return this.actor.send("geojson.getClusterChildren",{clusterId:e,source:this.id},t),this},r.prototype.getClusterLeaves=function(e,t,r,n){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:e,limit:t,offset:r},n),this},r.prototype._updateWorkerData=function(t){var r=this;this._loaded=!1;var n=e.extend({},this.workerOptions),i=this._data;"string"===typeof i?(n.request=this.map._requestManager.transformRequest(e.browser.resolveURL(i),e.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(i),this.actor.send(this.type+".loadData",n,(function(e,i){r._removed||i&&i.abandoned||(r._loaded=!0,i&&i.resourceTiming&&i.resourceTiming[r.id]&&(r._resourceTiming=i.resourceTiming[r.id].slice(0)),r.actor.send(r.type+".coalesce",{source:n.source},null),t(e))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.loadTile=function(t,r){var n=this,i=t.actor?"reloadTile":"loadTile";t.actor=this.actor;var a={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};t.request=this.actor.send(i,a,(function(e,a){return delete t.request,t.unloadVectorData(),t.aborted?r(null):e?r(e):(t.loadVectorData(a,n.map.painter,"reloadTile"===i),r(null))}))},r.prototype.abortTile=function(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0},r.prototype.unloadTile=function(e){e.unloadVectorData(),this.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id})},r.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},r.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},r.prototype.hasTransition=function(){return!1},r}(e.Evented),R=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),z=function(t){function r(e,r,n,i){t.call(this),this.id=e,this.dispatcher=n,this.coordinates=r.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(i),this.options=r}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.load=function(t,r){var n=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),(function(i,a){n._loaded=!0,i?n.fire(new e.ErrorEvent(i)):a&&(n.image=a,t&&(n.coordinates=t),r&&r(),n._finishLoading())}))},r.prototype.loaded=function(){return this._loaded},r.prototype.updateImage=function(e){var t=this;return this.image&&e.url?(this.options.url=e.url,this.load(e.coordinates,(function(){t.texture=null})),this):this},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},r.prototype.onAdd=function(e){this.map=e,this.load()},r.prototype.setCoordinates=function(t){var r=this;this.coordinates=t;var n=t.map(e.MercatorCoordinate.fromLngLat);this.tileID=F(n),this.minzoom=this.maxzoom=this.tileID.z;var i=n.map((function(e){return r.tileID.getTilePoint(e)._round()}));return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},r.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var t=this.map.painter.context,r=t.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(t,this.image,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[n];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},r.prototype.loadTile=function(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state="errored",t(null))},r.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return!1},r}(e.Evented);function F(t){for(var r=1/0,n=1/0,i=-1/0,a=-1/0,o=0,s=t;or.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+r.start(0)+" and "+r.end(0)+"-second mark."))):this.video.currentTime=t}},r.prototype.getVideo=function(){return this.video},r.prototype.onAdd=function(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},r.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var t=this.map.painter.context,r=t.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE),r.texSubImage2D(r.TEXTURE_2D,0,0,0,r.RGBA,r.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(t,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[n];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},r.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this.video&&!this.video.paused},r}(z),B=function(t){function r(r,n,i,a){t.call(this,r,n,i,a),n.coordinates?Array.isArray(n.coordinates)&&4===n.coordinates.length&&!n.coordinates.some((function(e){return!Array.isArray(e)||2!==e.length||e.some((function(e){return"number"!==typeof e}))}))||this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,null,'missing required property "coordinates"'))),n.animate&&"boolean"!==typeof n.animate&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,null,'optional "animate" property must be a boolean value'))),n.canvas?"string"===typeof n.canvas||n.canvas instanceof e.window.HTMLCanvasElement||this.fire(new e.ErrorEvent(new e.ValidationError("sources."+r,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 e.ErrorEvent(new e.ValidationError("sources."+r,null,'missing required property "canvas"'))),this.options=n,this.animate=void 0===n.animate||n.animate}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.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())},r.prototype.getCanvas=function(){return this.canvas},r.prototype.onAdd=function(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play()},r.prototype.onRemove=function(){this.pause()},r.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var r=this.map.painter.context,n=r.gl;for(var i in this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(r,this.canvas,n.RGBA,{premultiply:!0}),this.tiles){var a=this.tiles[i];"loaded"!==a.state&&(a.state="loaded",a.texture=this.texture)}}},r.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this._playing},r.prototype._hasInvalidDimensions=function(){for(var e=0,t=[this.canvas.width,this.canvas.height];ethis.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},$.prototype.has=function(e){return e.wrapped().key in this.data},$.prototype.getAndRemove=function(e){return this.has(e)?this._getAndRemoveByKey(e.wrapped().key):null},$.prototype._getAndRemoveByKey=function(e){var t=this.data[e].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[e].length&&delete this.data[e],this.order.splice(this.order.indexOf(e),1),t.value},$.prototype.getByKey=function(e){var t=this.data[e];return t?t[0].value:null},$.prototype.get=function(e){return this.has(e)?this.data[e.wrapped().key][0].value:null},$.prototype.remove=function(e,t){if(!this.has(e))return this;var r=e.wrapped().key,n=void 0===t?0:this.data[r].indexOf(t),i=this.data[r][n];return this.data[r].splice(n,1),i.timeout&&clearTimeout(i.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(i.value),this.order.splice(this.order.indexOf(r),1),this},$.prototype.setMaxSize=function(e){for(this.max=e;this.order.length>this.max;){var t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this},$.prototype.filter=function(e){var t=[];for(var r in this.data)for(var n=0,i=this.data[r];n1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),t.dem&&e.dem&&(e.dem.backfillBorder(t.dem,r,n),e.neighboringTiles&&e.neighboringTiles[a]&&(e.neighboringTiles[a].backfilled=!0)))}},r.prototype.getTile=function(e){return this.getTileByID(e.key)},r.prototype.getTileByID=function(e){return this._tiles[e]},r.prototype._retainLoadedChildren=function(e,t,r,n){for(var i in this._tiles){var a=this._tiles[i];if(!(n[i]||!a.hasData()||a.tileID.overscaledZ<=t||a.tileID.overscaledZ>r)){for(var o=a.tileID;a&&a.tileID.overscaledZ>t+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>t;)if(e[(l=l.scaledTo(l.overscaledZ-1)).key]){n[o.key]=o;break}}}},r.prototype.findLoadedParent=function(e,t){if(e.key in this._loadedParentTiles){var r=this._loadedParentTiles[e.key];return r&&r.tileID.overscaledZ>=t?r:null}for(var n=e.overscaledZ-1;n>=t;n--){var i=e.scaledTo(n),a=this._getLoadedTile(i);if(a)return a}},r.prototype._getLoadedTile=function(e){var t=this._tiles[e.key];return t&&t.hasData()?t:this._cache.getByKey(e.wrapped().key)},r.prototype.updateCacheSize=function(e){var t=(Math.ceil(e.width/this._source.tileSize)+1)*(Math.ceil(e.height/this._source.tileSize)+1),r=5,n=Math.floor(t*r),i="number"===typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,n):n;this._cache.setMaxSize(i)},r.prototype.handleWrapJump=function(e){var t=(e-(void 0===this._prevLng?e:this._prevLng))/360,r=Math.round(t);if(this._prevLng=e,r){var n={};for(var i in this._tiles){var a=this._tiles[i];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+r),n[a.tileID.key]=a}for(var o in this._tiles=n,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)}}},r.prototype.update=function(t){var n=this;if(this.transform=t,this._sourceLoaded&&!this._paused){var i;this.updateCacheSize(t),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?i=t.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(t){return new e.OverscaledTileID(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y)})):(i=t.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(e){return n._source.hasTile(e)})))):i=[];var a=t.coveringZoomLevel(this._source),o=Math.max(a-r.maxOverzooming,this._source.minzoom),s=Math.max(a+r.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(i,a);if(Je(this._source.type)){for(var u={},c={},f=0,d=Object.keys(l);fthis._source.maxzoom){var m=p.children(this._source.maxzoom)[0],g=this.getTile(m);if(g&&g.hasData()){n[m.key]=m;continue}}else{var y=p.children(this._source.maxzoom);if(n[y[0].key]&&n[y[1].key]&&n[y[2].key]&&n[y[3].key])continue}for(var x=v.wasRequested(),b=p.overscaledZ-1;b>=a;--b){var _=p.scaledTo(b);if(i[_.key])break;if(i[_.key]=!0,!(v=this.getTile(_))&&x&&(v=this._addTile(_)),v&&(n[_.key]=_,x=v.wasRequested(),v.hasData()))break}}}return n},r.prototype._updateLoadedParentTileCache=function(){for(var e in this._loadedParentTiles={},this._tiles){for(var t=[],r=void 0,n=this._tiles[e].tileID;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}t.push(n.key);var i=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(i))break;n=i}for(var a=0,o=t;a0||(t.hasData()&&"reloading"!==t.state?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))))},r.prototype.clearTiles=function(){for(var e in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(e);this._cache.reset()},r.prototype.tilesIn=function(t,r,n){var i=this,a=[],o=this.transform;if(!o)return a;for(var s=n?o.getCameraQueryGeometry(t):t,l=t.map((function(e){return o.pointCoordinate(e)})),u=s.map((function(e){return o.pointCoordinate(e)})),c=this.getIds(),f=1/0,d=1/0,h=-1/0,p=-1/0,v=0,m=u;v=0&&g[1].y+m>=0){var y=l.map((function(e){return s.getTilePoint(e)})),x=u.map((function(e){return s.getTilePoint(e)}));a.push({tile:n,tileID:s,queryGeometry:y,cameraQueryGeometry:x,scale:v})}}},x=0;x=e.browser.now())return!0}return!1},r.prototype.setFeatureState=function(e,t,r){e=e||"_geojsonTileLayer",this._state.updateState(e,t,r)},r.prototype.removeFeatureState=function(e,t,r){e=e||"_geojsonTileLayer",this._state.removeFeatureState(e,t,r)},r.prototype.getFeatureState=function(e,t){return e=e||"_geojsonTileLayer",this._state.getState(e,t)},r.prototype.setDependencies=function(e,t,r){var n=this._tiles[e];n&&n.setDependencies(t,r)},r.prototype.reloadTilesForDependencies=function(e,t){for(var r in this._tiles)this._tiles[r].hasDependency(e,t)&&this._reloadTile(r,"reloading");this._cache.filter((function(r){return!r.hasDependency(e,t)}))},r}(e.Evented);function $e(e,t){var r=Math.abs(2*e.wrap)-+(e.wrap<0),n=Math.abs(2*t.wrap)-+(t.wrap<0);return e.overscaledZ-t.overscaledZ||n-r||t.canonical.y-e.canonical.y||t.canonical.x-e.canonical.x}function Je(e){return"raster"===e||"image"===e||"video"===e}function Qe(){return new e.window.Worker(cs.workerUrl)}Ke.maxOverzooming=10,Ke.maxUnderzooming=3;var et="mapboxgl_preloaded_worker_pool",tt=function(){this.active={}};tt.prototype.acquire=function(e){if(!this.workers)for(this.workers=[];this.workers.length0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[r].mult(l))};var wt=function(e,t,r){var n=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(e/r),this.yCellCount=Math.ceil(t/r);for(var a=0;a=-t[0]&&r<=t[0]&&n>=-t[1]&&n<=t[1]}function Et(t,r,n,i,a,o,s,l){var u=i?t.textSizeData:t.iconSizeData,c=e.evaluateSizeForZoom(u,n.transform.zoom),f=[256/n.width*2+1,256/n.height*2+1],d=i?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;d.clear();for(var h=t.lineVertexArray,p=i?t.text.placedSymbolArray:t.icon.placedSymbolArray,v=n.transform.width/n.transform.height,m=!1,g=0;gMath.abs(n.x-r.x)*i?{useVertical:!0}:(t===e.WritingMode.vertical?r.yn.x)?{needsFlipping:!0}:null}function Pt(t,r,n,i,a,o,s,l,u,c,f,d,h,p){var v,m=r/24,g=t.lineOffsetX*m,y=t.lineOffsetY*m;if(t.numGlyphs>1){var x=t.glyphStartIndex+t.numGlyphs,b=t.lineStartIndex,_=t.lineStartIndex+t.lineLength,w=Ct(m,l,g,y,n,f,d,t,u,o,h);if(!w)return{notEnoughRoom:!0};var k=Mt(w.first.point,s).point,T=Mt(w.last.point,s).point;if(i&&!n){var M=Lt(t.writingMode,k,T,p);if(M)return M}v=[w.first];for(var A=t.glyphStartIndex+1;A0?L.point:Ot(d,C,S,1,a),O=Lt(t.writingMode,S,P,p);if(O)return O}var I=It(m*l.getoffsetX(t.glyphStartIndex),g,y,n,f,d,t.segment,t.lineStartIndex,t.lineStartIndex+t.lineLength,u,o,h);if(!I)return{notEnoughRoom:!0};v=[I]}for(var D=0,R=v;D0?1:-1,v=0;i&&(p*=-1,v=Math.PI),p<0&&(v+=Math.PI);for(var m=p>0?l+s:l+s+1,g=a,y=a,x=0,b=0,_=Math.abs(h),w=[];x+b<=_;){if((m+=p)=u)return null;if(y=g,w.push(g),void 0===(g=d[m])){var k=new e.Point(c.getx(m),c.gety(m)),T=Mt(k,f);if(T.signedDistanceFromCamera>0)g=d[m]=T.point;else{var M=m-p;g=Ot(0===x?o:new e.Point(c.getx(M),c.gety(M)),k,y,_-x+1,f)}}x+=b,b=y.dist(g)}var A=(_-x)/b,S=g.sub(y),E=S.mult(A)._add(y);E._add(S._unit()._perp()._mult(n*p));var C=v+Math.atan2(g.y-y.y,g.x-y.x);return w.push(E),{point:E,angle:C,path:w}}wt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},wt.prototype.insert=function(e,t,r,n,i){this._forEachCell(t,r,n,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(e),this.bboxes.push(t),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)},wt.prototype.insertCircle=function(e,t,r,n){this._forEachCell(t-n,r-n,t+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(e),this.circles.push(t),this.circles.push(r),this.circles.push(n)},wt.prototype._insertBoxCell=function(e,t,r,n,i,a){this.boxCells[i].push(a)},wt.prototype._insertCircleCell=function(e,t,r,n,i,a){this.circleCells[i].push(a)},wt.prototype._query=function(e,t,r,n,i,a){if(r<0||e>this.width||n<0||t>this.height)return!i&&[];var o=[];if(e<=0&&t<=0&&this.width<=r&&this.height<=n){if(i)return!0;for(var s=0;s0:o},wt.prototype._queryCircle=function(e,t,r,n,i){var a=e-r,o=e+r,s=t-r,l=t+r;if(o<0||a>this.width||l<0||s>this.height)return!n&&[];var u=[],c={hitTest:n,circle:{x:e,y:t,radius:r},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,u,c,i),n?u.length>0:u},wt.prototype.query=function(e,t,r,n,i){return this._query(e,t,r,n,!1,i)},wt.prototype.hitTest=function(e,t,r,n,i){return this._query(e,t,r,n,!0,i)},wt.prototype.hitTestCircle=function(e,t,r,n){return this._queryCircle(e,t,r,!0,n)},wt.prototype._queryCell=function(e,t,r,n,i,a,o,s){var l=o.seenUids,u=this.boxCells[i];if(null!==u)for(var c=this.bboxes,f=0,d=u;f=c[p+0]&&n>=c[p+1]&&(!s||s(this.boxKeys[h]))){if(o.hitTest)return a.push(!0),!0;a.push({key:this.boxKeys[h],x1:c[p],y1:c[p+1],x2:c[p+2],y2:c[p+3]})}}}var v=this.circleCells[i];if(null!==v)for(var m=this.circles,g=0,y=v;go*o+s*s},wt.prototype._circleAndRectCollide=function(e,t,r,n,i,a,o){var s=(a-n)/2,l=Math.abs(e-(n+s));if(l>s+r)return!1;var u=(o-i)/2,c=Math.abs(t-(i+u));if(c>u+r)return!1;if(l<=s||c<=u)return!0;var f=l-s,d=c-u;return f*f+d*d<=r*r};var Dt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Rt(e,t){for(var r=0;r=1;O--)P.push(C.path[O]);for(var I=1;I0){for(var F=P[0].clone(),N=P[0].clone(),B=1;B=A.x&&N.x<=S.x&&F.y>=A.y&&N.y<=S.y?[P]:N.xS.x||N.yS.y?[]:e.clipLine([P],A.x,A.y,S.x,S.y)}for(var j=0,U=z;j=this.screenRightBoundary||nthis.screenBottomBoundary},Nt.prototype.isInsideGrid=function(e,t,r,n){return r>=0&&e=0&&t0?(this.prevPlacement&&this.prevPlacement.variableOffsets[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID].text&&(v=this.prevPlacement.variableOffsets[f.crossTileID].anchor),this.variableOffsets[f.crossTileID]={textOffset:m,width:r,height:n,anchor:e,textBoxScale:i,prevAnchor:v},this.markUsedJustification(d,e,f,h),d.allowVerticalPlacement&&(this.markUsedOrientation(d,h,f),this.placedOrientations[f.crossTileID]=h),{shift:g,placedGlyphBoxes:y}):void 0},Zt.prototype.placeLayerBucketPart=function(t,r,n){var i=this,a=t.parameters,o=a.bucket,s=a.layout,l=a.posMatrix,u=a.textLabelPlaneMatrix,c=a.labelToScreenMatrix,f=a.textPixelRatio,d=a.holdingForFade,h=a.collisionBoxArray,p=a.partiallyEvaluatedTextSize,v=a.collisionGroup,m=s.get("text-optional"),g=s.get("icon-optional"),y=s.get("text-allow-overlap"),x=s.get("icon-allow-overlap"),b="map"===s.get("text-rotation-alignment"),_="map"===s.get("text-pitch-alignment"),w="none"!==s.get("icon-text-fit"),k="viewport-y"===s.get("symbol-z-order"),T=y&&(x||!o.hasIconData()||g),M=x&&(y||!o.hasTextData()||m);!o.collisionArrays&&h&&o.deserializeCollisionBoxes(h);var A=function(t,a){if(!r[t.crossTileID])if(d)i.placements[t.crossTileID]=new Vt(!1,!1,!1);else{var h=!1,k=!1,A=!0,S=null,E={box:null,offscreen:null},C={box:null,offscreen:null},L=null,P=null,O=null,I=0,D=0,R=0;a.textFeatureIndex?I=a.textFeatureIndex:t.useRuntimeCollisionCircles&&(I=t.featureIndex),a.verticalTextFeatureIndex&&(D=a.verticalTextFeatureIndex);var z=a.textBox;if(z){var F=function(r){var n=e.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&i.prevPlacement){var a=i.prevPlacement.placedOrientations[t.crossTileID];a&&(i.placedOrientations[t.crossTileID]=a,n=a,i.markUsedOrientation(o,n,t))}return n},N=function(r,n){if(o.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&a.verticalTextBox)for(var i=0,s=o.writingModes;i0&&(B=B.filter((function(e){return e!==j.anchor}))).unshift(j.anchor)}var U=function(e,r,n){for(var a=e.x2-e.x1,s=e.y2-e.y1,u=t.textBoxScale,c=w&&!x?r:null,d={box:[],offscreen:!1},p=y?2*B.length:B.length,m=0;m=B.length,T=i.attemptAnchorPlacement(g,e,a,s,u,b,_,f,l,v,k,t,o,n,c);if(T&&(d=T.placedGlyphBoxes)&&d.box&&d.box.length){h=!0,S=T.shift;break}}return d};N((function(){return U(z,a.iconBox,e.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox,n=E&&E.box&&E.box.length;return o.allowVerticalPlacement&&!n&&t.numVerticalGlyphVertices>0&&r?U(r,a.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}})),E&&(h=E.box,A=E.offscreen);var V=F(E&&E.box);if(!h&&i.prevPlacement){var H=i.prevPlacement.variableOffsets[t.crossTileID];H&&(i.variableOffsets[t.crossTileID]=H,i.markUsedJustification(o,H.anchor,t,V))}}else{var q=function(e,r){var n=i.collisionIndex.placeCollisionBox(e,y,f,l,v.predicate);return n&&n.box&&n.box.length&&(i.markUsedOrientation(o,r,t),i.placedOrientations[t.crossTileID]=r),n};N((function(){return q(z,e.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox;return o.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&r?q(r,e.WritingMode.vertical):{box:null,offscreen:null}})),F(E&&E.box&&E.box.length)}}if(h=(L=E)&&L.box&&L.box.length>0,A=L&&L.offscreen,t.useRuntimeCollisionCircles){var W=o.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex),G=e.evaluateSizeForFeature(o.textSizeData,p,W),Y=s.get("text-padding"),Z=t.collisionCircleDiameter;P=i.collisionIndex.placeCollisionCircles(y,W,o.lineVertexArray,o.glyphOffsetArray,G,l,u,c,n,_,v.predicate,Z,Y),h=y||P.circles.length>0&&!P.collisionDetected,A=A&&P.offscreen}if(a.iconFeatureIndex&&(R=a.iconFeatureIndex),a.iconBox){var X=function(e){var t=w&&S?Yt(e,S.x,S.y,b,_,i.transform.angle):e;return i.collisionIndex.placeCollisionBox(t,x,f,l,v.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=m||0===t.numHorizontalGlyphVertices&&0===t.numVerticalGlyphVertices,$=g||0===t.numIconVertices;if(K||$?$?K||(k=k&&h):h=k&&h:k=h=k&&h,h&&L&&L.box&&(C&&C.box&&D?i.collisionIndex.insertCollisionBox(L.box,s.get("text-ignore-placement"),o.bucketInstanceId,D,v.ID):i.collisionIndex.insertCollisionBox(L.box,s.get("text-ignore-placement"),o.bucketInstanceId,I,v.ID)),k&&O&&i.collisionIndex.insertCollisionBox(O.box,s.get("icon-ignore-placement"),o.bucketInstanceId,R,v.ID),P&&(h&&i.collisionIndex.insertCollisionCircles(P.circles,s.get("text-ignore-placement"),o.bucketInstanceId,I,v.ID),n)){var J=o.bucketInstanceId,Q=i.collisionCircleArrays[J];void 0===Q&&(Q=i.collisionCircleArrays[J]=new Ht);for(var ee=0;ee=0;--E){var C=S[E];A(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var L=t.symbolInstanceStart;L=0&&(t.text.placedSymbolArray.get(u).crossTileID=a>=0&&u!==a?0:n.crossTileID)}},Zt.prototype.markUsedOrientation=function(t,r,n){for(var i=r===e.WritingMode.horizontal||r===e.WritingMode.horizontalOnly?r:0,a=r===e.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o0||l>0,x=a.numIconVertices>0,b=i.placedOrientations[a.crossTileID],_=b===e.WritingMode.vertical,w=b===e.WritingMode.horizontal||b===e.WritingMode.horizontalOnly;if(y){var k=nr(g.text),T=_?ir:k;p(t.text,s,T);var M=w?ir:k;p(t.text,l,M);var A=g.text.isHidden();[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(e){e>=0&&(t.text.placedSymbolArray.get(e).hidden=A||_?1:0)})),a.verticalPlacedTextSymbolIndex>=0&&(t.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).hidden=A||w?1:0);var S=i.variableOffsets[a.crossTileID];S&&i.markUsedJustification(t,S.anchor,a,b);var E=i.placedOrientations[a.crossTileID];E&&(i.markUsedJustification(t,"left",a,E),i.markUsedOrientation(t,E,a))}if(x){var C=nr(g.icon),L=!(d&&a.verticalPlacedIconSymbolIndex&&_);if(a.placedIconSymbolIndex>=0){var P=L?C:ir;p(t.icon,a.numIconVertices,P),t.icon.placedSymbolArray.get(a.placedIconSymbolIndex).hidden=g.icon.isHidden()}if(a.verticalPlacedIconSymbolIndex>=0){var O=L?ir:C;p(t.icon,a.numVerticalIconVertices,O),t.icon.placedSymbolArray.get(a.verticalPlacedIconSymbolIndex).hidden=g.icon.isHidden()}}if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){var I=t.collisionArrays[n];if(I){var D=new e.Point(0,0);if(I.textBox||I.verticalTextBox){var R=!0;if(u){var z=i.variableOffsets[v];z?(D=Gt(z.anchor,z.width,z.height,z.textOffset,z.textBoxScale),c&&D._rotate(f?i.transform.angle:-i.transform.angle)):R=!1}I.textBox&&Xt(t.textCollisionBox.collisionVertexArray,g.text.placed,!R||_,D.x,D.y),I.verticalTextBox&&Xt(t.textCollisionBox.collisionVertexArray,g.text.placed,!R||w,D.x,D.y)}var F=Boolean(!w&&I.verticalIconBox);I.iconBox&&Xt(t.iconCollisionBox.collisionVertexArray,g.icon.placed,F,d?D.x:0,d?D.y:0),I.verticalIconBox&&Xt(t.iconCollisionBox.collisionVertexArray,g.icon.placed,!F,d?D.x:0,d?D.y:0)}}},m=0;me},Zt.prototype.setStale=function(){this.stale=!0};var Kt=Math.pow(2,25),$t=Math.pow(2,24),Jt=Math.pow(2,17),Qt=Math.pow(2,16),er=Math.pow(2,9),tr=Math.pow(2,8),rr=Math.pow(2,1);function nr(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;var t=e.placed?1:0,r=Math.floor(127*e.opacity);return r*Kt+t*$t+r*Jt+t*Qt+r*er+t*tr+r*rr+t}var ir=0,ar=function(e){this._sortAcrossTiles="viewport-y"!==e.layout.get("symbol-z-order")&&void 0!==e.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};ar.prototype.continuePlacement=function(e,t,r,n,i){for(var a=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var s=r[t[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 ar(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},or.prototype.commit=function(e){return this.placement.commit(e),this.placement};var sr=512/e.EXTENT/2,lr=function(e,t,r){this.tileID=e,this.indexedSymbolInstances={},this.bucketInstanceId=r;for(var n=0;ne.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(e)&&l.findMatches(t.symbolInstances,e,i)}else{var u=o[e.scaledTo(Number(a)).key];u&&u.findMatches(t.symbolInstances,e,i)}}for(var c=0;c0)throw new Error("Unimplemented: "+i.map((function(e){return e.command})).join(", ")+".");return n.forEach((function(e){"setTransition"!==e.command&&r[e.command].apply(r,e.args)})),this.stylesheet=t,!0},r.prototype.addImage=function(t,r){if(this.getImage(t))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(t,r),this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.fire(new e.Event("data",{dataType:"style"}))},r.prototype.updateImage=function(e,t){this.imageManager.updateImage(e,t)},r.prototype.getImage=function(e){return this.imageManager.getImage(e)},r.prototype.removeImage=function(t){if(!this.getImage(t))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(t),this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.fire(new e.Event("data",{dataType:"style"}))},r.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},r.prototype.addSource=function(t,r,n){var i=this;if(void 0===n&&(n={}),this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error("There is already a source with this ID");if(!r.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(r).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(r.type)>=0)||!this._validate(e.validateStyle.source,"sources."+t,r,null,n)){this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);var a=this.sourceCaches[t]=new Ke(t,r,this.dispatcher);a.style=this,a.setEventedParent(this,(function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:t}})),a.onAdd(this.map),this._changed=!0}},r.prototype.removeSource=function(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");for(var r in this._layers)if(this._layers[r].source===t)return this.fire(new e.ErrorEvent(new Error('Source "'+t+'" cannot be removed while layer "'+r+'" is using it.')));var n=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],n.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:t})),n.setEventedParent(null),n.clearTiles(),n.onRemove&&n.onRemove(this.map),this._changed=!0},r.prototype.setGeoJSONSourceData=function(e,t){this._checkLoaded(),this.sourceCaches[e].getSource().setData(t),this._changed=!0},r.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},r.prototype.addLayer=function(t,r,n){void 0===n&&(n={}),this._checkLoaded();var i=t.id;if(this.getLayer(i))this.fire(new e.ErrorEvent(new Error('Layer with id "'+i+'" already exists on this map')));else{var a;if("custom"===t.type){if(dr(this,e.validateCustomStyleLayer(t)))return;a=e.createStyleLayer(t)}else{if("object"===typeof t.source&&(this.addSource(i,t.source),t=e.clone$1(t),t=e.extend(t,{source:i})),this._validate(e.validateStyle.layer,"layers."+i,t,{arrayIndex:-1},n))return;a=e.createStyleLayer(t),this._validateLayer(a),a.setEventedParent(this,{layer:{id:i}}),this._serializedLayers[a.id]=a.serialize()}var o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new e.ErrorEvent(new Error('Layer with id "'+r+'" 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)}}},r.prototype.moveLayer=function(t,r){if(this._checkLoaded(),this._changed=!0,this._layers[t]){if(t!==r){var n=this._order.indexOf(t);this._order.splice(n,1);var i=r?this._order.indexOf(r):this._order.length;r&&-1===i?this.fire(new e.ErrorEvent(new Error('Layer with id "'+r+'" does not exist on this map.'))):(this._order.splice(i,0,t),this._layerOrderChanged=!0)}}else this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be moved.")))},r.prototype.removeLayer=function(t){this._checkLoaded();var r=this._layers[t];if(r){r.setEventedParent(null);var n=this._order.indexOf(t);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=r,delete this._layers[t],delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],r.onRemove&&r.onRemove(this.map)}else this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be removed.")))},r.prototype.getLayer=function(e){return this._layers[e]},r.prototype.hasLayer=function(e){return e in this._layers},r.prototype.setLayerZoomRange=function(t,r,n){this._checkLoaded();var i=this.getLayer(t);i?i.minzoom===r&&i.maxzoom===n||(null!=r&&(i.minzoom=r),null!=n&&(i.maxzoom=n),this._updateLayer(i)):this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot have zoom extent.")))},r.prototype.setFilter=function(t,r,n){void 0===n&&(n={}),this._checkLoaded();var i=this.getLayer(t);if(i){if(!e.deepEqual(i.filter,r))return null===r||void 0===r?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(e.validateStyle.filter,"layers."+i.id+".filter",r,null,n)||(i.filter=e.clone$1(r),this._updateLayer(i)))}else this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be filtered.")))},r.prototype.getFilter=function(t){return e.clone$1(this.getLayer(t).filter)},r.prototype.setLayoutProperty=function(t,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(t);a?e.deepEqual(a.getLayoutProperty(r),n)||(a.setLayoutProperty(r,n,i),this._updateLayer(a)):this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getLayoutProperty=function(t,r){var n=this.getLayer(t);if(n)return n.getLayoutProperty(r);this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style.")))},r.prototype.setPaintProperty=function(t,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(t);a?e.deepEqual(a.getPaintProperty(r),n)||(a.setPaintProperty(r,n,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[t]=!0):this.fire(new e.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getPaintProperty=function(e,t){return this.getLayer(e).getPaintProperty(t)},r.prototype.setFeatureState=function(t,r){this._checkLoaded();var n=t.source,i=t.sourceLayer,a=this.sourceCaches[n];if(void 0!==a){var o=a.getSource().type;"geojson"===o&&i?this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||i?(void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),a.setFeatureState(i,t.id,r)):this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.removeFeatureState=function(t,r){this._checkLoaded();var n=t.source,i=this.sourceCaches[n];if(void 0!==i){var a=i.getSource().type,o="vector"===a?t.sourceLayer:void 0;"vector"!==a||o?r&&"string"!==typeof t.id&&"number"!==typeof t.id?this.fire(new e.ErrorEvent(new Error("A feature id is requred to remove its specific state property."))):i.removeFeatureState(o,t.id,r):this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.getFeatureState=function(t){this._checkLoaded();var r=t.source,n=t.sourceLayer,i=this.sourceCaches[r];if(void 0!==i){if("vector"!==i.getSource().type||n)return void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),i.getFeatureState(n,t.id);this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},r.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},r.prototype.serialize=function(){return e.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:e.mapObject(this.sourceCaches,(function(e){return e.serialize()})),layers:this._serializeLayers(this._order)},(function(e){return void 0!==e}))},r.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&"raster"!==this.sourceCaches[e.source].getSource().type&&(this._updatedSources[e.source]="reload",this.sourceCaches[e.source].pause()),this._changed=!0},r.prototype._flattenAndSortRenderedFeatures=function(e){for(var t=this,r=function(e){return"fill-extrusion"===t._layers[e].type},n={},i=[],a=this._order.length-1;a>=0;a--){var o=this._order[a];if(r(o)){n[o]=a;for(var s=0,l=e;s=0;p--){var v=this._order[p];if(r(v))for(var m=i.length-1;m>=0;m--){var g=i[m].feature;if(n[g.layer.id] 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}",Pr="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;}",Or="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;}",Ir="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);}",Dr="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);}",Rr="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);}",zr="#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}",Fr="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);}",Nr="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}",Br="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;}",jr="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}",Ur="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;}",Vr="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}",Hr="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);}",qr="varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Wr="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;}",Gr="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}",Yr="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;}",Zr="#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}",Xr="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;}",Kr="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}",$r="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;}",Jr="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}",Qr="\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);}",en="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}",tn="\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);}",rn="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}",nn="\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;}",an="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}",on="\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);}",sn="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}",ln="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;}",un="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}",cn="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));}",fn="#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}",dn="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);}",hn="#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}",pn="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);}",vn=Un("#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;}"),mn=Un(yr,xr),gn=Un(br,_r),yn=Un(wr,kr),xn=Un(Tr,Mr),bn=Un(Ar,Sr),_n=Un(Er,Cr),wn=Un(Lr,Pr),kn=Un(Or,Ir),Tn=Un(Dr,Rr),Mn=Un(zr,Fr),An=Un(Nr,Br),Sn=Un(jr,Ur),En=Un(Vr,Hr),Cn=Un(qr,Wr),Ln=Un(Gr,Yr),Pn=Un(Zr,Xr),On=Un(Kr,$r),In=Un(Jr,Qr),Dn=Un(en,tn),Rn=Un(rn,nn),zn=Un(an,on),Fn=Un(sn,ln),Nn=Un(un,cn),Bn=Un(fn,dn),jn=Un(hn,pn);function Un(e,t){var r=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,n={};return{fragmentSource:e=e.replace(r,(function(e,t,r,i,a){return n[a]=!0,"define"===t?"\n#ifndef HAS_UNIFORM_u_"+a+"\nvarying "+r+" "+i+" "+a+";\n#else\nuniform "+r+" "+i+" u_"+a+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+a+"\n "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n"})),vertexSource:t=t.replace(r,(function(e,t,r,i,a){var o="float"===i?"vec2":"vec4",s=a.match(/color/)?"color":o;return n[a]?"define"===t?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+r+" "+o+" a_"+a+";\nvarying "+r+" "+i+" "+a+";\n#else\nuniform "+r+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+a+" = a_"+a+";\n#else\n "+r+" "+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 "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n":"define"===t?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+r+" "+o+" a_"+a+";\n#else\nuniform "+r+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+r+" "+i+" "+a+" = a_"+a+";\n#else\n "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+r+" "+i+" "+a+" = unpack_mix_"+s+"(a_"+a+", u_"+a+"_t);\n#else\n "+r+" "+i+" "+a+" = u_"+a+";\n#endif\n"}))}}var Vn=Object.freeze({__proto__:null,prelude:vn,background:mn,backgroundPattern:gn,circle:yn,clippingMask:xn,heatmap:bn,heatmapTexture:_n,collisionBox:wn,collisionCircle:kn,debug:Tn,fill:Mn,fillOutline:An,fillOutlinePattern:Sn,fillPattern:En,fillExtrusion:Cn,fillExtrusionPattern:Ln,hillshadePrepare:Pn,hillshade:On,line:In,lineGradient:Dn,linePattern:Rn,lineSDF:zn,raster:Fn,symbolIcon:Nn,symbolSDF:Bn,symbolTextAndIcon:jn}),Hn=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Hn.prototype.bind=function(e,t,r,n,i,a,o,s){this.context=e;for(var l=this.boundPaintVertexBuffers.length!==n.length,u=0;!l&&u>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}function Gn(e,t,r,n){var i=r.imageManager.getPattern(e.from.toString()),a=r.imageManager.getPattern(e.to.toString()),o=r.imageManager.getPixelSize(),s=o.width,l=o.height,u=Math.pow(2,n.tileID.overscaledZ),c=n.tileSize*Math.pow(2,r.transform.tileZoom)/u,f=c*(n.tileID.canonical.x+n.tileID.wrap*u),d=c*n.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:t.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:t.fromScale,u_scale_b:t.toScale,u_tile_units_to_pixels:1/Bt(n,1,r.transform.tileZoom),u_pixel_coord_upper:[f>>16,d>>16],u_pixel_coord_lower:[65535&f,65535&d]}}qn.prototype.draw=function(e,t,r,n,i,a,o,s,l,u,c,f,d,h,p,v){var m,g=e.gl;if(!this.failedToCreate){for(var y in e.program.set(this.program),e.setDepthMode(r),e.setStencilMode(n),e.setColorMode(i),e.setCullFace(a),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);h&&h.setUniforms(e,this.binderUniforms,f,{zoom:d});for(var x=(m={},m[g.LINES]=2,m[g.TRIANGLES]=3,m[g.LINE_STRIP]=1,m)[t],b=0,_=c.get();b<_.length;b+=1){var w=_[b],k=w.vaos||(w.vaos={});(k[s]||(k[s]=new Hn)).bind(e,this,l,h?h.getPaintVertexBuffers():[],u,w.vertexOffset,p,v),g.drawElements(t,w.primitiveLength*x,g.UNSIGNED_SHORT,w.primitiveOffset*x*2)}}};var Yn=function(t,r,n,i){var a=r.style.light,o=a.properties.get("position"),s=[o.x,o.y,o.z],l=e.create$1();"viewport"===a.properties.get("anchor")&&e.fromRotation(l,-r.transform.angle),e.transformMat3(s,s,l);var u=a.properties.get("color");return{u_matrix:t,u_lightpos:s,u_lightintensity:a.properties.get("intensity"),u_lightcolor:[u.r,u.g,u.b],u_vertical_gradient:+n,u_opacity:i}},Zn=function(t,r,n,i,a,o,s){return e.extend(Yn(t,r,n,i),Wn(o,r,s),{u_height_factor:-Math.pow(2,a.overscaledZ)/s.tileSize/8})},Xn=function(e){return{u_matrix:e}},Kn=function(t,r,n,i){return e.extend(Xn(t),Wn(n,r,i))},$n=function(e,t){return{u_matrix:e,u_world:t}},Jn=function(t,r,n,i,a){return e.extend(Kn(t,r,n,i),{u_world:a})},Qn=function(t,r,n,i){var a,o,s=t.transform;if("map"===i.paint.get("circle-pitch-alignment")){var l=Bt(n,1,s.zoom);a=!0,o=[l,l]}else a=!1,o=s.pixelsToGLUnits;return{u_camera_to_center_distance:s.cameraToCenterDistance,u_scale_with_map:+("map"===i.paint.get("circle-pitch-scale")),u_matrix:t.translatePosMatrix(r.posMatrix,n,i.paint.get("circle-translate"),i.paint.get("circle-translate-anchor")),u_pitch_with_map:+a,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:o}},ei=function(e,t,r){var n=Bt(r,1,t.zoom),i=Math.pow(2,t.zoom-r.tileID.overscaledZ),a=r.tileID.overscaleFactor();return{u_matrix:e,u_camera_to_center_distance:t.cameraToCenterDistance,u_pixels_to_tile_units:n,u_extrude_scale:[t.pixelsToGLUnits[0]/(n*i),t.pixelsToGLUnits[1]/(n*i)],u_overscale_factor:a}},ti=function(e,t,r){return{u_matrix:e,u_inv_matrix:t,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}},ri=function(e,t,r){return void 0===r&&(r=1),{u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:r}},ni=function(e){return{u_matrix:e}},ii=function(e,t,r,n){return{u_matrix:e,u_extrude_scale:Bt(t,1,r),u_intensity:n}},ai=function(t,r,n,i){var a=e.create();e.ortho(a,0,t.width,t.height,0,0,1);var o=t.context.gl;return{u_matrix:a,u_world:[o.drawingBufferWidth,o.drawingBufferHeight],u_image:n,u_color_ramp:i,u_opacity:r.paint.get("heatmap-opacity")}},oi=function(e,t,r){var n=r.paint.get("hillshade-shadow-color"),i=r.paint.get("hillshade-highlight-color"),a=r.paint.get("hillshade-accent-color"),o=r.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===r.paint.get("hillshade-illumination-anchor")&&(o-=e.transform.angle);var s=!e.options.moving;return{u_matrix:e.transform.calculatePosMatrix(t.tileID.toUnwrapped(),s),u_image:0,u_latrange:li(e,t.tileID),u_light:[r.paint.get("hillshade-exaggeration"),o],u_shadow:n,u_highlight:i,u_accent:a}},si=function(t,r,n){var i=r.stride,a=e.create();return e.ortho(a,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(a,a,[0,-e.EXTENT,0]),{u_matrix:a,u_image:1,u_dimension:[i,i],u_zoom:t.overscaledZ,u_maxzoom:n,u_unpack:r.getUnpackVector()}};function li(t,r){var n=Math.pow(2,r.canonical.z),i=r.canonical.y;return[new e.MercatorCoordinate(0,i/n).toLngLat().lat,new e.MercatorCoordinate(0,(i+1)/n).toLngLat().lat]}var ui=function(t,r,n){var i=t.transform;return{u_matrix:pi(t,r,n),u_ratio:1/Bt(r,1,i.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},ci=function(t,r,n){return e.extend(ui(t,r,n),{u_image:0})},fi=function(t,r,n,i){var a=t.transform,o=hi(r,a);return{u_matrix:pi(t,r,n),u_texsize:r.imageAtlasTexture.size,u_ratio:1/Bt(r,1,a.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[o,i.fromScale,i.toScale],u_fade:i.t,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},di=function(t,r,n,i,a){var o=t.transform,s=t.lineAtlas,l=hi(r,o),u="round"===n.layout.get("line-cap"),c=s.getDash(i.from,u),f=s.getDash(i.to,u),d=c.width*a.fromScale,h=f.width*a.toScale;return e.extend(ui(t,r,n),{u_patternscale_a:[l/d,-c.height/2],u_patternscale_b:[l/h,-f.height/2],u_sdfgamma:s.width/(256*Math.min(d,h)*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:c.y,u_tex_y_b:f.y,u_mix:a.t})};function hi(e,t){return 1/Bt(e,1,t.tileZoom)}function pi(e,t,r){return e.translatePosMatrix(t.tileID.posMatrix,t,r.paint.get("line-translate"),r.paint.get("line-translate-anchor"))}var vi=function(e,t,r,n,i){return{u_matrix:e,u_tl_parent:t,u_scale_parent:r,u_buffer_scale:1,u_fade_t:n.mix,u_opacity:n.opacity*i.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:i.paint.get("raster-brightness-min"),u_brightness_high:i.paint.get("raster-brightness-max"),u_saturation_factor:yi(i.paint.get("raster-saturation")),u_contrast_factor:gi(i.paint.get("raster-contrast")),u_spin_weights:mi(i.paint.get("raster-hue-rotate"))}};function mi(e){e*=Math.PI/180;var t=Math.sin(e),r=Math.cos(e);return[(2*r+1)/3,(-Math.sqrt(3)*t-r+1)/3,(Math.sqrt(3)*t-r+1)/3]}function gi(e){return e>0?1/(1-e):1+e}function yi(e){return e>0?1-1/(1.001-e):-e}var xi,bi=function(e,t,r,n,i,a,o,s,l,u){var c=i.transform;return{u_is_size_zoom_constant:+("constant"===e||"source"===e),u_is_size_feature_constant:+("constant"===e||"camera"===e),u_size_t:t?t.uSizeT:0,u_size:t?t.uSize:0,u_camera_to_center_distance:c.cameraToCenterDistance,u_pitch:c.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:c.width/c.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:+n,u_texsize:u,u_texture:0}},_i=function(t,r,n,i,a,o,s,l,u,c,f){var d=a.transform;return e.extend(bi(t,r,n,i,a,o,s,l,u,c),{u_gamma_scale:i?Math.cos(d._pitch)*d.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+f})},wi=function(t,r,n,i,a,o,s,l,u,c){return e.extend(_i(t,r,n,i,a,o,s,l,!0,u,!0),{u_texsize_icon:c,u_texture_icon:1})},ki=function(e,t,r){return{u_matrix:e,u_opacity:t,u_color:r}},Ti=function(t,r,n,i,a,o){return e.extend(Gn(i,o,n,a),{u_matrix:t,u_opacity:r})},Mi={fillExtrusion:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_lightpos:new e.Uniform3f(t,r.u_lightpos),u_lightintensity:new e.Uniform1f(t,r.u_lightintensity),u_lightcolor:new e.Uniform3f(t,r.u_lightcolor),u_vertical_gradient:new e.Uniform1f(t,r.u_vertical_gradient),u_opacity:new e.Uniform1f(t,r.u_opacity)}},fillExtrusionPattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_lightpos:new e.Uniform3f(t,r.u_lightpos),u_lightintensity:new e.Uniform1f(t,r.u_lightintensity),u_lightcolor:new e.Uniform3f(t,r.u_lightcolor),u_vertical_gradient:new e.Uniform1f(t,r.u_vertical_gradient),u_height_factor:new e.Uniform1f(t,r.u_height_factor),u_image:new e.Uniform1i(t,r.u_image),u_texsize:new e.Uniform2f(t,r.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade),u_opacity:new e.Uniform1f(t,r.u_opacity)}},fill:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},fillPattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_image:new e.Uniform1i(t,r.u_image),u_texsize:new e.Uniform2f(t,r.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade)}},fillOutline:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_world:new e.Uniform2f(t,r.u_world)}},fillOutlinePattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_world:new e.Uniform2f(t,r.u_world),u_image:new e.Uniform1i(t,r.u_image),u_texsize:new e.Uniform2f(t,r.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade)}},circle:function(t,r){return{u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(t,r.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(t,r.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},collisionBox:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(t,r.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(t,r.u_extrude_scale),u_overscale_factor:new e.Uniform1f(t,r.u_overscale_factor)}},collisionCircle:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_inv_matrix:new e.UniformMatrix4f(t,r.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(t,r.u_viewport_size)}},debug:function(t,r){return{u_color:new e.UniformColor(t,r.u_color),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_overlay:new e.Uniform1i(t,r.u_overlay),u_overlay_scale:new e.Uniform1f(t,r.u_overlay_scale)}},clippingMask:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},heatmap:function(t,r){return{u_extrude_scale:new e.Uniform1f(t,r.u_extrude_scale),u_intensity:new e.Uniform1f(t,r.u_intensity),u_matrix:new e.UniformMatrix4f(t,r.u_matrix)}},heatmapTexture:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_world:new e.Uniform2f(t,r.u_world),u_image:new e.Uniform1i(t,r.u_image),u_color_ramp:new e.Uniform1i(t,r.u_color_ramp),u_opacity:new e.Uniform1f(t,r.u_opacity)}},hillshade:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_image:new e.Uniform1i(t,r.u_image),u_latrange:new e.Uniform2f(t,r.u_latrange),u_light:new e.Uniform2f(t,r.u_light),u_shadow:new e.UniformColor(t,r.u_shadow),u_highlight:new e.UniformColor(t,r.u_highlight),u_accent:new e.UniformColor(t,r.u_accent)}},hillshadePrepare:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_image:new e.Uniform1i(t,r.u_image),u_dimension:new e.Uniform2f(t,r.u_dimension),u_zoom:new e.Uniform1f(t,r.u_zoom),u_maxzoom:new e.Uniform1f(t,r.u_maxzoom),u_unpack:new e.Uniform4f(t,r.u_unpack)}},line:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels)}},lineGradient:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels),u_image:new e.Uniform1i(t,r.u_image)}},linePattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_texsize:new e.Uniform2f(t,r.u_texsize),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_image:new e.Uniform1i(t,r.u_image),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels),u_scale:new e.Uniform3f(t,r.u_scale),u_fade:new e.Uniform1f(t,r.u_fade)}},lineSDF:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_ratio:new e.Uniform1f(t,r.u_ratio),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,r.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(t,r.u_patternscale_a),u_patternscale_b:new e.Uniform2f(t,r.u_patternscale_b),u_sdfgamma:new e.Uniform1f(t,r.u_sdfgamma),u_image:new e.Uniform1i(t,r.u_image),u_tex_y_a:new e.Uniform1f(t,r.u_tex_y_a),u_tex_y_b:new e.Uniform1f(t,r.u_tex_y_b),u_mix:new e.Uniform1f(t,r.u_mix)}},raster:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_tl_parent:new e.Uniform2f(t,r.u_tl_parent),u_scale_parent:new e.Uniform1f(t,r.u_scale_parent),u_buffer_scale:new e.Uniform1f(t,r.u_buffer_scale),u_fade_t:new e.Uniform1f(t,r.u_fade_t),u_opacity:new e.Uniform1f(t,r.u_opacity),u_image0:new e.Uniform1i(t,r.u_image0),u_image1:new e.Uniform1i(t,r.u_image1),u_brightness_low:new e.Uniform1f(t,r.u_brightness_low),u_brightness_high:new e.Uniform1f(t,r.u_brightness_high),u_saturation_factor:new e.Uniform1f(t,r.u_saturation_factor),u_contrast_factor:new e.Uniform1f(t,r.u_contrast_factor),u_spin_weights:new e.Uniform3f(t,r.u_spin_weights)}},symbolIcon:function(t,r){return{u_is_size_zoom_constant:new e.Uniform1i(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,r.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,r.u_size_t),u_size:new e.Uniform1f(t,r.u_size),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,r.u_pitch),u_rotate_symbol:new e.Uniform1i(t,r.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,r.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,r.u_fade_change),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,r.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,r.u_coord_matrix),u_is_text:new e.Uniform1i(t,r.u_is_text),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_texsize:new e.Uniform2f(t,r.u_texsize),u_texture:new e.Uniform1i(t,r.u_texture)}},symbolSDF:function(t,r){return{u_is_size_zoom_constant:new e.Uniform1i(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,r.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,r.u_size_t),u_size:new e.Uniform1f(t,r.u_size),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,r.u_pitch),u_rotate_symbol:new e.Uniform1i(t,r.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,r.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,r.u_fade_change),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,r.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,r.u_coord_matrix),u_is_text:new e.Uniform1i(t,r.u_is_text),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_texsize:new e.Uniform2f(t,r.u_texsize),u_texture:new e.Uniform1i(t,r.u_texture),u_gamma_scale:new e.Uniform1f(t,r.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(t,r.u_is_halo)}},symbolTextAndIcon:function(t,r){return{u_is_size_zoom_constant:new e.Uniform1i(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,r.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,r.u_size_t),u_size:new e.Uniform1f(t,r.u_size),u_camera_to_center_distance:new e.Uniform1f(t,r.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,r.u_pitch),u_rotate_symbol:new e.Uniform1i(t,r.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,r.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,r.u_fade_change),u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,r.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,r.u_coord_matrix),u_is_text:new e.Uniform1i(t,r.u_is_text),u_pitch_with_map:new e.Uniform1i(t,r.u_pitch_with_map),u_texsize:new e.Uniform2f(t,r.u_texsize),u_texsize_icon:new e.Uniform2f(t,r.u_texsize_icon),u_texture:new e.Uniform1i(t,r.u_texture),u_texture_icon:new e.Uniform1i(t,r.u_texture_icon),u_gamma_scale:new e.Uniform1f(t,r.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(t,r.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(t,r.u_is_halo)}},background:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_opacity:new e.Uniform1f(t,r.u_opacity),u_color:new e.UniformColor(t,r.u_color)}},backgroundPattern:function(t,r){return{u_matrix:new e.UniformMatrix4f(t,r.u_matrix),u_opacity:new e.Uniform1f(t,r.u_opacity),u_image:new e.Uniform1i(t,r.u_image),u_pattern_tl_a:new e.Uniform2f(t,r.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(t,r.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(t,r.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(t,r.u_pattern_br_b),u_texsize:new e.Uniform2f(t,r.u_texsize),u_mix:new e.Uniform1f(t,r.u_mix),u_pattern_size_a:new e.Uniform2f(t,r.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(t,r.u_pattern_size_b),u_scale_a:new e.Uniform1f(t,r.u_scale_a),u_scale_b:new e.Uniform1f(t,r.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,r.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(t,r.u_tile_units_to_pixels)}}};function Ai(t,r,n,i,a,o,s){for(var l=t.context,u=l.gl,c=t.useProgram("collisionBox"),f=[],d=0,h=0,p=0;p0){var _=e.create(),w=y;e.mul(_,g.placementInvProjMatrix,t.transform.glCoordMatrix),e.mul(_,_,g.placementViewportMatrix),f.push({circleArray:b,circleOffset:h,transform:w,invTransform:_}),h=d+=b.length/4}x&&c.draw(l,u.LINES,Ne.disabled,Ue.disabled,t.colorModeForRenderPass(),Ze.disabled,ei(y,t.transform,m),n.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,t.transform.zoom,null,null,x.collisionVertexBuffer)}}if(s&&f.length){var k=t.useProgram("collisionCircle"),T=new e.StructArrayLayout2f1f2i16;T.resize(4*d),T._trim();for(var M=0,A=0,S=f;A=0&&(v[g.associatedIconIndex]={shiftedAnchor:S,angle:E})}else Rt(g.numGlyphs,h)}if(f){p.clear();for(var L=t.icon.placedSymbolArray,P=0;P0){var s=e.browser.now(),l=(s-t.timeAdded)/o,u=r?(s-r.timeAdded)/o:-1,c=n.getSource(),f=a.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),d=!r||Math.abs(r.tileID.overscaledZ-f)>Math.abs(t.tileID.overscaledZ-f),h=d&&t.refreshedUponExpiration?1:e.clamp(d?l:1-u,0,1);return t.refreshedUponExpiration&&l>=1&&(t.refreshedUponExpiration=!1),r?{opacity:1,mix:1-h}:{opacity:h,mix:0}}return{opacity:1,mix:0}}function $i(e,t,r){var n=r.paint.get("background-color"),i=r.paint.get("background-opacity");if(0!==i){var a=e.context,o=a.gl,s=e.transform,l=s.tileSize,u=r.paint.get("background-pattern");if(!e.isPatternMissing(u)){var c=!u&&1===n.a&&1===i&&e.opaquePassEnabledForLayer()?"opaque":"translucent";if(e.renderPass===c){var f=Ue.disabled,d=e.depthModeForSublayer(0,"opaque"===c?Ne.ReadWrite:Ne.ReadOnly),h=e.colorModeForRenderPass(),p=e.useProgram(u?"backgroundPattern":"background"),v=s.coveringTiles({tileSize:l});u&&(a.activeTexture.set(o.TEXTURE0),e.imageManager.bind(e.context));for(var m=r.getCrossfadeParameters(),g=0,y=v;g "+n.overscaledZ),ca(t,g+" "+p+"kb"),s.draw(i,a.TRIANGLES,l,u,We.alphaBlended,Ze.disabled,ri(o,e.Color.transparent,m),f,t.debugBuffer,t.quadTriangleIndexBuffer,t.debugSegments)}function ca(e,t){e.initDebugOverlayCanvas();var r=e.debugOverlayCanvas,n=e.context.gl,i=e.debugOverlayCanvas.getContext("2d");i.clearRect(0,0,r.width,r.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(t,5,5),i.strokeText(t,5,5),e.debugOverlayTexture.update(r),e.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}function fa(e,t,r){var n=e.context,i=r.implementation;if("offscreen"===e.renderPass){var a=i.prerender;a&&(e.setCustomLayerDefaults(),n.setColorMode(e.colorModeForRenderPass()),a.call(i,n.gl,e.transform.customLayerMatrix()),n.setDirty(),e.setBaseState())}else if("translucent"===e.renderPass){e.setCustomLayerDefaults(),n.setColorMode(e.colorModeForRenderPass()),n.setStencilMode(Ue.disabled);var o="3d"===i.renderingMode?new Ne(e.context.gl.LEQUAL,Ne.ReadWrite,e.depthRangeFor3D):e.depthModeForSublayer(0,Ne.ReadOnly);n.setDepthMode(o),i.render(n.gl,e.transform.customLayerMatrix()),n.setDirty(),e.setBaseState(),n.bindFramebuffer.set(null)}}var da={symbol:Ci,circle:zi,heatmap:Fi,line:Ui,fill:Vi,"fill-extrusion":qi,hillshade:Gi,raster:Xi,background:$i,debug:la,custom:fa},ha=function(e,t){this.context=new Xe(e),this.transform=t,this._tileTextures={},this.setup(),this.numSublayers=Ke.maxUnderzooming+Ke.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new fr,this.gpuTimers={}};ha.prototype.resize=function(t,r){if(this.width=t*e.browser.devicePixelRatio,this.height=r*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var n=0,i=this.style._order;n256&&this.clearStencil(),r.setColorMode(We.disabled),r.setDepthMode(Ne.disabled);var i=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var a=0,o=t;a256&&this.clearStencil();var e=this.nextStencilID++,t=this.context.gl;return new Ue({func:t.NOTEQUAL,mask:255},e,255,t.KEEP,t.KEEP,t.REPLACE)},ha.prototype.stencilModeForClipping=function(e){var t=this.context.gl;return new Ue({func:t.EQUAL,mask:255},this._tileClippingMaskIDs[e.key],0,t.KEEP,t.KEEP,t.REPLACE)},ha.prototype.stencilConfigForOverlap=function(e){var t,r=this.context.gl,n=e.sort((function(e,t){return t.overscaledZ-e.overscaledZ})),i=n[n.length-1].overscaledZ,a=n[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 w=this.style._layers[i[this.currentLayer]],k=a[w.source],T=c[w.source];this._renderTileClippingMasks(w,T),this.renderLayer(this,k,w,T)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?t.pop():null},ha.prototype.isPatternMissing=function(e){if(!e)return!1;if(!e.from||!e.to)return!0;var t=this.imageManager.getPattern(e.from.toString()),r=this.imageManager.getPattern(e.to.toString());return!t||!r},ha.prototype.useProgram=function(e,t){this.cache=this.cache||{};var r=""+e+(t?t.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[r]||(this.cache[r]=new qn(this.context,Vn[e],t,Mi[e],this._showOverdrawInspector)),this.cache[r]},ha.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()},ha.prototype.setBaseState=function(){var e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD)},ha.prototype.initDebugOverlayCanvas=function(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var t=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,t.RGBA)}},ha.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var pa=function(e,t){this.points=e,this.planes=t};pa.fromInvProjectionMatrix=function(t,r,n){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,n),o=i.map((function(r){return e.transformMat4([],r,t)})).map((function(t){return e.scale$1([],t,1/t[3]/r*a)})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(t){var r=e.sub([],o[t[0]],o[t[1]]),n=e.sub([],o[t[2]],o[t[1]]),i=e.normalize([],e.cross([],r,n)),a=-e.dot(i,o[t[1]]);return i.concat(a)}));return new pa(o,s)};var va=function(t,r){this.min=t,this.max=r,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};va.prototype.quadrant=function(t){for(var r=[t%2===0,t<2],n=e.clone$2(this.min),i=e.clone$2(this.max),a=0;a=0;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(var l=0;l<3;l++){for(var u=Number.MAX_VALUE,c=-Number.MAX_VALUE,f=0;fthis.max[l]-this.min[l])return 0}return 1};var ma=function(e,t,r,n){if(void 0===e&&(e=0),void 0===t&&(t=0),void 0===r&&(r=0),void 0===n&&(n=0),isNaN(e)||e<0||isNaN(t)||t<0||isNaN(r)||r<0||isNaN(n)||n<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=e,this.bottom=t,this.left=r,this.right=n};ma.prototype.interpolate=function(t,r,n){return null!=r.top&&null!=t.top&&(this.top=e.number(t.top,r.top,n)),null!=r.bottom&&null!=t.bottom&&(this.bottom=e.number(t.bottom,r.bottom,n)),null!=r.left&&null!=t.left&&(this.left=e.number(t.left,r.left,n)),null!=r.right&&null!=t.right&&(this.right=e.number(t.right,r.right,n)),this},ma.prototype.getCenter=function(t,r){var n=e.clamp((this.left+t-this.right)/2,0,t),i=e.clamp((this.top+r-this.bottom)/2,0,r);return new e.Point(n,i)},ma.prototype.equals=function(e){return this.top===e.top&&this.bottom===e.bottom&&this.left===e.left&&this.right===e.right},ma.prototype.clone=function(){return new ma(this.top,this.bottom,this.left,this.right)},ma.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var ga=function(t,r,n,i,a){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===a||a,this._minZoom=t||0,this._maxZoom=r||22,this._minPitch=void 0===n||null===n?0:n,this._maxPitch=void 0===i||null===i?60:i,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ma,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 xa(e,t){var r=!1,n=null,i=function i(){n=null,r&&(e(),n=setTimeout(i,t),r=!1)};return function(){return r=!0,n||i(),n}}ga.prototype.clone=function(){var e=new ga(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return e.tileSize=this.tileSize,e.latRange=this.latRange,e.width=this.width,e.height=this.height,e._center=this._center,e.zoom=this.zoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._calcMatrices(),e},ya.minZoom.get=function(){return this._minZoom},ya.minZoom.set=function(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e))},ya.maxZoom.get=function(){return this._maxZoom},ya.maxZoom.set=function(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e))},ya.minPitch.get=function(){return this._minPitch},ya.minPitch.set=function(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e))},ya.maxPitch.get=function(){return this._maxPitch},ya.maxPitch.set=function(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e))},ya.renderWorldCopies.get=function(){return this._renderWorldCopies},ya.renderWorldCopies.set=function(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e},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 e.Point(this.width,this.height)},ya.bearing.get=function(){return-this.angle/Math.PI*180},ya.bearing.set=function(t){var r=-e.wrap(t,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},ya.pitch.get=function(){return this._pitch/Math.PI*180},ya.pitch.set=function(t){var r=e.clamp(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())},ya.fov.get=function(){return this._fov/Math.PI*180},ya.fov.set=function(e){e=Math.max(.01,Math.min(60,e)),this._fov!==e&&(this._unmodified=!1,this._fov=e/180*Math.PI,this._calcMatrices())},ya.zoom.get=function(){return this._zoom},ya.zoom.set=function(e){var t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._zoom=t,this.scale=this.zoomScale(t),this.tileZoom=Math.floor(t),this.zoomFraction=t-this.tileZoom,this._constrain(),this._calcMatrices())},ya.center.get=function(){return this._center},ya.center.set=function(e){e.lat===this._center.lat&&e.lng===this._center.lng||(this._unmodified=!1,this._center=e,this._constrain(),this._calcMatrices())},ya.padding.get=function(){return this._edgeInsets.toJSON()},ya.padding.set=function(e){this._edgeInsets.equals(e)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,e,1),this._calcMatrices())},ya.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},ga.prototype.isPaddingEqual=function(e){return this._edgeInsets.equals(e)},ga.prototype.interpolatePadding=function(e,t,r){this._unmodified=!1,this._edgeInsets.interpolate(e,t,r),this._constrain(),this._calcMatrices()},ga.prototype.coveringZoomLevel=function(e){var t=(e.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/e.tileSize));return Math.max(0,t)},ga.prototype.getVisibleUnwrappedCoordinates=function(t){var r=[new e.UnwrappedTileID(0,t)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new e.Point(0,0)),i=this.pointCoordinate(new e.Point(this.width,0)),a=this.pointCoordinate(new e.Point(this.width,this.height)),o=this.pointCoordinate(new e.Point(0,this.height)),s=Math.floor(Math.min(n.x,i.x,a.x,o.x)),l=Math.floor(Math.max(n.x,i.x,a.x,o.x)),u=1,c=s-u;c<=l+u;c++)0!==c&&r.push(new e.UnwrappedTileID(c,t));return r},ga.prototype.coveringTiles=function(t){var r=this.coveringZoomLevel(t),n=r;if(void 0!==t.minzoom&&rt.maxzoom&&(r=t.maxzoom);var i=e.MercatorCoordinate.fromLngLat(this.center),a=Math.pow(2,r),o=[a*i.x,a*i.y,0],s=pa.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,r),l=t.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=r);var u=3,c=function(e){return{aabb:new va([e*a,0,0],[(e+1)*a,a,0]),zoom:0,x:0,y:0,wrap:e,fullyVisible:!1}},f=[],d=[],h=r,p=t.reparseOverscaled?n:r;if(this._renderWorldCopies)for(var v=1;v<=3;v++)f.push(c(-v)),f.push(c(v));for(f.push(c(0));f.length>0;){var m=f.pop(),g=m.x,y=m.y,x=m.fullyVisible;if(!x){var b=m.aabb.intersects(s);if(0===b)continue;x=2===b}var _=m.aabb.distanceX(o),w=m.aabb.distanceY(o),k=Math.max(Math.abs(_),Math.abs(w)),T=u+(1<T&&m.zoom>=l)d.push({tileID:new e.OverscaledTileID(m.zoom===h?p:m.zoom,m.wrap,m.zoom,g,y),distanceSq:e.sqrLen([o[0]-.5-g,o[1]-.5-y])});else for(var M=0;M<4;M++){var A=(g<<1)+M%2,S=(y<<1)+(M>>1);f.push({aabb:m.aabb.quadrant(M),zoom:m.zoom+1,x:A,y:S,wrap:m.wrap,fullyVisible:x})}}return d.sort((function(e,t){return e.distanceSq-t.distanceSq})).map((function(e){return e.tileID}))},ga.prototype.resize=function(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices()},ya.unmodified.get=function(){return this._unmodified},ga.prototype.zoomScale=function(e){return Math.pow(2,e)},ga.prototype.scaleZoom=function(e){return Math.log(e)/Math.LN2},ga.prototype.project=function(t){var r=e.clamp(t.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(t.lng)*this.worldSize,e.mercatorYfromLat(r)*this.worldSize)},ga.prototype.unproject=function(t){return new e.MercatorCoordinate(t.x/this.worldSize,t.y/this.worldSize).toLngLat()},ya.point.get=function(){return this.project(this.center)},ga.prototype.setLocationAtPoint=function(t,r){var n=this.pointCoordinate(r),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(t),o=new e.MercatorCoordinate(a.x-(n.x-i.x),a.y-(n.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},ga.prototype.locationPoint=function(e){return this.coordinatePoint(this.locationCoordinate(e))},ga.prototype.pointLocation=function(e){return this.coordinateLocation(this.pointCoordinate(e))},ga.prototype.locationCoordinate=function(t){return e.MercatorCoordinate.fromLngLat(t)},ga.prototype.coordinateLocation=function(e){return e.toLngLat()},ga.prototype.pointCoordinate=function(t){var r=0,n=[t.x,t.y,0,1],i=[t.x,t.y,1,1];e.transformMat4(n,n,this.pixelMatrixInverse),e.transformMat4(i,i,this.pixelMatrixInverse);var a=n[3],o=i[3],s=n[0]/a,l=i[0]/o,u=n[1]/a,c=i[1]/o,f=n[2]/a,d=i[2]/o,h=f===d?0:(r-f)/(d-f);return new e.MercatorCoordinate(e.number(s,l,h)/this.worldSize,e.number(u,c,h)/this.worldSize)},ga.prototype.coordinatePoint=function(t){var r=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.transformMat4(r,r,this.pixelMatrix),new e.Point(r[0]/r[3],r[1]/r[3])},ga.prototype.getBounds=function(){return(new e.LngLatBounds).extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},ga.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},ga.prototype.setMaxBounds=function(e){e?(this.lngRange=[e.getWest(),e.getEast()],this.latRange=[e.getSouth(),e.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},ga.prototype.calculatePosMatrix=function(t,r){void 0===r&&(r=!1);var n=t.key,i=r?this._alignedPosMatrixCache:this._posMatrixCache;if(i[n])return i[n];var a=t.canonical,o=this.worldSize/this.zoomScale(a.z),s=a.x+Math.pow(2,a.z)*t.wrap,l=e.identity(new Float64Array(16));return e.translate(l,l,[s*o,a.y*o,0]),e.scale(l,l,[o/e.EXTENT,o/e.EXTENT,1]),e.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),i[n]=new Float32Array(l),i[n]},ga.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},ga.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,r,n,i,a=-90,o=90,s=-180,l=180,u=this.size,c=this._unmodified;if(this.latRange){var f=this.latRange;a=e.mercatorYfromLat(f[1])*this.worldSize,t=(o=e.mercatorYfromLat(f[0])*this.worldSize)-ao&&(i=o-m)}if(this.lngRange){var g=h.x,y=u.x/2;g-yl&&(n=l-y)}void 0===n&&void 0===i||(this.center=this.unproject(new e.Point(void 0!==n?n:h.x,void 0!==i?i:h.y))),this._unmodified=c,this._constraining=!1}},ga.prototype._calcMatrices=function(){if(this.height){var t=this._fov/2,r=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(t)*this.height;var n=Math.PI/2+this._pitch,i=this._fov*(.5+r.y/this.height),a=Math.sin(i)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-n-i,.01,Math.PI-.01)),o=this.point,s=o.x,l=o.y,u=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),c=this.height/50,f=new Float64Array(16);e.perspective(f,this._fov,this.width/this.height,c,u),f[8]=2*-r.x/this.width,f[9]=2*r.y/this.height,e.scale(f,f,[1,-1,1]),e.translate(f,f,[0,0,-this.cameraToCenterDistance]),e.rotateX(f,f,this._pitch),e.rotateZ(f,f,this.angle),e.translate(f,f,[-s,-l,0]),this.mercatorMatrix=e.scale([],f,[this.worldSize,this.worldSize,this.worldSize]),e.scale(f,f,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=f,this.invProjMatrix=e.invert([],this.projMatrix);var d=this.width%2/2,h=this.height%2/2,p=Math.cos(this.angle),v=Math.sin(this.angle),m=s-Math.round(s)+p*d+v*h,g=l-Math.round(l)+p*h+v*d,y=new Float64Array(f);if(e.translate(y,y,[m>.5?m-1:m,g>.5?g-1:g,0]),this.alignedProjMatrix=y,f=e.create(),e.scale(f,f,[this.width/2,-this.height/2,1]),e.translate(f,f,[1,-1,0]),this.labelPlaneMatrix=f,f=e.create(),e.scale(f,f,[1,-1,1]),e.translate(f,f,[-1,-1,0]),e.scale(f,f,[2/this.width,2/this.height,1]),this.glCoordMatrix=f,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(f=e.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=f,this._posMatrixCache={},this._alignedPosMatrixCache={}}},ga.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var t=this.pointCoordinate(new e.Point(0,0)),r=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.transformMat4(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance},ga.prototype.getCameraPoint=function(){var t=this._pitch,r=Math.tan(t)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,r))},ga.prototype.getCameraQueryGeometry=function(t){var r=this.getCameraPoint();if(1===t.length)return[t[0],r];for(var n=r.x,i=r.y,a=r.x,o=r.y,s=0,l=t;s=3&&!e.some((function(e){return isNaN(e)}))){var t=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(e[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+e[2],+e[1]],zoom:+e[0],bearing:t,pitch:+(e[4]||0)}),!0}return!1},ba.prototype._updateHashUnthrottled=function(){var t=this.getHashString();try{e.window.history.replaceState(e.window.history.state,"",t)}catch(r){}};var _a={linearity:.3,easing:e.bezier(0,0,.3,1)},wa=e.extend({deceleration:2500,maxSpeed:1400},_a),ka=e.extend({deceleration:20,maxSpeed:1400},_a),Ta=e.extend({deceleration:1e3,maxSpeed:360},_a),Ma=e.extend({deceleration:1e3,maxSpeed:90},_a),Aa=function(e){this._map=e,this.clear()};function Sa(e,t){(!e.duration||e.duration0&&r-t[0].time>n;)t.shift()},Aa.prototype._onMoveEnd=function(t){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var r={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},n=0,i=this._inertiaBuffer;n=this._clickTolerance||this._map.fire(new Ca(e.type,this._map,e))},Oa.prototype.dblclick=function(e){return this._firePreventable(new Ca(e.type,this._map,e))},Oa.prototype.mouseover=function(e){this._map.fire(new Ca(e.type,this._map,e))},Oa.prototype.mouseout=function(e){this._map.fire(new Ca(e.type,this._map,e))},Oa.prototype.touchstart=function(e){return this._firePreventable(new La(e.type,this._map,e))},Oa.prototype.touchmove=function(e){this._map.fire(new La(e.type,this._map,e))},Oa.prototype.touchend=function(e){this._map.fire(new La(e.type,this._map,e))},Oa.prototype.touchcancel=function(e){this._map.fire(new La(e.type,this._map,e))},Oa.prototype._firePreventable=function(e){if(this._map.fire(e),e.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(e){this._map=e};Ia.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ia.prototype.mousemove=function(e){this._map.fire(new Ca(e.type,this._map,e))},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(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new Ca(e.type,this._map,e)),this._map.listens("contextmenu")&&e.preventDefault()},Ia.prototype.isEnabled=function(){return!0},Ia.prototype.isActive=function(){return!1},Ia.prototype.enable=function(){},Ia.prototype.disable=function(){};var Da=function(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1};function Ra(e,t){for(var r={},n=0;nthis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=e.timeStamp),r.length===this.numTouches&&(this.centroid=za(t),this.touches=Ra(r,t)))},ja.prototype.touchmove=function(e,t,r){if(!this.aborted&&this.centroid){var n=Ra(r,t);for(var i in this.touches){var a=this.touches[i],o=n[i];(!o||o.dist(a)>Ba)&&(this.aborted=!0)}}},ja.prototype.touchend=function(e,t,r){if((!this.centroid||e.timeStamp-this.startTime>Na)&&(this.aborted=!0),0===r.length){var n=!this.aborted&&this.centroid;if(this.reset(),n)return n}};var Ua=function(e){this.singleTap=new ja(e),this.numTaps=e.numTaps,this.reset()};Ua.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Ua.prototype.touchstart=function(e,t,r){this.singleTap.touchstart(e,t,r)},Ua.prototype.touchmove=function(e,t,r){this.singleTap.touchmove(e,t,r)},Ua.prototype.touchend=function(e,t,r){var n=this.singleTap.touchend(e,t,r);if(n){var i=e.timeStamp-this.lastTime0&&(this._active=!0);var i=Ra(n,r),a=new e.Point(0,0),o=new e.Point(0,0),s=0;for(var l in i){var u=i[l],c=this._touches[l];c&&(a._add(u),o._add(u.sub(c)),s++,i[l]=u)}if(this._touches=i,!(sMath.abs(e.x)}var ao=100,oo=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.reset=function(){e.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},t.prototype._start=function(e){this._lastPoints=e,io(e[0].sub(e[1]))&&(this._valid=!1)},t.prototype._move=function(e,t,r){var n=e[0].sub(this._lastPoints[0]),i=e[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,i,r.timeStamp),this._valid)return this._lastPoints=e,this._active=!0,{pitchDelta:(n.y+i.y)/2*-.5}},t.prototype.gestureBeginsVertically=function(e,t,r){if(void 0!==this._valid)return this._valid;var n=2,i=e.mag()>=n,a=t.mag()>=n;if(i||a){if(!i||!a)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove0===t.y>0;return io(e)&&io(t)&&o}},t}(Ka),so={panStep:100,bearingStep:15,pitchStep:10},lo=function(){var e=so;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep};function uo(e){return e*(2-e)}lo.prototype.reset=function(){this._active=!1},lo.prototype.keydown=function(e){var t=this;if(!(e.altKey||e.ctrlKey||e.metaKey)){var r=0,n=0,i=0,a=0,o=0;switch(e.keyCode){case 61:case 107:case 171:case 187:r=1;break;case 189:case 109:case 173:r=-1;break;case 37:e.shiftKey?n=-1:(e.preventDefault(),a=-1);break;case 39:e.shiftKey?n=1:(e.preventDefault(),a=1);break;case 38:e.shiftKey?i=1:(e.preventDefault(),o=-1);break;case 40:e.shiftKey?i=-1:(e.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:uo,zoom:r?Math.round(l)+r*(e.shiftKey?2:1):l,bearing:s.getBearing()+n*t._bearingStep,pitch:s.getPitch()+i*t._pitchStep,offset:[-a*t._panStep,-o*t._panStep],center:s.getCenter()},{originalEvent:e})}}}},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 co=4.000244140625,fo=.01,ho=1/450,po=2,vo=function(t,r){this._map=t,this._el=t.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=fo,this._wheelZoomRate=ho,e.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};vo.prototype.setZoomRate=function(e){this._defaultZoomRate=e},vo.prototype.setWheelZoomRate=function(e){this._wheelZoomRate=e},vo.prototype.isEnabled=function(){return!!this._enabled},vo.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},vo.prototype.isZooming=function(){return!!this._zooming},vo.prototype.enable=function(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=e&&"center"===e.around)},vo.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},vo.prototype.wheel=function(t){if(this.isEnabled()){var r=t.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY,n=e.browser.now(),i=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%co===0?this._type="wheel":0!==r&&Math.abs(r)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=r,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(i*r)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,r+=this._lastValue)),t.shiftKey&&r&&(r/=4),this._type&&(this._lastWheelEvent=t,this._delta-=r,this._active||this._start(t)),t.preventDefault()}},vo.prototype._onTimeout=function(e){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(e)},vo.prototype._start=function(t){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 n=r.mousePos(this._el,t);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(n)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},vo.prototype.renderFrame=function(){return this._onScrollFrame()},vo.prototype._onScrollFrame=function(){var t=this;if(this._frameId&&(this._frameId=null,this.isActive())){var r=this._map.transform;if(0!==this._delta){var n="wheel"===this._type&&Math.abs(this._delta)>co?this._wheelZoomRate:this._defaultZoomRate,i=po/(1+Math.exp(-Math.abs(this._delta*n)));this._delta<0&&0!==i&&(i=1/i);var a="number"===typeof this._targetZoom?r.zoomScale(this._targetZoom):r.scale;this._targetZoom=Math.min(r.maxZoom,Math.max(r.minZoom,r.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=r.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s="number"===typeof this._targetZoom?this._targetZoom:r.zoom,l=this._startZoom,u=this._easing,c=!1;if("wheel"===this._type&&l&&u){var f=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),d=u(f);o=e.number(l,s,d),f<1?this._frameId||(this._frameId=!0):c=!0}else o=s,c=!0;return this._active=!0,c&&(this._active=!1,this._finishTimeout=setTimeout((function(){t._zooming=!1,t._handler._triggerRenderFrame(),delete t._targetZoom,delete t._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!c,zoomDelta:o-r.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},vo.prototype._smoothOutEasing=function(t){var r=e.ease;if(this._prevEase){var n=this._prevEase,i=(e.browser.now()-n.start)/n.duration,a=n.easing(i+.01)-n.easing(i),o=.27/Math.sqrt(a*a+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=e.bezier(o,s,.25,1)}return this._prevEase={start:e.browser.now(),duration:t,easing:r},r},vo.prototype.reset=function(){this._active=!1};var mo=function(e,t){this._clickZoom=e,this._tapZoom=t};mo.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},mo.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},mo.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},mo.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var go=function(){this.reset()};go.prototype.reset=function(){this._active=!1},go.prototype.dblclick=function(e,t){return e.preventDefault(),{cameraAnimation:function(r){r.easeTo({duration:300,zoom:r.getZoom()+(e.shiftKey?-1:1),around:r.unproject(t)},{originalEvent:e})}}},go.prototype.enable=function(){this._enabled=!0},go.prototype.disable=function(){this._enabled=!1,this.reset()},go.prototype.isEnabled=function(){return this._enabled},go.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(e,t,r){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>Fa&&this.reset(),this._tapTime?r.length>0&&(this._swipePoint=t[0],this._swipeTouch=r[0].identifier):this._tap.touchstart(e,t,r))},yo.prototype.touchmove=function(e,t,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=t[0],i=n.y-this._swipePoint.y;return this._swipePoint=n,e.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(e,t,r)},yo.prototype.touchend=function(e,t,r){this._tapTime?this._swipePoint&&0===r.length&&this.reset():this._tap.touchend(e,t,r)&&(this._tapTime=e.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 xo=function(e,t,r){this._el=e,this._mousePan=t,this._touchPan=r};xo.prototype.enable=function(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},xo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},xo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},xo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var bo=function(e,t,r){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=r};bo.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},bo.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},bo.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},bo.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var _o=function(e,t,r,n){this._el=e,this._touchZoom=t,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};_o.prototype.enable=function(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},_o.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},_o.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},_o.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},_o.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},_o.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var wo=function(e){return e.zoom||e.drag||e.pitch||e.rotate},ko=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(e.Event);function To(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}var Mo=function(t,n){this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Aa(t),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),e.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],[e.window.document,"mousemove",{capture:!0}],[e.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],[e.window,"blur",void 0]];for(var a=0,o=this._listeners;aa?Math.min(2,_):Math.max(.5,_),w=Math.pow(m,1-t),k=i.unproject(x.add(b.mult(t*w)).mult(v));i.setLocationAtPoint(i.renderWorldCopies?k.wrap():k,p)}n._fireMoveEvents(r)}),(function(e){n._afterEase(r,e)}),t),this},r.prototype._prepareEase=function(t,r,n){void 0===n&&(n={}),this._moving=!0,r||n.moving||this.fire(new e.Event("movestart",t)),this._zooming&&!n.zooming&&this.fire(new e.Event("zoomstart",t)),this._rotating&&!n.rotating&&this.fire(new e.Event("rotatestart",t)),this._pitching&&!n.pitching&&this.fire(new e.Event("pitchstart",t))},r.prototype._fireMoveEvents=function(t){this.fire(new e.Event("move",t)),this._zooming&&this.fire(new e.Event("zoom",t)),this._rotating&&this.fire(new e.Event("rotate",t)),this._pitching&&this.fire(new e.Event("pitch",t))},r.prototype._afterEase=function(t,r){if(!this._easeId||!r||this._easeId!==r){delete this._easeId;var n=this._zooming,i=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,n&&this.fire(new e.Event("zoomend",t)),i&&this.fire(new e.Event("rotateend",t)),a&&this.fire(new e.Event("pitchend",t)),this.fire(new e.Event("moveend",t))}},r.prototype.flyTo=function(t,r){var n=this;if(!t.essential&&e.browser.prefersReducedMotion){var i=e.pick(t,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,r)}this.stop(),t=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},t);var a=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),u=this.getPadding(),c="zoom"in t?e.clamp(+t.zoom,a.minZoom,a.maxZoom):o,f="bearing"in t?this._normalizeBearing(t.bearing,s):s,d="pitch"in t?+t.pitch:l,h="padding"in t?t.padding:a.padding,p=a.zoomScale(c-o),v=e.Point.convert(t.offset),m=a.centerPoint.add(v),g=a.pointLocation(m),y=e.LngLat.convert(t.center||g);this._normalizeCenter(y);var x=a.project(g),b=a.project(y).sub(x),_=t.curve,w=Math.max(a.width,a.height),k=w/p,T=b.mag();if("minZoom"in t){var M=e.clamp(Math.min(t.minZoom,o,c),a.minZoom,a.maxZoom),A=w/a.zoomScale(M-o);_=Math.sqrt(A/T*2)}var S=_*_;function E(e){var t=(k*k-w*w+(e?-1:1)*S*S*T*T)/(2*(e?k:w)*S*T);return Math.log(Math.sqrt(t*t+1)-t)}function C(e){return(Math.exp(e)-Math.exp(-e))/2}function L(e){return(Math.exp(e)+Math.exp(-e))/2}function P(e){return C(e)/L(e)}var O=E(0),I=function(e){return L(O)/L(O+_*e)},D=function(e){return w*((L(O)*P(O+_*e)-C(O))/S)/T},R=(E(1)-O)/_;if(Math.abs(T)<1e-6||!isFinite(R)){if(Math.abs(w-k)<1e-6)return this.easeTo(t,r);var z=kt.maxDuration&&(t.duration=0),this._zooming=!0,this._rotating=s!==f,this._pitching=d!==l,this._padding=!a.isPaddingEqual(h),this._prepareEase(r,!1),this._ease((function(t){var i=t*R,p=1/I(i);a.zoom=1===t?c:o+a.scaleZoom(p),n._rotating&&(a.bearing=e.number(s,f,t)),n._pitching&&(a.pitch=e.number(l,d,t)),n._padding&&(a.interpolatePadding(u,h,t),m=a.centerPoint.add(v));var g=1===t?y:a.unproject(x.add(b.mult(D(i))).mult(p));a.setLocationAtPoint(a.renderWorldCopies?g.wrap():g,m),n._fireMoveEvents(r)}),(function(){return n._afterEase(r)}),t),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){return this._stop()},r.prototype._stop=function(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var r=this._onEaseEnd;delete this._onEaseEnd,r.call(this,t)}if(!e){var n=this.handlers;n&&n.stop()}return this},r.prototype._ease=function(t,r,n){!1===n.animate||0===n.duration?(t(1),r()):(this._easeStart=e.browser.now(),this._easeOptions=n,this._onEaseFrame=t,this._onEaseEnd=r,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var t=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t)),t<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(t,r){t=e.wrap(t,-180,180);var n=Math.abs(t-r);return Math.abs(t-360-r)180?-360:r<-180?360:0}},r}(e.Evented),So=function(t){void 0===t&&(t={}),this.options=t,e.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};So.prototype.getDefaultPosition=function(){return"bottom-right"},So.prototype.onAdd=function(e){var t=this.options&&this.options.compact;return this._map=e,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),t&&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===t&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},So.prototype.onRemove=function(){r.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 t=this._editLink;t||(t=this._editLink=this._container.querySelector(".mapbox-improve-map"));var r=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(t){var n=r.reduce((function(e,t,n){return t.value&&(e+=t.key+"="+t.value+(n=0)return!1;return!0}))).join(" | ");o!==this._attribHTML&&(this._attribHTML=o,e.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(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};Eo.prototype.onAdd=function(e){this._map=e,this._container=r.create("div","mapboxgl-ctrl");var t=r.create("a","mapboxgl-ctrl-logo");return t.target="_blank",t.rel="noopener nofollow",t.href="https://www.mapbox.com/",t.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),t.setAttribute("rel","noopener nofollow"),this._container.appendChild(t),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(){r.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(e){e&&"metadata"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},Eo.prototype._logoRequired=function(){if(this._map.style){var e=this._map.style.sourceCaches;for(var t in e)if(e[t].getSource().mapbox_logo)return!0;return!1}},Eo.prototype._updateCompact=function(){var e=this._container.children;if(e.length){var t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add("mapboxgl-compact"):t.classList.remove("mapboxgl-compact")}};var Co=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Co.prototype.add=function(e){var t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t},Co.prototype.remove=function(e){for(var t=this._currentlyRunning,r=0,n=t?this._queue.concat(t):this._queue;rt.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=t.minPitch&&null!=t.maxPitch&&t.minPitch>t.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=t.minPitch&&t.minPitchFo)throw new Error("maxPitch must be less than or equal to "+Fo);var i=new ga(t.minZoom,t.maxZoom,t.minPitch,t.maxPitch,t.renderWorldCopies);if(n.call(this,i,t),this._interactive=t.interactive,this._maxTileCacheSize=t.maxTileCacheSize,this._failIfMajorPerformanceCaveat=t.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=t.preserveDrawingBuffer,this._antialias=t.antialias,this._trackResize=t.trackResize,this._bearingSnap=t.bearingSnap,this._refreshExpiredTiles=t.refreshExpiredTiles,this._fadeDuration=t.fadeDuration,this._crossSourceCollisions=t.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=t.collectResourceTiming,this._renderTaskQueue=new Co,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},Lo,t.locale),this._requestManager=new e.RequestManager(t.transformRequest,t.accessToken),"string"===typeof t.container){if(this._container=e.window.document.getElementById(t.container),!this._container)throw new Error("Container '"+t.container+"' not found.")}else{if(!(t.container instanceof Oo))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=t.container}if(t.maxBounds&&this.setMaxBounds(t.maxBounds),e.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 r._update(!1)})),this.on("moveend",(function(){return r._update(!1)})),this.on("zoom",(function(){return r._update(!0)})),"undefined"!==typeof e.window&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1)),this.handlers=new Mo(this,t);var a="string"===typeof t.hash&&t.hash||void 0;this._hash=t.hash&&new ba(a).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:t.center,zoom:t.zoom,bearing:t.bearing,pitch:t.pitch}),t.bounds&&(this.resize(),this.fitBounds(t.bounds,e.extend({},t.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=t.localIdeographFontFamily,t.style&&this.setStyle(t.style,{localIdeographFontFamily:t.localIdeographFontFamily}),t.attributionControl&&this.addControl(new So({customAttribution:t.customAttribution})),this.addControl(new Eo,t.logoPosition),this.on("style.load",(function(){r.transform.unmodified&&r.jumpTo(r.style.stylesheet)})),this.on("data",(function(t){r._update("style"===t.dataType),r.fire(new e.Event(t.dataType+"data",t))})),this.on("dataloading",(function(t){r.fire(new e.Event(t.dataType+"dataloading",t))}))}n&&(i.__proto__=n),i.prototype=Object.create(n&&n.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(t,r){if(void 0===r&&t.getDefaultPosition&&(r=t.getDefaultPosition()),void 0===r&&(r="top-right"),!t||!t.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var n=t.onAdd(this);this._controls.push(t);var i=this._controlPositions[r];return-1!==r.indexOf("bottom")?i.insertBefore(n,i.firstChild):i.appendChild(n),this},i.prototype.removeControl=function(t){if(!t||!t.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var r=this._controls.indexOf(t);return r>-1&&this._controls.splice(r,1),t.onRemove(this),this},i.prototype.resize=function(t){var r=this._containerDimensions(),n=r[0],i=r[1];this._resizeCanvas(n,i),this.transform.resize(n,i),this.painter.resize(n,i);var a=!this._moving;return a&&(this.stop(),this.fire(new e.Event("movestart",t)).fire(new e.Event("move",t))),this.fire(new e.Event("resize",t)),a&&this.fire(new e.Event("moveend",t)),this},i.prototype.getBounds=function(){return this.transform.getBounds()},i.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},i.prototype.setMaxBounds=function(t){return this.transform.setMaxBounds(e.LngLatBounds.convert(t)),this._update()},i.prototype.setMinZoom=function(e){if((e=null===e||void 0===e?Do:e)>=Do&&e<=this.transform.maxZoom)return this.transform.minZoom=e,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=e,this._update(),this.getZoom()>e&&this.setZoom(e),this;throw new Error("maxZoom must be greater than the current minZoom")},i.prototype.getMaxZoom=function(){return this.transform.maxZoom},i.prototype.setMinPitch=function(e){if((e=null===e||void 0===e?zo:e)=zo&&e<=this.transform.maxPitch)return this.transform.minPitch=e,this._update(),this.getPitch()Fo)throw new Error("maxPitch must be less than or equal to "+Fo);if(e>=this.transform.minPitch)return this.transform.maxPitch=e,this._update(),this.getPitch()>e&&this.setPitch(e),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(e){return this.transform.renderWorldCopies=e,this._update()},i.prototype.project=function(t){return this.transform.locationPoint(e.LngLat.convert(t))},i.prototype.unproject=function(t){return this.transform.pointLocation(e.Point.convert(t))},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(e,t,r){var n,i=this;if("mouseenter"===e||"mouseover"===e){var a=!1,o=function(n){var o=i.getLayer(t)?i.queryRenderedFeatures(n.point,{layers:[t]}):[];o.length?a||(a=!0,r.call(i,new Ca(e,i,n.originalEvent,{features:o}))):a=!1};return{layer:t,listener:r,delegates:{mousemove:o,mouseout:function(){a=!1}}}}if("mouseleave"===e||"mouseout"===e){var s=!1,l=function(n){(i.getLayer(t)?i.queryRenderedFeatures(n.point,{layers:[t]}):[]).length?s=!0:s&&(s=!1,r.call(i,new Ca(e,i,n.originalEvent)))},u=function(t){s&&(s=!1,r.call(i,new Ca(e,i,t.originalEvent)))};return{layer:t,listener:r,delegates:{mousemove:l,mouseout:u}}}var c=function(e){var n=i.getLayer(t)?i.queryRenderedFeatures(e.point,{layers:[t]}):[];n.length&&(e.features=n,r.call(i,e),delete e.features)};return{layer:t,listener:r,delegates:(n={},n[e]=c,n)}},i.prototype.on=function(e,t,r){if(void 0===r)return n.prototype.on.call(this,e,t);var i=this._createDelegatedListener(e,t,r);for(var a in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(i),i.delegates)this.on(a,i.delegates[a]);return this},i.prototype.once=function(e,t,r){if(void 0===r)return n.prototype.once.call(this,e,t);var i=this._createDelegatedListener(e,t,r);for(var a in i.delegates)this.once(a,i.delegates[a]);return this},i.prototype.off=function(e,t,r){var i=this;if(void 0===r)return n.prototype.off.call(this,e,t);var a=function(n){for(var a=n[e],o=0;o180;){var s=n.locationPoint(t);if(s.x>=0&&s.y>=0&&s.x<=n.width&&s.y<=n.height)break;t.lng>n.center.lng?t.lng-=360:t.lng+=360}return t}Ho.prototype.down=function(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),r.disableDrag()},Ho.prototype.move=function(e,t){var r=this.map,n=this.mouseRotate.mousemoveWindow(e,t);if(n&&n.bearingDelta&&r.setBearing(r.getBearing()+n.bearingDelta),this.mousePitch){var i=this.mousePitch.mousemoveWindow(e,t);i&&i.pitchDelta&&r.setPitch(r.getPitch()+i.pitchDelta)}},Ho.prototype.off=function(){var e=this.element;r.removeEventListener(e,"mousedown",this.mousedown),r.removeEventListener(e,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(e,"touchmove",this.touchmove),r.removeEventListener(e,"touchend",this.touchend),r.removeEventListener(e,"touchcancel",this.reset),this.offTemp()},Ho.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(e.window,"mousemove",this.mousemove),r.removeEventListener(e.window,"mouseup",this.mouseup)},Ho.prototype.mousedown=function(t){this.down(e.extend({},t,{ctrlKey:!0,preventDefault:function(){return t.preventDefault()}}),r.mousePos(this.element,t)),r.addEventListener(e.window,"mousemove",this.mousemove),r.addEventListener(e.window,"mouseup",this.mouseup)},Ho.prototype.mousemove=function(e){this.move(e,r.mousePos(this.element,e))},Ho.prototype.mouseup=function(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp()},Ho.prototype.touchstart=function(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,e.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return e.preventDefault()}},this._startPos))},Ho.prototype.touchmove=function(e){1!==e.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,e.targetTouches)[0],this.move({preventDefault:function(){return e.preventDefault()}},this._lastPos))},Ho.prototype.touchend=function(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)t.getEast()||r.latitudet.getNorth())},n.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")}},n.prototype._onSuccess=function(t){if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new e.Event("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,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(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",t)),this._finish()}},n.prototype._updateCamera=function(t){var r=new e.LngLat(t.coords.longitude,t.coords.latitude),n=t.coords.accuracy,i=this._map.getBearing(),a=e.extend({bearing:i},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),a,{geolocateSource:!0})},n.prototype._updateMarker=function(t){if(t){var r=new e.LngLat(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(r).addTo(this._map),this._userLocationDotMarker.setLngLat(r).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},n.prototype._updateCircleRadius=function(){var e=this._map._container.clientHeight/2,t=this._map.unproject([0,e]),r=this._map.unproject([1,e]),n=t.distanceTo(r),i=Math.ceil(2*this._accuracy/n);this._circleElement.style.width=i+"px",this._circleElement.style.height=i+"px"},n.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},n.prototype._onError=function(t){if(this._map){if(this.options.trackUserLocation)if(1===t.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 r=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=r,this._geolocateButton.setAttribute("aria-label",r),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===t.code&&Jo)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",t)),this._finish()}},n.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},n.prototype._setupUI=function(t){var n=this;if(this._container.addEventListener("contextmenu",(function(e){return e.preventDefault()})),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",!1===t){e.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=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Zo(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Zo({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(t){var r=t.originalEvent&&"resize"===t.originalEvent.type;t.geolocateSource||"ACTIVE_LOCK"!==n._watchState||r||(n._watchState="BACKGROUND",n._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),n._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),n.fire(new e.Event("trackuserlocationend")))}))},n.prototype.trigger=function(){if(!this._setup)return e.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 e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":$o--,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 e.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 e.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 t;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),++$o>1?(t={maximumAge:6e5,timeout:0},Jo=!0):(t=this.options.positionOptions,Jo=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},n.prototype._clearWatch=function(){e.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)},n}(e.Evented),es={maxWidth:100,unit:"metric"},ts=function(t){this.options=e.extend({},es,t),e.bindAll(["_onMove","setUnit"],this)};function rs(e,t,r){var n=r&&r.maxWidth||100,i=e._container.clientHeight/2,a=e.unproject([0,i]),o=e.unproject([n,i]),s=a.distanceTo(o);if(r&&"imperial"===r.unit){var l=3.2808*s;l>5280?ns(t,n,l/5280,e._getUIString("ScaleControl.Miles")):ns(t,n,l,e._getUIString("ScaleControl.Feet"))}else r&&"nautical"===r.unit?ns(t,n,s/1852,e._getUIString("ScaleControl.NauticalMiles")):s>=1e3?ns(t,n,s/1e3,e._getUIString("ScaleControl.Kilometers")):ns(t,n,s,e._getUIString("ScaleControl.Meters"))}function ns(e,t,r,n){var i=as(r),a=i/r;e.style.width=t*a+"px",e.innerHTML=i+" "+n}function is(e){var t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}function as(e){var t=Math.pow(10,(""+Math.floor(e)).length-1),r=e/t;return t*(r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:r>=1?1:is(r))}ts.prototype.getDefaultPosition=function(){return"bottom-left"},ts.prototype._onMove=function(){rs(this._map,this._container,this.options)},ts.prototype.onAdd=function(e){return this._map=e,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",e.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},ts.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},ts.prototype.setUnit=function(e){this.options.unit=e,rs(this._map,this._container,this.options)};var os=function(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof e.window.HTMLElement?this._container=t.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};os.prototype.onAdd=function(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},os.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},os.prototype._setupUI=function(){var t=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",t).setAttribute("aria-hidden",!0),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._updateTitle=function(){var e=this._getTitle();this._fullscreenButton.setAttribute("aria-label",e),this._fullscreenButton.title=e},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(){(e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.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()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.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(t){function n(r){t.call(this),this.options=e.extend(Object.create(ss),r),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n,n.prototype.addTo=function(t){return this._map&&this.remove(),this._map=t,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 e.Event("open")),this},n.prototype.isOpen=function(){return!!this._map},n.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.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 e.Event("close")),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(t){return this._lngLat=e.LngLat.convert(t),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},n.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},n.prototype.getElement=function(){return this._container},n.prototype.setText=function(t){return this.setDOMContent(e.window.document.createTextNode(t))},n.prototype.setHTML=function(t){var r,n=e.window.document.createDocumentFragment(),i=e.window.document.createElement("body");for(i.innerHTML=t;r=i.firstChild;)n.appendChild(r);return this.setDOMContent(n)},n.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},n.prototype.setMaxWidth=function(e){return this.options.maxWidth=e,this._update(),this},n.prototype.setDOMContent=function(e){return this._createContent(),this._content.appendChild(e),this._update(),this},n.prototype.addClassName=function(e){this._container&&this._container.classList.add(e)},n.prototype.removeClassName=function(e){this._container&&this._container.classList.remove(e)},n.prototype.toggleClassName=function(e){if(this._container)return this._container.classList.toggle(e)},n.prototype._createContent=function(){this._content&&r.remove(this._content),this._content=r.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=r.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))},n.prototype._onMouseUp=function(e){this._update(e.point)},n.prototype._onMouseMove=function(e){this._update(e.point)},n.prototype._onDrag=function(e){this._update(e.point)},n.prototype._update=function(e){var t=this,n=this._lngLat||this._trackPointer;if(this._map&&n&&this._content&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach((function(e){return t._container.classList.add(e)})),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||e)){var i=this._pos=this._trackPointer&&e?e:this._map.project(this._lngLat),a=this.options.anchor,o=us(this.options.offset);if(!a){var s,l=this._container.offsetWidth,u=this._container.offsetHeight;s=i.y+o.bottom.ythis._map.transform.height-u?["bottom"]:[],i.xthis._map.transform.width-l/2&&s.push("right"),a=0===s.length?"bottom":s.join("-")}var c=i.add(o[a]).round();r.setTransform(this._container,Wo[a]+" translate("+c.x+"px,"+c.y+"px)"),Go(this._container,a,"popup")}},n.prototype._onClose=function(){this.remove()},n}(e.Evented);function us(t){if(t){if("number"===typeof t){var r=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{center:new e.Point(0,0),top:new e.Point(0,t),"top-left":new e.Point(r,r),"top-right":new e.Point(-r,r),bottom:new e.Point(0,-t),"bottom-left":new e.Point(r,-r),"bottom-right":new e.Point(-r,-r),left:new e.Point(t,0),right:new e.Point(-t,0)}}if(t instanceof e.Point||Array.isArray(t)){var n=e.Point.convert(t);return{center:n,top:n,"top-left":n,"top-right":n,bottom:n,"bottom-left":n,"bottom-right":n,left:n,right:n}}return{center:e.Point.convert(t.center||[0,0]),top:e.Point.convert(t.top||[0,0]),"top-left":e.Point.convert(t["top-left"]||[0,0]),"top-right":e.Point.convert(t["top-right"]||[0,0]),bottom:e.Point.convert(t.bottom||[0,0]),"bottom-left":e.Point.convert(t["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(t["bottom-right"]||[0,0]),left:e.Point.convert(t.left||[0,0]),right:e.Point.convert(t.right||[0,0])}}return us(new e.Point(0,0))}var cs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:Bo,NavigationControl:Vo,GeolocateControl:Qo,AttributionControl:So,ScaleControl:ts,FullscreenControl:os,Popup:ls,Marker:Zo,Style:mr,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:at,clearPrewarmedResources:ot,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(t){e.config.ACCESS_TOKEN=t},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(t){e.config.API_URL=t},get workerCount(){return tt.workerCount},set workerCount(e){tt.workerCount=e},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){e.config.MAX_PARALLEL_IMAGE_REQUESTS=t},clearStorage:function(t){e.clearTileCache(t)},workerUrl:""};return cs})),r}()},27084:function(e){"use strict";e.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}},16825:function(e,t,r){"use strict";e.exports=function(e,t){t||(t=e,e=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(e){var t=!1;return"altKey"in e&&(t=t||e.altKey!==o.alt,o.alt=!!e.altKey),"shiftKey"in e&&(t=t||e.shiftKey!==o.shift,o.shift=!!e.shiftKey),"ctrlKey"in e&&(t=t||e.ctrlKey!==o.control,o.control=!!e.ctrlKey),"metaKey"in e&&(t=t||e.metaKey!==o.meta,o.meta=!!e.metaKey),t}function u(e,s){var u=n.x(s),c=n.y(s);"buttons"in s&&(e=0|s.buttons),(e!==r||u!==i||c!==a||l(s))&&(r=0|e,i=u||0,a=c||0,t&&t(r,i,a,o))}function c(e){u(0,e)}function f(){(r||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,r=0,o.shift=o.alt=o.control=o.meta=!1,t&&t(0,0,0,o))}function d(e){l(e)&&t&&t(r,i,a,o)}function h(e){0===n.buttons(e)?u(0,e):u(r,e)}function p(e){u(r|n.buttons(e),e)}function v(e){u(r&~n.buttons(e),e)}function m(){s||(s=!0,e.addEventListener("mousemove",h),e.addEventListener("mousedown",p),e.addEventListener("mouseup",v),e.addEventListener("mouseleave",c),e.addEventListener("mouseenter",c),e.addEventListener("mouseout",c),e.addEventListener("mouseover",c),e.addEventListener("blur",f),e.addEventListener("keyup",d),e.addEventListener("keydown",d),e.addEventListener("keypress",d),e!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",d),window.addEventListener("keydown",d),window.addEventListener("keypress",d)))}m();var g={element:e};return Object.defineProperties(g,{enabled:{get:function(){return s},set:function(t){t?m():s&&(s=!1,e.removeEventListener("mousemove",h),e.removeEventListener("mousedown",p),e.removeEventListener("mouseup",v),e.removeEventListener("mouseleave",c),e.removeEventListener("mouseenter",c),e.removeEventListener("mouseout",c),e.removeEventListener("mouseover",c),e.removeEventListener("blur",f),e.removeEventListener("keyup",d),e.removeEventListener("keydown",d),e.removeEventListener("keypress",d),e!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",d),window.removeEventListener("keydown",d),window.removeEventListener("keypress",d)))},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),g};var n=r(74311)},48956:function(e){var t={left:0,top:0};e.exports=function(e,r,n){r=r||e.currentTarget||e.srcElement,Array.isArray(n)||(n=[0,0]);var i,a=e.clientX||0,o=e.clientY||0,s=(i=r)===window||i===document||i===document.body?t:i.getBoundingClientRect();return n[0]=a-s.left,n[1]=o-s.top,n}},74311:function(e,t){"use strict";function r(e){return e.target||e.srcElement||window}t.buttons=function(e){if("object"===typeof e){if("buttons"in e)return e.buttons;if("which"in e){if(2===(t=e.which))return 4;if(3===t)return 2;if(t>0)return 1<=0)return 1<0&&a(s,r))}catch(m){c.call(new d(r),m)}}}function c(e){var t=this;t.triggered||(t.triggered=!0,t.def&&(t=t.def),t.msg=e,t.state=2,t.chain.length>0&&a(s,t))}function f(e,t,r,n){for(var i=0;i1&&(i*=g=Math.sqrt(g),s*=g);var y=i*i,x=s*s,b=(u==c?-1:1)*Math.sqrt(Math.abs((y*x-y*m*m-x*v*v)/(y*m*m+x*v*v)));b==1/0&&(b=1);var _=b*i*m/s+(e+f)/2,w=b*-s*v/i+(n+d)/2,k=Math.asin(((n-w)/s).toFixed(9)),T=Math.asin(((d-w)/s).toFixed(9));(k=e<_?t-k:k)<0&&(k=2*t+k),(T=f<_?t-T:T)<0&&(T=2*t+T),c&&k>T&&(k-=2*t),!c&&T>k&&(T-=2*t)}if(Math.abs(T-k)>r){var M=T,A=f,S=d;T=k+r*(c&&T>k?1:-1);var E=a(f=_+i*Math.cos(T),d=w+s*Math.sin(T),i,s,l,0,c,A,S,[T,M,_,w])}var C=Math.tan((T-k)/4),L=4/3*i*C,P=4/3*s*C,O=[2*e-(e+L*Math.sin(k)),2*n-(n-P*Math.cos(k)),f+L*Math.sin(T),d-P*Math.cos(T),f,d];if(h)return O;E&&(O=O.concat(E));for(var I=0;I7&&(r.push(g.splice(0,7)),g.unshift("C"));break;case"S":var x=h,b=p;"C"!=t&&"S"!=t||(x+=x-o,b+=b-l),g=["C",x,b,g[1],g[2],g[3],g[4]];break;case"T":"Q"==t||"T"==t?(f=2*h-f,d=2*p-d):(f=h,d=p),g=i(h,p,f,d,g[1],g[2]);break;case"Q":f=g[1],d=g[2],g=i(h,p,g[1],g[2],g[3],g[4]);break;case"L":g=n(h,p,g[1],g[2]);break;case"H":g=n(h,p,g[1],p);break;case"V":g=n(h,p,h,g[1]);break;case"Z":g=n(h,p,u,c)}t=y,h=g[g.length-2],p=g[g.length-1],g.length>4?(o=g[g.length-4],l=g[g.length-3]):(o=h,l=p),r.push(g)}return r}},56131:function(e){"use strict";var t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(i){return!1}}()?Object.assign:function(e,i){for(var a,o,s=function(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l0&&!i.call(e,0))for(var v=0;v0)for(var m=0;m=0&&"[object Function]"===t.call(e.callee)),n}},88641:function(e){"use strict";function t(e,t){if("string"!==typeof e)return[e];var r=[e];"string"===typeof t||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach((function(e){var t=new RegExp(["\\",e[0],"[^\\",e[0],"\\",e[1],"]*\\",e[1]].join("")),n=[];function a(t,a,o){var s=r.push(t.slice(e[0].length,-e[1].length))-1;return n.push(s),i+s+i}r.forEach((function(e,n){for(var i,o=0;e!=i;)if(i=e,e=e.replace(t,a),o++>1e4)throw Error("References have circular dependency. Please, check them.");r[n]=e})),n=n.reverse(),r=r.map((function(t){return n.forEach((function(r){t=t.replace(new RegExp("(\\"+i+r+"\\"+i+")","g"),e[0]+"$1"+e[1])})),t}))}));var o=new RegExp("\\"+i+"([0-9]+)\\"+i);return a?r:function e(t,r,n){for(var i,a=[],s=0;i=o.exec(t);){if(s++>1e4)throw Error("Circular references in parenthesis");a.push(t.slice(0,i.index)),a.push(e(r[i[1]],r)),t=t.slice(i.index+i[0].length)}return a.push(t),a}(r[0],r)}function r(e,t){if(t&&t.flat){var r,n=t&&t.escape||"___",i=e[0];if(!i)return"";for(var a=new RegExp("\\"+n+"([0-9]+)\\"+n),o=0;i!=r;){if(o++>1e4)throw Error("Circular references in "+e);r=i,i=i.replace(a,s)}return i}return e.reduce((function e(t,r){return Array.isArray(r)&&(r=r.reduce(e,"")),t+r}),"");function s(t,r){if(null==e[r])throw Error("Reference "+r+"is undefined");return e[r]}}function n(e,n){return Array.isArray(e)?r(e,n):t(e,n)}n.parse=t,n.stringify=r,e.exports=n},18863:function(e,t,r){"use strict";var n=r(71299);e.exports=function(e){var t;return arguments.length>1&&(e=arguments),"string"===typeof e?e=e.split(/\s/).map(parseFloat):"number"===typeof e&&(e=[e]),e.length&&"number"===typeof e[0]?t=1===e.length?{width:e[0],height:e[0],x:0,y:0}:2===e.length?{width:e[0],height:e[1],x:0,y:0}:{x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(t={x:(e=n(e,{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:e.top||0},null==e.width?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,null==e.height?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}},95616:function(e){e.exports=function(e){var i=[];return e.replace(r,(function(e,r,a){var o=r.toLowerCase();for(a=function(e){var t=e.match(n);return t?t.map(Number):[]}(a),"m"==o&&a.length>2&&(i.push([r].concat(a.splice(0,2))),o="l",r="m"==r?"l":"L");;){if(a.length==t[o])return a.unshift(r),i.push(a);if(a.lengtha!==h>a&&i<(d-c)*(a-f)/(h-f)+c&&(o=!o)}return o}},52142:function(e,t,r){var n,i=r(69444),a=r(29023),o=r(87263),s=r(11328),l=r(55968),u=r(10670),c=!1,f=a();function d(e,t,r){var i=n.segments(e),a=n.segments(t),o=r(n.combine(i,a));return n.polygon(o)}n={buildLog:function(e){return!0===e?c=i():!1===e&&(c=!1),!1!==c&&c.list},epsilon:function(e){return f.epsilon(e)},segments:function(e){var t=o(!0,f,c);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){return{combined:o(!1,f,c).calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:l.union(e.combined,c),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:l.intersect(e.combined,c),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:l.difference(e.combined,c),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:l.differenceRev(e.combined,c),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:l.xor(e.combined,c),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:s(e.segments,f,c),inverted:e.inverted}},polygonFromGeoJSON:function(e){return u.toPolygon(n,e)},polygonToGeoJSON:function(e){return u.fromPolygon(n,f,e)},union:function(e,t){return d(e,t,n.selectUnion)},intersect:function(e,t){return d(e,t,n.selectIntersect)},difference:function(e,t){return d(e,t,n.selectDifference)},differenceRev:function(e,t){return d(e,t,n.selectDifferenceRev)},xor:function(e,t){return d(e,t,n.selectXor)}},"object"===typeof window&&(window.PolyBool=n),e.exports=n},69444:function(e){e.exports=function(){var e,t=0,r=!1;function n(t,r){return e.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(e,t){return n("check",{seg1:e,seg2:t})},segmentChop:function(e,t){return n("div_seg",{seg:e,pt:t}),n("chop",{seg:e,pt:t})},statusRemove:function(e){return n("pop_seg",{seg:e})},segmentUpdate:function(e){return n("seg_update",{seg:e})},segmentNew:function(e,t){return n("new_seg",{seg:e,primary:t})},segmentRemove:function(e){return n("rem_seg",{seg:e})},tempStatus:function(e,t,r){return n("temp_status",{seg:e,above:t,below:r})},rewind:function(e){return n("rewind",{seg:e})},status:function(e,t,r){return n("status",{seg:e,above:t,below:r})},vert:function(t){return t===r?e:(r=t,n("vert",{x:t}))},log:function(e){return"string"!==typeof e&&(e=JSON.stringify(e,!1," ")),n("log",{txt:e})},reset:function(){return n("reset")},selected:function(e){return n("selected",{segs:e})},chainStart:function(e){return n("chain_start",{seg:e})},chainRemoveHead:function(e,t){return n("chain_rem_head",{index:e,pt:t})},chainRemoveTail:function(e,t){return n("chain_rem_tail",{index:e,pt:t})},chainNew:function(e,t){return n("chain_new",{pt1:e,pt2:t})},chainMatch:function(e){return n("chain_match",{index:e})},chainClose:function(e){return n("chain_close",{index:e})},chainAddHead:function(e,t){return n("chain_add_head",{index:e,pt:t})},chainAddTail:function(e,t){return n("chain_add_tail",{index:e,pt:t})},chainConnect:function(e,t){return n("chain_con",{index1:e,index2:t})},chainReverse:function(e){return n("chain_rev",{index:e})},chainJoin:function(e,t){return n("chain_join",{index1:e,index2:t})},done:function(){return n("done")}}}},29023:function(e){e.exports=function(e){"number"!==typeof e&&(e=1e-10);var t={epsilon:function(t){return"number"===typeof t&&(e=t),e},pointAboveOrOnLine:function(t,r,n){var i=r[0],a=r[1],o=n[0],s=n[1],l=t[0];return(o-i)*(t[1]-a)-(s-a)*(l-i)>=-e},pointBetween:function(t,r,n){var i=t[1]-r[1],a=n[0]-r[0],o=t[0]-r[0],s=n[1]-r[1],l=o*a+i*s;return!(l-e)},pointsSameX:function(t,r){return Math.abs(t[0]-r[0])e!=o-i>e&&(a-u)*(i-c)/(o-c)+u-n>e&&(s=!s),a=u,o=c}return s}};return t}},10670:function(e){var t={toPolygon:function(e,t){function r(t){if(t.length<=0)return e.segments({inverted:!1,regions:[]});function r(t){var r=t.slice(0,t.length-1);return e.segments({inverted:!1,regions:[r]})}for(var n=r(t[0]),i=1;i0}))}function c(e,n){var i=e.seg,a=n.seg,o=i.start,s=i.end,u=a.start,c=a.end;r&&r.checkIntersection(i,a);var f=t.linesIntersect(o,s,u,c);if(!1===f){if(!t.pointsCollinear(o,s,u))return!1;if(t.pointsSame(o,c)||t.pointsSame(s,u))return!1;var d=t.pointsSame(o,u),h=t.pointsSame(s,c);if(d&&h)return n;var p=!d&&t.pointBetween(o,u,c),v=!h&&t.pointBetween(s,u,c);if(d)return v?l(n,s):l(e,c),n;p&&(h||(v?l(n,s):l(e,c)),l(n,o))}else 0===f.alongA&&(-1===f.alongB?l(e,u):0===f.alongB?l(e,f.pt):1===f.alongB&&l(e,c)),0===f.alongB&&(-1===f.alongA?l(n,o):0===f.alongA?l(n,f.pt):1===f.alongA&&l(n,s));return!1}for(var f=[],d=function(){if(h=a.getHead(),r&&r.vert(h.pt[0]),h.isStart){if(r&&r.segmentNew(h.seg,h.primary),p=u(h),v=p.before?p.before.ev:null,m=p.after?p.after.ev:null,r&&r.tempStatus(h.seg,!!v&&v.seg,!!m&&m.seg),(g=function(){if(v){var e=c(h,v);if(e)return e}return!!m&&c(h,m)}())&&(e?(y=null===h.seg.myFill.below||h.seg.myFill.above!==h.seg.myFill.below)&&(g.seg.myFill.above=!g.seg.myFill.above):g.seg.otherFill=h.seg.myFill,r&&r.segmentUpdate(g.seg),h.other.remove(),h.remove()),a.getHead()!==h)return r&&r.rewind(h.seg),"continue";e?(y=null===h.seg.myFill.below||h.seg.myFill.above!==h.seg.myFill.below,h.seg.myFill.below=m?m.seg.myFill.above:i,h.seg.myFill.above=y?!h.seg.myFill.below:h.seg.myFill.below):null===h.seg.otherFill&&(x=m?h.primary===m.primary?m.seg.otherFill.above:m.seg.myFill.above:h.primary?o:i,h.seg.otherFill={above:x,below:x}),r&&r.status(h.seg,!!v&&v.seg,!!m&&m.seg),h.other.status=p.insert(n.node({ev:h}))}else{if(null===(b=h.status))throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");s.exists(b.prev)&&s.exists(b.next)&&c(b.prev.ev,b.next.ev),r&&r.statusRemove(b.ev.seg),b.remove(),h.primary||(_=h.seg.myFill,h.seg.myFill=h.seg.otherFill,h.seg.otherFill=_),f.push(h.seg)}a.getHead().remove()};!a.isEmpty();){var h,p,v,m,g,y,x,b,_;d()}return r&&r.done(),f}return e?{addRegion:function(e){for(var n,i,a,o=e[e.length-1],l=0;l0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}},n.prototype.read_uint16=function(e){var r=this.input;if(e+2>r.length)throw t("unexpected EOF","EBADDATA");return this.big_endian?256*r[e]+r[e+1]:r[e]+256*r[e+1]},n.prototype.read_uint32=function(e){var r=this.input;if(e+4>r.length)throw t("unexpected EOF","EBADDATA");return this.big_endian?16777216*r[e]+65536*r[e+1]+256*r[e+2]+r[e+3]:r[e]+256*r[e+1]+65536*r[e+2]+16777216*r[e+3]},n.prototype.is_subifd_link=function(e,t){return 0===e&&34665===t||0===e&&34853===t||34665===e&&40965===t},n.prototype.exif_format_length=function(e){switch(e){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}},n.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t];case 6:return(r=this.input[t])|33554430*(128&r);case 3:return r=this.read_uint16(t);case 8:return(r=this.read_uint16(t))|131070*(32768&r);case 4:return r=this.read_uint32(t);case 9:return 0|(r=this.read_uint32(t));default:return null}},n.prototype.scan_ifd=function(e,n,i){var a=this.read_uint16(n);n+=2;for(var o=0;othis.input.length)throw t("unexpected EOF","EBADDATA");for(var p=[],v=d,m=0;m0&&(this.ifds_to_read.push({id:s,offset:p[0]}),h=!0),!1===i({is_big_endian:this.big_endian,ifd:e,tag:s,format:l,count:u,entry_offset:n+this.start,data_length:f,data_offset:d+this.start,value:p,is_subifd_link:h}))return void(this.aborted=!0);n+=12}0===e&&this.ifds_to_read.push({id:1,offset:this.read_uint32(n)})},e.exports.ExifParser=n,e.exports.get_orientation=function(e){var t=0;try{return new n(e,0,e.length).each((function(e){if(0===e.ifd&&274===e.tag&&Array.isArray(e.value))return t=e.value[0],!1})),t}catch(r){return-1}}},76767:function(e,t,r){"use strict";var n=r(14847).n8,i=r(14847).Ag;function a(e,t){if(e.length<4+t)return null;var r=i(e,t);return e.length>4&15,i=15&e[4],a=e[5]>>4&15,o=n(e,6),l=8,u=0;ut.width||e.width===t.width&&e.height>t.height?e:t})),r=e.reduce((function(e,t){return e.height>t.height||e.height===t.height&&e.width>t.width?e:t}));return t.width>r.height||t.width===r.height&&t.height>r.width?t:r}(t.sizes),n=1;t.transforms.forEach((function(e){var t={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},r={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if("imir"===e.type&&(n=0===e.value?r[n]:t[n=t[n=r[n]]]),"irot"===e.type)for(var i=0;i1&&(d.variants=f.variants),f.orientation&&(d.orientation=f.orientation),f.exif_location&&f.exif_location.offset+f.exif_location.length<=e.length){var h=a(e,f.exif_location.offset),p=e.slice(f.exif_location.offset+h+4,f.exif_location.offset+f.exif_location.length),v=s.get_orientation(p);v>0&&(d.orientation=v)}return d}}}}}}},2504:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).mP,o=n("BM");e.exports=function(e){if(!(e.length<26)&&i(e,0,o))return{width:a(e,18),height:a(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}},47342:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).mP,o=n("GIF87a"),s=n("GIF89a");e.exports=function(e){if(!(e.length<10)&&(i(e,0,o)||i(e,0,s)))return{width:a(e,6),height:a(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}},31355:function(e,t,r){"use strict";var n=r(14847).mP;e.exports=function(e){var t=n(e,0),r=n(e,2),i=n(e,4);if(0===t&&1===r&&i){for(var a=[],o={width:0,height:0},s=0;so.width||u>o.height)&&(o=c)}return{width:o.width,height:o.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}},54261:function(e,t,r){"use strict";var n=r(14847).n8,i=r(14847).eG,a=r(14847).OF,o=r(71371),s=i("Exif\0\0");e.exports=function(e){if(!(e.length<2)&&255===e[0]&&216===e[1]&&255===e[2])for(var t=2;;){for(;;){if(e.length-t<2)return;if(255===e[t++])break}for(var r,i,l=e[t++];255===l;)l=e[t++];if(208<=l&&l<=217||1===l)r=0;else{if(!(192<=l&&l<=254))return;if(e.length-t<2)return;r=n(e,t)-2,t+=2}if(217===l||218===l)return;if(225===l&&r>=10&&a(e,t,s)&&(i=o.get_orientation(e.slice(t+6,t+r))),r>=5&&192<=l&&l<=207&&196!==l&&200!==l&&204!==l){if(e.length-t0&&(u.orientation=i),u}t+=r}}},6303:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).Ag,o=n("\x89PNG\r\n\x1a\n"),s=n("IHDR");e.exports=function(e){if(!(e.length<24)&&i(e,0,o)&&i(e,12,s))return{width:a(e,16),height:a(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}},38689:function(e,t,r){"use strict";var n=r(14847).eG,i=r(14847).OF,a=r(14847).Ag,o=n("8BPS\0\x01");e.exports=function(e){if(!(e.length<22)&&i(e,0,o))return{width:a(e,18),height:a(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}},6881:function(e){"use strict";function t(e){return"number"===typeof e&&isFinite(e)&&e>0}var r=/<[-_.:a-zA-Z0-9][^>]*>/,n=/^<([-_.: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(e){return s.test(e)?e.match(s)[0]:"px"}e.exports=function(e){if(function(e){var t,r=0,n=e.length;for(239===e[0]&&187===e[1]&&191===e[2]&&(r=3);r>14&16383),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function d(e,t){return{width:1+(e[t+6]<<16|e[t+5]<<8|e[t+4]),height:1+(e[t+9]<e.length)){for(;t+8=10?r=r||c(e,t+8):"VP8L"===h&&p>=9?r=r||f(e,t+8):"VP8X"===h&&p>=10?r=r||d(e,t+8):"EXIF"===h&&(n=s.get_orientation(e.slice(t+8,t+8+p)),t=1/0),t+=8+p}else t++;if(r)return n>0&&(r.orientation=n),r}}}},91497:function(e,t,r){"use strict";e.exports={avif:r(24461),bmp:r(2504),gif:r(47342),ico:r(31355),jpeg:r(54261),png:r(6303),psd:r(38689),svg:r(6881),tiff:r(66278),webp:r(90784)}},33575:function(e,t,r){"use strict";var n=r(91497);e.exports=function(e){return function(e){for(var t=Object.keys(n),r=0;r1)for(var r=1;r1&&(e.scaleRatio=[e.scale[0]*e.viewport.width,e.scale[1]*e.viewport.height],r(e),e.after&&e.after(e))}function k(e){if(e){null!=e.length?"number"===typeof e[0]&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);var t=0,r=0;if(b.groups=x=e.map((function(e,u){var c=x[u];return e?("function"===typeof e?e={after:e}:"number"===typeof e[0]&&(e={positions:e}),e=o(e,{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"}),c||(x[u]=c={id:u,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},e=s({},y,e)),a(c,e,[{lineWidth:function(e){return.5*+e},capSize:function(e){return.5*+e},opacity:parseFloat,errors:function(e){return e=l(e),r+=e.length,e},positions:function(e,r){return e=l(e,"float64"),r.count=Math.floor(e.length/2),r.bounds=n(e,2),r.offset=t,t+=r.count,e}},{color:function(e,t){var r=t.count;if(e||(e="transparent"),!Array.isArray(e)||"number"===typeof e[0]){var n=e;e=Array(r);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:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},n))}catch(s){t=i}return{fill:e({primitive:"triangle",elements:function(e,t){return t.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:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:function(e,t){return[t.viewport.x,t.viewport.y,e.viewportWidth,e.viewportHeight]}},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:i,miter:t}},g.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},g.prototype.render=function(){for(var e,t=[],r=arguments.length;r--;)t[r]=arguments[r];t.length&&(e=this).update.apply(e,t),this.draw()},g.prototype.draw=function(){for(var e=this,t=[],r=arguments.length;r--;)t[r]=arguments[r];return(t.length?t:this.passes).forEach((function(t,r){var n;if(t&&Array.isArray(t))return(n=e).draw.apply(n,t);"number"===typeof t&&(t=e.passes[t]),t&&t.count>1&&t.opacity&&(e.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&e.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>g.precisionThreshold||t.scale[1]*t.viewport.height>g.precisionThreshold||"rect"===t.join||!t.join&&(t.thickness<=2||t.count>=g.maxPoints)?e.shaders.rect(t):e.shaders.miter(t)))})),this},g.prototype.update=function(e){var t=this;if(e){null!=e.length?"number"===typeof e[0]&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);var r=this.regl,o=this.gl;if(e.forEach((function(e,f){var p=t.passes[f];if(void 0!==e)if(null!==e){if("number"===typeof e[0]&&(e={positions:e}),e=s(e,{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||(t.passes[f]=p={id:f,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:r.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:r.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},e=a({},g.defaults,e)),null!=e.thickness&&(p.thickness=parseFloat(e.thickness)),null!=e.opacity&&(p.opacity=parseFloat(e.opacity)),null!=e.miterLimit&&(p.miterLimit=parseFloat(e.miterLimit)),null!=e.overlay&&(p.overlay=!!e.overlay,f=R}));(O=O.slice(0,z)).push(R)}for(var F=function(e){var t=T.slice(2*D,2*O[e]).concat(R?T.slice(2*R):[]),r=(p.hole||[]).map((function(t){return t-R+(O[e]-D)})),n=u(t,r);n=n.map((function(t){return t+D+(t+De.length)&&(t=e.length);for(var r=0,n=new Array(t);r 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"]),u.vert=d(["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"]),m&&(u.frag=u.frag.replace("smoothstep","smoothStep"),l.frag=l.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(u)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;nn)?t.tree=c(e,{bounds:f}):n&&n.length&&(t.tree=n),t.tree){var d={primitive:"points",usage:"static",data:t.tree,type:"uint32"};t.elements?t.elements(d):t.elements=o.elements(d)}var h=g.float32(e);return i({data:h,usage:"dynamic"}),a({data:g.fract32(e,h),usage:"dynamic"}),s({data:new Uint8Array(u),type:"uint8",usage:"stream"}),e}},{marker:function(t,r,n){var i=r.activation;if(i.forEach((function(e){return e&&e.destroy&&e.destroy()})),i.length=0,t&&"number"!==typeof t[0]){for(var a=[],s=0,l=Math.min(t.length,r.count);s=0)return a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)t=e;else{t=new Uint8Array(e.length);for(var o=0,s=e.length;o4*n&&(this.tooManyColors=!0),this.updatePalette(r),1===i.length?i[0]:i},b.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(.25*e.length/t);if(n>1)for(var i=.25*(e=e.slice()).length%t;i2?(s[0],s[2],n=s[1],i=s[3]):s.length?(n=s[0],i=s[1]):(s.x,n=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,n,o,i]}function h(e){if("number"===typeof e)return[e,e,e,e];if(2===e.length)return[e[0],e[1],e[0],e[1]];var t=l(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}e.exports=c,c.prototype.render=function(){for(var e,t=this,r=[],n=arguments.length;n--;)r[n]=arguments[n];return r.length&&(e=this).update.apply(e,r),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){t.draw(),t.dirty=!0,t.planned=null}))):(this.draw(),this.dirty=!0,o((function(){t.dirty=!1}))),this)},c.prototype.update=function(){for(var e,t=[],r=arguments.length;r--;)t[r]=arguments[r];if(t.length){for(var n=0;nT))&&(s.lower||!(k>>=t))<<3,(t|=r=(15<(e>>>=r))<<2)|(r=(3<(e>>>=r))<<1)|e>>>r>>1}function h(){function e(e){e:{for(var t=16;268435456>=t;t*=16)if(e<=t){e=t;break e}e=0}return 0<(t=r[d(e)>>2]).length?t.pop():new ArrayBuffer(e)}function t(e){r[d(e.byteLength)>>2].push(e)}var r=f(8,(function(){return[]}));return{alloc:e,free:t,allocType:function(t,r){var n=null;switch(t){case 5120:n=new Int8Array(e(r),0,r);break;case 5121:n=new Uint8Array(e(r),0,r);break;case 5122:n=new Int16Array(e(2*r),0,r);break;case 5123:n=new Uint16Array(e(2*r),0,r);break;case 5124:n=new Int32Array(e(4*r),0,r);break;case 5125:n=new Uint32Array(e(4*r),0,r);break;case 5126:n=new Float32Array(e(4*r),0,r);break;default:return null}return n.length!==r?n.subarray(0,r):n},freeType:function(e){t(e.buffer)}}}function p(e){return!!e&&"object"===typeof e&&Array.isArray(e.shape)&&Array.isArray(e.stride)&&"number"===typeof e.offset&&e.shape.length===e.stride.length&&(Array.isArray(e.data)||oe(e.data))}function v(e,t,r,n,i,a){for(var o=0;o(i=s)&&(i=n.buffer.byteLength,5123===c?i>>=1:5125===c&&(i>>=2)),n.vertCount=i,i=o,0>o&&(i=4,1===(o=n.buffer.dimension)&&(i=0),2===o&&(i=1),3===o&&(i=4)),n.primType=i}function o(e){n.elementsCount--,delete s[e.id],e.buffer.destroy(),e.buffer=null}var s={},l=0,u={uint8:5121,uint16:5123};t.oes_element_index_uint&&(u.uint32=5125),i.prototype.bind=function(){this.buffer.bind()};var c=[];return{create:function(e,t){function s(e){if(e)if("number"===typeof e)l(e),c.primType=4,c.vertCount=0|e,c.type=5121;else{var t=null,r=35044,n=-1,i=-1,o=0,f=0;Array.isArray(e)||oe(e)||p(e)?t=e:("data"in e&&(t=e.data),"usage"in e&&(r=fe[e.usage]),"primitive"in e&&(n=ve[e.primitive]),"count"in e&&(i=0|e.count),"type"in e&&(f=u[e.type]),"length"in e?o=0|e.length:(o=i,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),a(c,t,r,n,i,o,f)}else l(),c.primType=4,c.vertCount=0,c.type=5121;return s}var l=r.create(null,34963,!0),c=new i(l._buffer);return n.elementsCount++,s(e),s._reglType="elements",s._elements=c,s.subdata=function(e,t){return l.subdata(e,t),s},s.destroy=function(){o(c)},s},createStream:function(e){var t=c.pop();return t||(t=new i(r.create(null,34963,!0,!1)._buffer)),a(t,e,35040,-1,-1,0,0),t},destroyStream:function(e){c.push(e)},getElements:function(e){return"function"===typeof e&&e._elements instanceof i?e._elements:null},clear:function(){se(s).forEach(o)}}}function w(e){for(var t=ie.allocType(5123,e.length),r=0;r>>31<<15,i=(a<<1>>>24)-127,a=a>>13&1023;t[r]=-24>i?n:-14>i?n+(a+1024>>-14-i):15>=i,r.height>>=i,d(r,n[i]),e.mipmask|=1<t;++t)e.images[t]=null;return e}function T(e){for(var t=e.images,r=0;rt){for(var r=0;r=--this.refCount&&F(this)}}),o.profile&&(a.getTotalTextureSize=function(){var e=0;return Object.keys(ae).forEach((function(t){e+=ae[t].stats.size})),e}),{create2D:function(t,r){function n(e,t){var r=i.texInfo;P.call(r);var a=_();return"number"===typeof e?y(a,0|e,"number"===typeof t?0|t:0|e):e?(O(r,e),x(a,e)):y(a,1,1),r.genMipmaps&&(a.mipmask=(a.width<<1)-1),i.mipmask=a.mipmask,l(i,a),i.internalformat=a.internalformat,n.width=a.width,n.height=a.height,R(i),b(a,3553),I(r,3553),z(),T(a),o.profile&&(i.stats.size=L(i.internalformat,i.type,a.width,a.height,r.genMipmaps,!1)),n.format=Z[i.internalformat],n.type=X[i.type],n.mag=K[r.magFilter],n.min=$[r.minFilter],n.wrapS=J[r.wrapS],n.wrapT=J[r.wrapT],n}var i=new D(3553);return ae[i.id]=i,a.textureCount++,n(t,r),n.subimage=function(e,t,r,a){t|=0,r|=0,a|=0;var o=v();return l(o,i),o.width=0,o.height=0,d(o,e),o.width=o.width||(i.width>>a)-t,o.height=o.height||(i.height>>a)-r,R(i),h(o,3553,t,r,a),z(),m(o),n},n.resize=function(t,r){var a=0|t,s=0|r||a;if(a===i.width&&s===i.height)return n;n.width=i.width=a,n.height=i.height=s,R(i);for(var l=0;i.mipmask>>l;++l){var u=a>>l,c=s>>l;if(!u||!c)break;e.texImage2D(3553,l,i.format,u,c,0,i.format,i.type,null)}return z(),o.profile&&(i.stats.size=L(i.internalformat,i.type,a,s,!1,!1)),n},n._reglType="texture2d",n._texture=i,o.profile&&(n.stats=i.stats),n.destroy=function(){i.decRef()},n},createCube:function(t,r,n,i,s,c){function f(e,t,r,n,i,a){var s,c=p.texInfo;for(P.call(c),s=0;6>s;++s)g[s]=_();if("number"!==typeof e&&e){if("object"===typeof e)if(t)x(g[0],e),x(g[1],t),x(g[2],r),x(g[3],n),x(g[4],i),x(g[5],a);else if(O(c,e),u(p,e),"faces"in e)for(e=e.faces,s=0;6>s;++s)l(g[s],p),x(g[s],e[s]);else for(s=0;6>s;++s)x(g[s],e)}else for(e=0|e||1,s=0;6>s;++s)y(g[s],e,e);for(l(p,g[0]),p.mipmask=c.genMipmaps?(g[0].width<<1)-1:g[0].mipmask,p.internalformat=g[0].internalformat,f.width=g[0].width,f.height=g[0].height,R(p),s=0;6>s;++s)b(g[s],34069+s);for(I(c,34067),z(),o.profile&&(p.stats.size=L(p.internalformat,p.type,f.width,f.height,c.genMipmaps,!0)),f.format=Z[p.internalformat],f.type=X[p.type],f.mag=K[c.magFilter],f.min=$[c.minFilter],f.wrapS=J[c.wrapS],f.wrapT=J[c.wrapT],s=0;6>s;++s)T(g[s]);return f}var p=new D(34067);ae[p.id]=p,a.cubeCount++;var g=Array(6);return f(t,r,n,i,s,c),f.subimage=function(e,t,r,n,i){r|=0,n|=0,i|=0;var a=v();return l(a,p),a.width=0,a.height=0,d(a,t),a.width=a.width||(p.width>>i)-r,a.height=a.height||(p.height>>i)-n,R(p),h(a,34069+e,r,n,i),z(),m(a),f},f.resize=function(t){if((t|=0)!==p.width){f.width=p.width=t,f.height=p.height=t,R(p);for(var r=0;6>r;++r)for(var n=0;p.mipmask>>n;++n)e.texImage2D(34069+r,n,p.format,t>>n,t>>n,0,p.format,p.type,null);return z(),o.profile&&(p.stats.size=L(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 t=0;tr;++r)if(0!==(t.mipmask&1<>r,t.height>>r,0,t.internalformat,t.type,null);else for(var n=0;6>n;++n)e.texImage2D(34069+n,r,t.internalformat,t.width>>r,t.height>>r,0,t.internalformat,t.type,null);I(t.texInfo,t.target)}))},refresh:function(){for(var t=0;ti;++i){for(u=0;ue;++e)r[e].resize(n);return t.width=t.height=n,t},_reglType:"framebufferCube",destroy:function(){r.forEach((function(e){e.destroy()}))}})},clear:function(){se(T).forEach(m)},restore:function(){x.cur=null,x.next=null,x.dirty=!0,se(T).forEach((function(t){t.framebuffer=e.createFramebuffer(),g(t)}))}})}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(e,t,r,n,i,a,o){function s(e){if(e!==g.currentVAO){var r=t.oes_vertex_array_object;e?r.bindVertexArrayOES(e.vao):r.bindVertexArrayOES(null),g.currentVAO=e}}function l(r){if(r!==g.currentVAO){if(r)r.bindAttrs();else{for(var n=t.angle_instanced_arrays,i=0;i=f.byteLength?l.subdata(f):(l.destroy(),r.buffers[s]=null)),r.buffers[s]||(l=r.buffers[s]=i.create(u,34962,!1,!0)),c.buffer=i.getBuffer(l),c.size=0|c.buffer.dimension,c.normalized=!1,c.type=c.buffer.dtype,c.offset=0,c.stride=0,c.divisor=0,c.state=1,e[s]=1):i.getBuffer(u)?(c.buffer=i.getBuffer(u),c.size=0|c.buffer.dimension,c.normalized=!1,c.type=c.buffer.dtype,c.offset=0,c.stride=0,c.divisor=0,c.state=1):i.getBuffer(u.buffer)?(c.buffer=i.getBuffer(u.buffer),c.size=0|(+u.size||c.buffer.dimension),c.normalized=!!u.normalized||!1,c.type="type"in u?ce[u.type]:c.buffer.dtype,c.offset=0|(u.offset||0),c.stride=0|(u.stride||0),c.divisor=0|(u.divisor||0),c.state=1):"x"in u&&(c.x=+u.x||0,c.y=+u.y||0,c.z=+u.z||0,c.w=+u.w||0,c.state=2)}for(l=0;le&&(e=t.stats.uniformsCount)})),e},r.getMaxAttributesCount=function(){var e=0;return d.forEach((function(t){t.stats.attributesCount>e&&(e=t.stats.attributesCount)})),e}),{clear:function(){var t=e.deleteShader.bind(e);se(u).forEach(t),u={},se(c).forEach(t),c={},d.forEach((function(t){e.deleteProgram(t.program)})),d.length=0,f={},r.shaderCount=0},program:function(t,n,i,a){var o=f[n];o||(o=f[n]={});var h=o[t];if(h&&(h.refCount++,!a))return h;var p=new s(n,t);return r.shaderCount++,l(p,i,a),h||(o[t]=p),d.push(p),Q(p,{destroy:function(){if(p.refCount--,0>=p.refCount){e.deleteProgram(p.program);var t=d.indexOf(p);d.splice(t,1),r.shaderCount--}0>=o[p.vertId].refCount&&(e.deleteShader(c[p.vertId]),delete c[p.vertId],delete f[p.fragId][p.vertId]),Object.keys(f[p.fragId]).length||(e.deleteShader(u[p.fragId]),delete u[p.fragId],delete f[p.fragId])}})},restore:function(){u={},c={};for(var e=0;e>2),r=0;r>5]|=(255&e.charCodeAt(r/8))<<24-r%32;var n,i,a,o,s,l,u,c,f,d,h,p=8*e.length;for(e=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],r=Array(64),t[p>>5]|=128<<24-p%32,t[15+(p+64>>9<<4)]=p,c=0;cf;f++){var v;16>f?r[f]=t[f+c]:(d=f,h=U(h=j(h=r[f-2],17)^j(h,19)^h>>>10,r[f-7]),v=j(v=r[f-15],7)^j(v,18)^v>>>3,r[d]=U(U(h,v),r[f-16])),d=U(U(U(U(u,d=j(d=o,6)^j(d,11)^j(d,25)),o&s^~o&l),De[f]),r[f]),h=U(u=j(u=p,2)^j(u,13)^j(u,22),p&n^p&i^n&i),u=l,l=s,s=o,o=U(a,d),a=i,i=n,n=p,p=U(d,h)}e[0]=U(p,e[0]),e[1]=U(n,e[1]),e[2]=U(i,e[2]),e[3]=U(a,e[3]),e[4]=U(o,e[4]),e[5]=U(s,e[5]),e[6]=U(l,e[6]),e[7]=U(u,e[7])}for(t="",r=0;r<32*e.length;r+=8)t+=String.fromCharCode(e[r>>5]>>>24-r%32&255);return t}function N(e){for(var t,r="",n=0;n>>4&15)+"0123456789abcdef".charAt(15&t);return r}function B(e){for(var t,r,n="",i=-1;++i=t&&56320<=r&&57343>=r&&(t=65536+((1023&t)<<10)+(1023&r),i++),127>=t?n+=String.fromCharCode(t):2047>=t?n+=String.fromCharCode(192|t>>>6&31,128|63&t):65535>=t?n+=String.fromCharCode(224|t>>>12&15,128|t>>>6&63,128|63&t):2097151>=t&&(n+=String.fromCharCode(240|t>>>18&7,128|t>>>12&63,128|t>>>6&63,128|63&t));return n}function j(e,t){return e>>>t|e<<32-t}function U(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function V(e){return Array.prototype.slice.call(e)}function H(e){return V(e).join("")}function q(e){function t(){var e=[],t=[];return Q((function(){e.push.apply(e,V(arguments))}),{def:function(){var r="v"+i++;return t.push(r),0"+t+"?"+i+".constant["+t+"]:0;"})).join(""),"}}else{","if(",s,"(",i,".buffer)){",c,"=",a,".createStream(",34962,",",i,".buffer);","}else{",c,"=",a,".getBuffer(",i,".buffer);","}",f,'="type" in ',i,"?",o.glTypes,"[",i,".type]:",c,".dtype;",l.normalized,"=!!",i,".normalized;"),n("size"),n("offset"),n("stride"),n("divisor"),r("}}"),r.exit("if(",l.isStream,"){",a,".destroyStream(",c,");","}"),l}))})),o}function P(e){var t=e.static,r=e.dynamic,n={};return Object.keys(t).forEach((function(e){var r=t[e];n[e]=X((function(e,t){return"number"===typeof r||"boolean"===typeof r?""+r:e.link(r)}))})),Object.keys(r).forEach((function(e){var t=r[e];n[e]=K(t,(function(e,r){return e.invoke(r,t)}))})),n}function O(e,t,n,i,a){function o(e){var t=l[e];t&&(f[e]=t)}var s=M(e,t),l=T(e,h=w(e,a),a),c=S(e,a),f=E(e,a),d=A(e,a,s);o("viewport"),o(g("scissor.box"));var h,p=0>1)",s],");")}function t(){r(l,".drawArraysInstancedANGLE(",[p,v,m,s],");")}h&&"null"!==h?y?e():(r("if(",h,"){"),e(),r("}else{"),t(),r("}")):t()}function o(){function e(){r(c+".drawElements("+[p,m,g,v+"<<(("+g+"-5121)>>1)"]+");")}function t(){r(c+".drawArrays("+[p,v,m]+");")}h&&"null"!==h?y?e():(r("if(",h,"){"),e(),r("}else{"),t(),r("}")):t()}var s,l,u=e.shared,c=u.gl,f=u.draw,d=n.draw,h=function(){var i=d.elements,a=t;return i?((i.contextDep&&n.contextDynamic||i.propDep)&&(a=r),i=i.append(e,a),d.elementsActive&&a("if("+i+")"+c+".bindBuffer(34963,"+i+".buffer.buffer);")):(i=a.def(),a(i,"=",f,".","elements",";","if(",i,"){",c,".bindBuffer(",34963,",",i,".buffer.buffer);}","else if(",u.vao,".currentVAO){",i,"=",e.shared.elements+".getElements("+u.vao,".currentVAO.elements);",fe?"":"if("+i+")"+c+".bindBuffer(34963,"+i+".buffer.buffer);","}")),i}(),p=i("primitive"),v=i("offset"),m=function(){var i=d.count,a=t;return i?((i.contextDep&&n.contextDynamic||i.propDep)&&(a=r),i=i.append(e,a)):i=a.def(f,".","count"),i}();if("number"===typeof m){if(0===m)return}else r("if(",m,"){"),r.exit("}");le&&(s=i("instances"),l=e.instancing);var g=h+".type",y=d.elements&&Z(d.elements)&&!d.vaoActive;le&&("number"!==typeof s||0<=s)?"string"===typeof s?(r("if(",s,">0){"),a(),r("}else if(",s,"<0){"),o(),r("}")):a():o()}function V(e,t,r,n,i){return i=(t=b()).proc("body",i),le&&(t.instancing=i.def(t.shared.extensions,".angle_instanced_arrays")),e(t,i,r,n),t.compile().body}function H(e,t,r,n){F(e,t),r.useVAO?r.drawVAO?t(e.shared.vao,".setVAO(",r.drawVAO.append(e,t),");"):t(e.shared.vao,".setVAO(",e.shared.vao,".targetVAO);"):(t(e.shared.vao,".setVAO(null);"),B(e,t,r,n.attributes,(function(){return!0}))),j(e,t,r,n.uniforms,(function(){return!0}),!1),U(e,t,t,r)}function $(e,t){var r=e.proc("draw",1);F(e,r),I(e,r,t.context),D(e,r,t.framebuffer),R(e,r,t),z(e,r,t.state),N(e,r,t,!1,!0);var n=t.shader.progVar.append(e,r);if(r(e.shared.gl,".useProgram(",n,".program);"),t.shader.program)H(e,r,t,t.shader.program);else{r(e.shared.vao,".setVAO(null);");var i=e.global.def("{}"),a=r.def(n,".id"),o=r.def(i,"[",a,"]");r(e.cond(o).then(o,".call(this,a0);").else(o,"=",i,"[",a,"]=",e.link((function(r){return V(H,e,t,r,1)})),"(",n,");",o,".call(this,a0);"))}0=--this.refCount&&o(this)},i.profile&&(n.getTotalRenderbufferSize=function(){var e=0;return Object.keys(c).forEach((function(t){e+=c[t].stats.size})),e}),{create:function(t,r){function o(t,r){var n=0,a=0,c=32854;if("object"===typeof t&&t?("shape"in t?(n=0|(a=t.shape)[0],a=0|a[1]):("radius"in t&&(n=a=0|t.radius),"width"in t&&(n=0|t.width),"height"in t&&(a=0|t.height)),"format"in t&&(c=s[t.format])):"number"===typeof t?(n=0|t,a="number"===typeof r?0|r:n):t||(n=a=1),n!==u.width||a!==u.height||c!==u.format)return o.width=u.width=n,o.height=u.height=a,u.format=c,e.bindRenderbuffer(36161,u.renderbuffer),e.renderbufferStorage(36161,c,n,a),i.profile&&(u.stats.size=Le[u.format]*u.width*u.height),o.format=l[u.format],o}var u=new a(e.createRenderbuffer());return c[u.id]=u,n.renderbufferCount++,o(t,r),o.resize=function(t,r){var n=0|t,a=0|r||n;return n===u.width&&a===u.height||(o.width=u.width=n,o.height=u.height=a,e.bindRenderbuffer(36161,u.renderbuffer),e.renderbufferStorage(36161,u.format,n,a),i.profile&&(u.stats.size=Le[u.format]*u.width*u.height)),o},o._reglType="renderbuffer",o._renderbuffer=u,i.profile&&(o.stats=u.stats),o.destroy=function(){u.decRef()},o},clear:function(){se(c).forEach(o)},restore:function(){se(c).forEach((function(t){t.renderbuffer=e.createRenderbuffer(),e.bindRenderbuffer(36161,t.renderbuffer),e.renderbufferStorage(36161,t.format,t.width,t.height)})),e.bindRenderbuffer(36161,null)}}},Oe=[];Oe[6408]=4,Oe[6407]=3;var Ie=[];Ie[5121]=1,Ie[5126]=4,Ie[36193]=2;var De=[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],Re=["x","y","z","w"],ze="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),Fe={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},Ne={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},Be={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},je={cw:2304,ccw:2305},Ue=new Y(!1,!1,!1,(function(){})),Ve=function(e,t){function r(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function n(e,t,n){var i=o.pop()||new r;i.startQueryIndex=e,i.endQueryIndex=t,i.sum=0,i.stats=n,s.push(i)}if(!t.ext_disjoint_timer_query)return null;var i=[],a=[],o=[],s=[],l=[],u=[];return{beginQuery:function(e){var r=i.pop()||t.ext_disjoint_timer_query.createQueryEXT();t.ext_disjoint_timer_query.beginQueryEXT(35007,r),a.push(r),n(a.length-1,a.length,e)},endQuery:function(){t.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:n,update:function(){var e,r;if(0!==(e=a.length)){u.length=Math.max(u.length,e+1),l.length=Math.max(l.length,e+1),l[0]=0;var n=u[0]=0;for(r=e=0;r=G.length&&n()}var r=J(G,e);G[r]=t}}}function d(){var e=q.viewport,t=q.scissor_box;e[0]=e[1]=t[0]=t[1]=0,C.viewportWidth=C.framebufferWidth=C.drawingBufferWidth=e[2]=t[2]=m.drawingBufferWidth,C.viewportHeight=C.framebufferHeight=C.drawingBufferHeight=e[3]=t[3]=m.drawingBufferHeight}function h(){C.tick+=1,C.time=v(),d(),H.procs.poll()}function p(){j.refresh(),d(),H.procs.refresh(),M&&M.update()}function v(){return(ne()-A)/1e3}if(!(e=u(e)))return null;var m=e.gl,g=m.getContextAttributes();m.isContextLost();var y=c(m,e);if(!y)return null;var x=i(),w={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},k=e.cachedCode||{},T=y.extensions,M=Ve(m,T),A=ne(),S=m.drawingBufferWidth,E=m.drawingBufferHeight,C={tick:0,time:0,viewportWidth:S,viewportHeight:E,framebufferWidth:S,framebufferHeight:E,drawingBufferWidth:S,drawingBufferHeight:E,pixelRatio:e.pixelRatio},L=(S={elements:null,primitive:4,count:-1,offset:0,instances:-1},ae(m,T)),I=b(m,w,e,(function(e){return N.destroyBuffer(e)})),F=_(m,T,I,w),N=D(m,T,L,w,I,F,S),B=R(m,x,w,e),j=P(m,T,L,(function(){H.procs.poll()}),C,w,e),U=Pe(m,T,L,w,e),V=O(m,T,L,j,U,w),H=$(m,x,T,L,I,F,j,V,{},N,B,S,C,M,k,e),q=(x=z(m,V,H.procs.poll,C,g,T,L),H.next),W=m.canvas,G=[],Y=[],Z=[],X=[e.onDestroy],K=null;W&&(W.addEventListener("webglcontextlost",a,!1),W.addEventListener("webglcontextrestored",o,!1));var ee=V.setFBO=s({framebuffer:te.define.call(null,1,"framebuffer")});return p(),g=Q(s,{clear:function(e){if("framebuffer"in e)if(e.framebuffer&&"framebufferCube"===e.framebuffer_reglType)for(var t=0;6>t;++t)ee(Q({framebuffer:e.framebuffer.faces[t]},e),l);else ee(e,l);else l(null,e)},prop:te.define.bind(null,1),context:te.define.bind(null,2),this:te.define.bind(null,3),draw:s({}),buffer:function(e){return I.create(e,34962,!1,!1)},elements:function(e){return F.create(e,!1)},texture:j.create2D,cube:j.createCube,renderbuffer:U.create,framebuffer:V.create,framebufferCube:V.createCube,vao:N.createVAO,attributes:g,frame:f,on:function(e,t){var r;switch(e){case"frame":return f(t);case"lost":r=Y;break;case"restore":r=Z;break;case"destroy":r=X}return r.push(t),{cancel:function(){for(var e=0;e2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,a,o,s;if("string"===typeof t&&(a="not ",t.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var l=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s='The "'.concat(e,'" ').concat(l," ").concat(i," ").concat(n(t,"type"))}return s+=". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},37865:function(e,t,r){"use strict";var n=r(90386),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=c;var a=r(40410),o=r(37493);r(42018)(c,a);for(var s=i(o.prototype),l=0;l0)if("string"===typeof t||s.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),n)s.endEmitted?w(e,new _):S(e,s,t,!0);else if(s.ended)w(e,new x);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(t=s.decoder.write(t),s.objectMode||0!==t.length?S(e,s,t,!1):O(e,s)):S(e,s,t,!1)}else n||(s.reading=!1,O(e,s));return!s.ended&&(s.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=E?e=E:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function L(e){var t=e._readableState;a("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(a("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(P,e))}function P(e){var t=e._readableState;a("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,F(e)}function O(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function R(e){a("readable nexttick read 0"),e.read(0)}function z(e,t){a("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),F(e),t.flowing&&!t.reading&&e.read(0)}function F(e){var t=e._readableState;for(a("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function B(e){var t=e._readableState;a("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(j,t,e))}function j(e,t){if(a("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function U(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return a("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):L(this),null;if(0===(e=C(e,t))&&t.ended)return 0===t.length&&B(this),null;var n,i=t.needReadable;return a("need readable",i),(0===t.length||t.length-e0?N(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&B(this)),null!==n&&this.emit("data",n),n},M.prototype._read=function(e){w(this,new b("_read()"))},M.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,a("pipe count=%d opts=%j",n.pipesCount,t);var s=t&&!1===t.end||e===i.stdout||e===i.stderr?m:u;function l(t,i){a("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,a("cleanup"),e.removeListener("close",p),e.removeListener("finish",v),e.removeListener("drain",c),e.removeListener("error",h),e.removeListener("unpipe",l),r.removeListener("end",u),r.removeListener("end",m),r.removeListener("data",d),f=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||c())}function u(){a("onend"),e.end()}n.endEmitted?i.nextTick(s):r.once("end",s),e.on("unpipe",l);var c=function(e){return function(){var t=e._readableState;a("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,F(e))}}(r);e.on("drain",c);var f=!1;function d(t){a("ondata");var i=e.write(t);a("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==U(n.pipes,e))&&!f&&(a("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(t){a("onerror",t),m(),e.removeListener("error",h),0===o(e,"error")&&w(e,t)}function p(){e.removeListener("finish",v),m()}function v(){a("onfinish"),e.removeListener("close",p),m()}function m(){a("unpipe"),r.unpipe(e)}return r.on("data",d),function(e,t,r){if("function"===typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",h),e.once("close",p),e.once("finish",v),e.emit("pipe",r),n.flowing||(a("pipe resume"),r.resume()),e},M.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,a("on readable",n.length,n.reading),n.length?L(this):n.reading||i.nextTick(R,this))),r},M.prototype.addListener=M.prototype.on,M.prototype.removeListener=function(e,t){var r=s.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(D,this),r},M.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(D,this),t},M.prototype.resume=function(){var e=this._readableState;return e.flowing||(a("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(z,e,t))}(this,e)),e.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(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(a("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){a("wrapped data"),r.decoder&&(i=r.decoder.write(i)),(!r.objectMode||null!==i&&void 0!==i)&&(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"===typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o-1))throw new _(e);return this._writableState.defaultEncoding=e,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(e,t,r){r(new v("_write()"))},M.prototype._writev=null,M.prototype.end=function(e,t,r){var n=this._writableState;return"function"===typeof e?(r=e,e=null,t=null):"function"===typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,P(e,t),r&&(t.finished?i.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}(this,n,r),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(e){this._writableState&&(this._writableState.destroyed=e)}}),M.prototype.destroy=f.destroy,M.prototype._undestroy=f.undestroy,M.prototype._destroy=function(e,t){t(e)}},68221:function(e,t,r){"use strict";var n,i=r(90386);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o=r(12726),s=Symbol("lastResolve"),l=Symbol("lastReject"),u=Symbol("error"),c=Symbol("ended"),f=Symbol("lastPromise"),d=Symbol("handlePromise"),h=Symbol("stream");function p(e,t){return{value:e,done:t}}function v(e){var t=e[s];if(null!==t){var r=e[h].read();null!==r&&(e[f]=null,e[s]=null,e[l]=null,t(p(r,!1)))}}function m(e){i.nextTick(v,e)}var g=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((a(n={get stream(){return this[h]},next:function(){var e=this,t=this[u];if(null!==t)return Promise.reject(t);if(this[c])return Promise.resolve(p(void 0,!0));if(this[h].destroyed)return new Promise((function(t,r){i.nextTick((function(){e[u]?r(e[u]):t(p(void 0,!0))}))}));var r,n=this[f];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[c]?r(p(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var a=this[h].read();if(null!==a)return Promise.resolve(p(a,!1));r=new Promise(this[d])}return this[f]=r,r}},Symbol.asyncIterator,(function(){return this})),a(n,"return",(function(){var e=this;return new Promise((function(t,r){e[h].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),g);e.exports=function(e){var t,r=Object.create(y,(a(t={},h,{value:e,writable:!0}),a(t,s,{value:null,writable:!0}),a(t,l,{value:null,writable:!0}),a(t,u,{value:null,writable:!0}),a(t,c,{value:e._readableState.endEmitted,writable:!0}),a(t,d,{value:function(e,t){var n=r[h].read();n?(r[f]=null,r[s]=null,r[l]=null,e(p(n,!1))):(r[s]=e,r[l]=t)},writable:!0}),t));return r[f]=null,o(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[l];return null!==t&&(r[f]=null,r[s]=null,r[l]=null,t(e)),void(r[u]=e)}var n=r[s];null!==n&&(r[f]=null,r[s]=null,r[l]=null,n(p(void 0,!0))),r[c]=!0})),e.on("readable",m.bind(null,r)),r}},31125:function(e,t,r){"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){for(var r=0;r0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return o.alloc(0);for(var t,r,n,i=o.allocUnsafe(e>>>0),a=this.head,s=0;a;)t=a.data,r=i,n=s,o.prototype.copy.call(t,r,n),s+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0===(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=o.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0===(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:l,value:function(e,t){return s(this,function(e){for(var t=1;t0,(function(e){c||(c=e),e&&d.forEach(l),a||(d.forEach(l),f(c))}))}));return t.reduce(u)}},56306:function(e,t,r){"use strict";var n=r(74322).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},71405:function(e,t,r){e.exports=r(15398).EventEmitter},68019:function(e,t,r){"use strict";var n=r(71665).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.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(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){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 e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!==typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=l,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=c,this.end=f,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function c(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.s=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},90715:function(e,t,r){var n=r(32791),i=r(41633)("stream-parser");e.exports=function(e){var t=e&&"function"==typeof e._transform,r=e&&"function"==typeof e._write;if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");i("extending Parser into stream"),e._bytes=c,e._skipBytes=f,t&&(e._passthrough=d),t?e._transform=p:e._write=h};var a=-1,o=0,s=1,l=2;function u(e){i("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=a,e._parserCallback=null,"function"==typeof e.push&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function c(e,t){n(!this._parserCallback,'there is already a "callback" set!'),n(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||u(this),i("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=o}function f(e,t){n(!this._parserCallback,'there is already a "callback" set!'),n(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||u(this),i("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=s}function d(e,t){n(!this._parserCallback,'There is already a "callback" set!'),n(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||u(this),i("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=l}function h(e,t,r){this._parserInit||u(this),i("write(%o bytes)",e.length),"function"==typeof t&&(r=t),m(this,e,null,r)}function p(e,t,r){this._parserInit||u(this),i("transform(%o bytes)",e.length),"function"!=typeof t&&(t=this._parserOutput),m(this,e,t,r)}function v(e,t,r,n){if(e._parserBytesLeft-=t.length,i("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===o?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===l&&r(t),0!==e._parserBytesLeft)return n;var s=e._parserCallback;if(s&&e._parserState===o&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==o&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=a,e._parserBuffers.splice(0),s){var u=[];t&&u.push(t),r&&u.push(r);var c=s.length>u.length;c&&u.push(g(n));var f=s.apply(e,u);if(!c||n===f)return n}}var m=g((function e(t,r,n,i){return t._parserBytesLeft<=0?i(new Error("got data but not currently parsing anything")):r.length<=t._parserBytesLeft?function(){return v(t,r,n,i)}:function(){var a=r.slice(0,t._parserBytesLeft);return v(t,a,n,(function(o){return o?i(o):r.length>a.length?function(){return e(t,r.slice(a.length),n,i)}:void 0}))}}));function g(e){return function(){for(var t=e.apply(this,arguments);"function"==typeof t;)t=t();return t}}},41633:function(e,t,r){var n=r(90386);function i(){var e;try{e=t.storage.debug}catch(r){}return!e&&"undefined"!==typeof n&&"env"in n&&(e=n.env.DEBUG),e}(t=e.exports=r(74469)).log=function(){return"object"===typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},t.formatArgs=function(e){var r=this.useColors;if(e[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+e[0]+(r?"%c ":" ")+"+"+t.humanize(this.diff),r){var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var i=0,a=0;e[0].replace(/%[a-zA-Z%]/g,(function(e){"%%"!==e&&(i++,"%c"===e&&(a=i))})),e.splice(a,0,n)}},t.save=function(e){try{null==e?t.storage.removeItem("debug"):t.storage.debug=e}catch(r){}},t.load=i,t.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+)/))},t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}},t.enable(i())},74469:function(e,t,r){var n;function i(e){function r(){if(r.enabled){var e=r,i=+new Date,a=i-(n||i);e.diff=a,e.prev=n,e.curr=i,n=i;for(var o=new Array(arguments.length),s=0;s0)return function(e){if(!((e=String(e)).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(e);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*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(e);if("number"===u&&!1===isNaN(e))return s.long?o(l=e,i,"day")||o(l,n,"hour")||o(l,r,"minute")||o(l,t,"second")||l+" ms":function(e){return e>=i?Math.round(e/i)+"d":e>=n?Math.round(e/n)+"h":e>=r?Math.round(e/r)+"m":e>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},99011:function(e,t,r){"use strict";var n=r(88641);e.exports=function(e,t,r){if(null==e)throw Error("First argument should be a string");if(null==t)throw Error("Separator should be a string or a RegExp");r?("string"===typeof r||Array.isArray(r))&&(r={ignore:r}):r={},null==r.escape&&(r.escape=!0),null==r.ignore?r.ignore=["[]","()","{}","<>",'""',"''","``","\u201c\u201d","\xab\xbb"]:("string"===typeof r.ignore&&(r.ignore=[r.ignore]),r.ignore=r.ignore.map((function(e){return 1===e.length&&(e+=e),e})));var i=n.parse(e,{flat:!0,brackets:r.ignore}),a=i[0].split(t);if(r.escape){for(var o=[],s=0;s0;){t=u[u.length-1];var h=e[t];if(a[t]=0&&s[t].push(o[v])}a[t]=p}else{if(n[t]===r[t]){var m=[],g=[],y=0;for(p=l.length-1;p>=0;--p){var x=l[p];if(i[x]=!1,m.push(x),g.push(s[x]),y+=s[x].length,o[x]=f.length,x===t){l.length=p;break}}f.push(m);var b=new Array(y);for(p=0;p1&&(i=1),i<-1&&(i=-1),(e*n-t*r<0?-1:1)*Math.acos(i)};t.default=function(e){var t=e.px,r=e.py,l=e.cx,u=e.cy,c=e.rx,f=e.ry,d=e.xAxisRotation,h=void 0===d?0:d,p=e.largeArcFlag,v=void 0===p?0:p,m=e.sweepFlag,g=void 0===m?0:m,y=[];if(0===c||0===f)return[];var x=Math.sin(h*i/360),b=Math.cos(h*i/360),_=b*(t-l)/2+x*(r-u)/2,w=-x*(t-l)/2+b*(r-u)/2;if(0===_&&0===w)return[];c=Math.abs(c),f=Math.abs(f);var k=Math.pow(_,2)/Math.pow(c,2)+Math.pow(w,2)/Math.pow(f,2);k>1&&(c*=Math.sqrt(k),f*=Math.sqrt(k));var T=function(e,t,r,n,a,o,l,u,c,f,d,h){var p=Math.pow(a,2),v=Math.pow(o,2),m=Math.pow(d,2),g=Math.pow(h,2),y=p*v-p*g-v*m;y<0&&(y=0),y/=p*g+v*m;var x=(y=Math.sqrt(y)*(l===u?-1:1))*a/o*h,b=y*-o/a*d,_=f*x-c*b+(e+r)/2,w=c*x+f*b+(t+n)/2,k=(d-x)/a,T=(h-b)/o,M=(-d-x)/a,A=(-h-b)/o,S=s(1,0,k,T),E=s(k,T,M,A);return 0===u&&E>0&&(E-=i),1===u&&E<0&&(E+=i),[_,w,S,E]}(t,r,l,u,c,f,v,g,x,b,_,w),M=n(T,4),A=M[0],S=M[1],E=M[2],C=M[3],L=Math.abs(C)/(i/4);Math.abs(1-L)<1e-7&&(L=1);var P=Math.max(Math.ceil(L),1);C/=P;for(var O=0;Ot[2]&&(t[2]=u[c+0]),u[c+1]>t[3]&&(t[3]=u[c+1]);return t}},29988:function(e,t,r){"use strict";e.exports=function(e){for(var t,r=[],o=0,s=0,l=0,u=0,c=null,f=null,d=0,h=0,p=0,v=e.length;p4?(o=m[m.length-4],s=m[m.length-3]):(o=d,s=h),r.push(m)}return r};var n=r(7095);function i(e,t,r,n){return["C",e,t,r,n,r,n]}function a(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}},82019:function(e,t,r){"use strict";var n,i=r(1750),a=r(95616),o=r(31457),s=r(89546),l=r(44781),u=document.createElement("canvas"),c=u.getContext("2d");e.exports=function(e,t){if(!s(e))throw Error("Argument should be valid svg path string");var r,f;t||(t={}),t.shape?(r=t.shape[0],f=t.shape[1]):(r=u.width=t.w||t.width||200,f=u.height=t.h||t.height||200);var d=Math.min(r,f),h=t.stroke||0,p=t.viewbox||t.viewBox||i(e),v=[r/(p[2]-p[0]),f/(p[3]-p[1])],m=Math.min(v[0]||0,v[1]||0)/2;if(c.fillStyle="black",c.fillRect(0,0,r,f),c.fillStyle="white",h&&("number"!=typeof h&&(h=1),c.strokeStyle=h>0?"white":"black",c.lineWidth=Math.abs(h)),c.translate(.5*r,.5*f),c.scale(m,m),function(){if(null!=n)return n;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return n=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return n=r&&r.data&&255===r.data[3]}()){var g=new Path2D(e);c.fill(g),h&&c.stroke(g)}else{var y=a(e);o(c,y),c.fill(),h&&c.stroke()}return c.setTransform(1,0,0,1,0,0),l(c,{cutoff:null!=t.cutoff?t.cutoff:.5,radius:null!=t.radius?t.radius:.5*d})}},84267:function(e,t,r){var n;!function(i){var a=/^\s+/,o=/\s+$/,s=0,l=i.round,u=i.min,c=i.max,f=i.random;function d(e,t){if(t=t||{},(e=e||"")instanceof d)return e;if(!(this instanceof d))return new d(e,t);var r=function(e){var t,r,n,s={r:0,g:0,b:0},l=1,f=null,d=null,h=null,p=!1,v=!1;return"string"==typeof e&&(e=function(e){e=e.replace(a,"").replace(o,"").toLowerCase();var t,r=!1;if(L[e])e=L[e],r=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};return(t=j.rgb.exec(e))?{r:t[1],g:t[2],b:t[3]}:(t=j.rgba.exec(e))?{r:t[1],g:t[2],b:t[3],a:t[4]}:(t=j.hsl.exec(e))?{h:t[1],s:t[2],l:t[3]}:(t=j.hsla.exec(e))?{h:t[1],s:t[2],l:t[3],a:t[4]}:(t=j.hsv.exec(e))?{h:t[1],s:t[2],v:t[3]}:(t=j.hsva.exec(e))?{h:t[1],s:t[2],v:t[3],a:t[4]}:(t=j.hex8.exec(e))?{r:R(t[1]),g:R(t[2]),b:R(t[3]),a:B(t[4]),format:r?"name":"hex8"}:(t=j.hex6.exec(e))?{r:R(t[1]),g:R(t[2]),b:R(t[3]),format:r?"name":"hex"}:(t=j.hex4.exec(e))?{r:R(t[1]+""+t[1]),g:R(t[2]+""+t[2]),b:R(t[3]+""+t[3]),a:B(t[4]+""+t[4]),format:r?"name":"hex8"}:!!(t=j.hex3.exec(e))&&{r:R(t[1]+""+t[1]),g:R(t[2]+""+t[2]),b:R(t[3]+""+t[3]),format:r?"name":"hex"}}(e)),"object"==typeof e&&(U(e.r)&&U(e.g)&&U(e.b)?(t=e.r,r=e.g,n=e.b,s={r:255*I(t,255),g:255*I(r,255),b:255*I(n,255)},p=!0,v="%"===String(e.r).substr(-1)?"prgb":"rgb"):U(e.h)&&U(e.s)&&U(e.v)?(f=F(e.s),d=F(e.v),s=function(e,t,r){e=6*I(e,360),t=I(t,100),r=I(r,100);var n=i.floor(e),a=e-n,o=r*(1-t),s=r*(1-a*t),l=r*(1-(1-a)*t),u=n%6,c=[r,s,o,o,l,r][u],f=[l,r,r,s,o,o][u],d=[o,o,l,r,r,s][u];return{r:255*c,g:255*f,b:255*d}}(e.h,f,d),p=!0,v="hsv"):U(e.h)&&U(e.s)&&U(e.l)&&(f=F(e.s),h=F(e.l),s=function(e,t,r){var n,i,a;function o(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}if(e=I(e,360),t=I(t,100),r=I(r,100),0===t)n=i=a=r;else{var s=r<.5?r*(1+t):r+t-r*t,l=2*r-s;n=o(l,s,e+1/3),i=o(l,s,e),a=o(l,s,e-1/3)}return{r:255*n,g:255*i,b:255*a}}(e.h,f,h),p=!0,v="hsl"),e.hasOwnProperty("a")&&(l=e.a)),l=O(l),{ok:p,format:e.format||v,r:u(255,c(s.r,0)),g:u(255,c(s.g,0)),b:u(255,c(s.b,0)),a:l}}(e);this._originalInput=e,this._r=r.r,this._g=r.g,this._b=r.b,this._a=r.a,this._roundA=l(100*this._a)/100,this._format=t.format||r.format,this._gradientType=t.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=r.ok,this._tc_id=s++}function h(e,t,r){e=I(e,255),t=I(t,255),r=I(r,255);var n,i,a=c(e,t,r),o=u(e,t,r),s=(a+o)/2;if(a==o)n=i=0;else{var l=a-o;switch(i=s>.5?l/(2-a-o):l/(a+o),a){case e:n=(t-r)/l+(t>1)+720)%360;--t;)n.h=(n.h+i)%360,a.push(d(n));return a}function C(e,t){t=t||6;for(var r=d(e).toHsv(),n=r.h,i=r.s,a=r.v,o=[],s=1/t;t--;)o.push(d({h:n,s:i,v:a})),a=(a+s)%1;return o}d.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 e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,r,n=this.toRgb();return e=n.r/255,t=n.g/255,r=n.b/255,.2126*(e<=.03928?e/12.92:i.pow((e+.055)/1.055,2.4))+.7152*(t<=.03928?t/12.92:i.pow((t+.055)/1.055,2.4))+.0722*(r<=.03928?r/12.92:i.pow((r+.055)/1.055,2.4))},setAlpha:function(e){return this._a=O(e),this._roundA=l(100*this._a)/100,this},toHsv:function(){var e=p(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=p(this._r,this._g,this._b),t=l(360*e.h),r=l(100*e.s),n=l(100*e.v);return 1==this._a?"hsv("+t+", "+r+"%, "+n+"%)":"hsva("+t+", "+r+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var e=h(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=h(this._r,this._g,this._b),t=l(360*e.h),r=l(100*e.s),n=l(100*e.l);return 1==this._a?"hsl("+t+", "+r+"%, "+n+"%)":"hsla("+t+", "+r+"%, "+n+"%, "+this._roundA+")"},toHex:function(e){return v(this._r,this._g,this._b,e)},toHexString:function(e){return"#"+this.toHex(e)},toHex8:function(e){return function(e,t,r,n,i){var a=[z(l(e).toString(16)),z(l(t).toString(16)),z(l(r).toString(16)),z(N(n))];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,e)},toHex8String:function(e){return"#"+this.toHex8(e)},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)&&(P[v(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t="#"+m(this._r,this._g,this._b,this._a),r=t,n=this._gradientType?"GradientType = 1, ":"";if(e){var i=d(e);r="#"+m(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+t+",endColorstr="+r+")"},toString:function(e){var t=!!e;e=e||this._format;var r=!1,n=this._a<1&&this._a>=0;return t||!n||"hex"!==e&&"hex6"!==e&&"hex3"!==e&&"hex4"!==e&&"hex8"!==e&&"name"!==e?("rgb"===e&&(r=this.toRgbString()),"prgb"===e&&(r=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(r=this.toHexString()),"hex3"===e&&(r=this.toHexString(!0)),"hex4"===e&&(r=this.toHex8String(!0)),"hex8"===e&&(r=this.toHex8String()),"name"===e&&(r=this.toName()),"hsl"===e&&(r=this.toHslString()),"hsv"===e&&(r=this.toHsvString()),r||this.toHexString()):"name"===e&&0===this._a?this.toName():this.toRgbString()},clone:function(){return d(this.toString())},_applyModification:function(e,t){var r=e.apply(null,[this].concat([].slice.call(t)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(b,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(w,arguments)},desaturate:function(){return this._applyModification(g,arguments)},saturate:function(){return this._applyModification(y,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},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)}},d.fromRatio=function(e,t){if("object"==typeof e){var r={};for(var n in e)e.hasOwnProperty(n)&&(r[n]="a"===n?e[n]:F(e[n]));e=r}return d(e,t)},d.equals=function(e,t){return!(!e||!t)&&d(e).toRgbString()==d(t).toRgbString()},d.random=function(){return d.fromRatio({r:f(),g:f(),b:f()})},d.mix=function(e,t,r){r=0===r?0:r||50;var n=d(e).toRgb(),i=d(t).toRgb(),a=r/100;return d({r:(i.r-n.r)*a+n.r,g:(i.g-n.g)*a+n.g,b:(i.b-n.b)*a+n.b,a:(i.a-n.a)*a+n.a})},d.readability=function(e,t){var r=d(e),n=d(t);return(i.max(r.getLuminance(),n.getLuminance())+.05)/(i.min(r.getLuminance(),n.getLuminance())+.05)},d.isReadable=function(e,t,r){var n,i,a=d.readability(e,t);switch(i=!1,(n=function(e){var t,r;return t=((e=e||{level:"AA",size:"small"}).level||"AA").toUpperCase(),r=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA"),"small"!==r&&"large"!==r&&(r="small"),{level:t,size:r}}(r)).level+n.size){case"AAsmall":case"AAAlarge":i=a>=4.5;break;case"AAlarge":i=a>=3;break;case"AAAsmall":i=a>=7}return i},d.mostReadable=function(e,t,r){var n,i,a,o,s=null,l=0;i=(r=r||{}).includeFallbackColors,a=r.level,o=r.size;for(var u=0;ul&&(l=n,s=d(t[u]));return d.isReadable(e,s,{level:a,size:o})||!i?s:(r.includeFallbackColors=!1,d.mostReadable(e,["#fff","#000"],r))};var L=d.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"},P=d.hexNames=function(e){var t={};for(var r in e)e.hasOwnProperty(r)&&(t[e[r]]=r);return t}(L);function O(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function I(e,t){(function(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var r=function(e){return"string"===typeof e&&-1!=e.indexOf("%")}(e);return e=u(t,c(0,parseFloat(e))),r&&(e=parseInt(e*t,10)/100),i.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function D(e){return u(1,c(0,e))}function R(e){return parseInt(e,16)}function z(e){return 1==e.length?"0"+e:""+e}function F(e){return e<=1&&(e=100*e+"%"),e}function N(e){return i.round(255*parseFloat(e)).toString(16)}function B(e){return R(e)/255}var j=function(){var e="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",t="[\\s|\\(]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")\\s*\\)?",r="[\\s|\\(]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")\\s*\\)?";return{CSS_UNIT:new RegExp(e),rgb:new RegExp("rgb"+t),rgba:new RegExp("rgba"+r),hsl:new RegExp("hsl"+t),hsla:new RegExp("hsla"+r),hsv:new RegExp("hsv"+t),hsva:new RegExp("hsva"+r),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(e){return!!j.CSS_UNIT.exec(e)}e.exports?e.exports=d:void 0===(n=function(){return d}.call(t,r,t,e))||(e.exports=n)}(Math)},57060:function(e){"use strict";e.exports=r,e.exports.float32=e.exports.float=r,e.exports.fract32=e.exports.fract=function(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=r(e));for(var n=0,i=t.length;n":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace(i,(function(e){switch(e){case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}})))}},47403:function(e,t,r){"use strict";var n=r(24582),i={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!n(e)&&hasOwnProperty.call(i,typeof e)}},82527:function(e,t,r){"use strict";var n=r(69190),i=r(84985);e.exports=function(e){return i(e)?e:n(e,"%v is not a plain function",arguments[1])}},84985:function(e,t,r){"use strict";var n=r(73116),i=/^\s*class[\s{/}]/,a=Function.prototype.toString;e.exports=function(e){return!!n(e)&&!i.test(a.call(e))}},24511:function(e,t,r){"use strict";var n=r(47403);e.exports=function(e){if(!n(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(t){return!1}}},9234:function(e,t,r){"use strict";var n=r(24582),i=r(47403),a=Object.prototype.toString;e.exports=function(e){if(!n(e))return null;if(i(e)){var t=e.toString;if("function"!==typeof t)return null;if(t===a)return null}try{return""+e}catch(r){return null}}},10424:function(e,t,r){"use strict";var n=r(69190),i=r(24582);e.exports=function(e){return i(e)?e:n(e,"Cannot use %v",arguments[1])}},24582:function(e){"use strict";e.exports=function(e){return void 0!==e&&null!==e}},58404:function(e,t,r){"use strict";var n=r(13547),i=r(12129),a=r(12856).Buffer;r.g.__TYPEDARRAY_POOL||(r.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,u=r.g.__TYPEDARRAY_POOL;u.UINT8C||(u.UINT8C=i([32,0])),u.BIGUINT64||(u.BIGUINT64=i([32,0])),u.BIGINT64||(u.BIGINT64=i([32,0])),u.BUFFER||(u.BUFFER=i([32,0]));var c=u.DATA,f=u.BUFFER;function d(e){if(e){var t=e.length||e.byteLength,r=n.log2(t);c[r].push(e)}}function h(e){e=n.nextPow2(e);var t=n.log2(e),r=c[t];return r.length>0?r.pop():new ArrayBuffer(e)}function p(e){return new Uint8Array(h(e),0,e)}function v(e){return new Uint16Array(h(2*e),0,e)}function m(e){return new Uint32Array(h(4*e),0,e)}function g(e){return new Int8Array(h(e),0,e)}function y(e){return new Int16Array(h(2*e),0,e)}function x(e){return new Int32Array(h(4*e),0,e)}function b(e){return new Float32Array(h(4*e),0,e)}function _(e){return new Float64Array(h(8*e),0,e)}function w(e){return o?new Uint8ClampedArray(h(e),0,e):p(e)}function k(e){return s?new BigUint64Array(h(8*e),0,e):null}function T(e){return l?new BigInt64Array(h(8*e),0,e):null}function M(e){return new DataView(h(e),0,e)}function A(e){e=n.nextPow2(e);var t=n.log2(e),r=f[t];return r.length>0?r.pop():new a(e)}t.free=function(e){if(a.isBuffer(e))f[n.log2(e.length)].push(e);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(e)&&(e=e.buffer),!e)return;var t=e.length||e.byteLength,r=0|n.log2(t);c[r].push(e)}},t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=function(e){d(e.buffer)},t.freeArrayBuffer=d,t.freeBuffer=function(e){f[n.log2(e.length)].push(e)},t.malloc=function(e,t){if(void 0===t||"arraybuffer"===t)return h(e);switch(t){case"uint8":return p(e);case"uint16":return v(e);case"uint32":return m(e);case"int8":return g(e);case"int16":return y(e);case"int32":return x(e);case"float":case"float32":return b(e);case"double":case"float64":return _(e);case"uint8_clamped":return w(e);case"bigint64":return T(e);case"biguint64":return k(e);case"buffer":return A(e);case"data":case"dataview":return M(e);default:return null}return null},t.mallocArrayBuffer=h,t.mallocUint8=p,t.mallocUint16=v,t.mallocUint32=m,t.mallocInt8=g,t.mallocInt16=y,t.mallocInt32=x,t.mallocFloat32=t.mallocFloat=b,t.mallocFloat64=t.mallocDouble=_,t.mallocUint8Clamped=w,t.mallocBigUint64=k,t.mallocBigInt64=T,t.mallocDataView=M,t.mallocBuffer=A,t.clearCache=function(){for(var e=0;e<32;++e)u.UINT8[e].length=0,u.UINT16[e].length=0,u.UINT32[e].length=0,u.INT8[e].length=0,u.INT16[e].length=0,u.INT32[e].length=0,u.FLOAT[e].length=0,u.DOUBLE[e].length=0,u.BIGUINT64[e].length=0,u.BIGINT64[e].length=0,u.UINT8C[e].length=0,c[e].length=0,f[e].length=0}},90448:function(e){var t=/[\'\"]/;e.exports=function(e){return e?(t.test(e.charAt(0))&&(e=e.substr(1)),t.test(e.charAt(e.length-1))&&(e=e.substr(0,e.length-1)),e):""}},93447:function(e){"use strict";e.exports=function(e,t,r){Array.isArray(r)||(r=[].slice.call(arguments,2));for(var n=0,i=r.length;n=i)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return e}})),s=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),m(r)?n.showHidden=r:r&&t._extend(n,r),b(n.showHidden)&&(n.showHidden=!1),b(n.depth)&&(n.depth=2),b(n.colors)&&(n.colors=!1),b(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=c),d(n,e,n.depth)}function c(e,t){var r=u.styles[t];return r?"\x1b["+u.colors[r][0]+"m"+e+"\x1b["+u.colors[r][1]+"m":e}function f(e,t){return e}function d(e,r,n){if(e.customInspect&&r&&M(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,e);return x(i)||(i=d(e,i,n)),i}var a=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(x(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}return y(t)?e.stylize(""+t,"number"):m(t)?e.stylize(""+t,"boolean"):g(t)?e.stylize("null","null"):void 0}(e,r);if(a)return a;var o=Object.keys(r),s=function(e){var t={};return e.forEach((function(e,r){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),T(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return h(r);if(0===o.length){if(M(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(_(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(k(r))return e.stylize(Date.prototype.toString.call(r),"date");if(T(r))return h(r)}var u,c="",f=!1,w=["{","}"];return v(r)&&(f=!0,w=["[","]"]),M(r)&&(c=" [Function"+(r.name?": "+r.name:"")+"]"),_(r)&&(c=" "+RegExp.prototype.toString.call(r)),k(r)&&(c=" "+Date.prototype.toUTCString.call(r)),T(r)&&(c=" "+h(r)),0!==o.length||f&&0!=r.length?n<0?_(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),u=f?function(e,t,r,n,i){for(var a=[],o=0,s=t.length;o60?r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}(u,c,w)):w[0]+c+w[1]}function h(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,r,n,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=l.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),C(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(s=g(r)?d(e,l.value,null):d(e,l.value,r-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map((function(e){return" "+e})).join("\n").slice(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),b(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=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function v(e){return Array.isArray(e)}function m(e){return"boolean"===typeof e}function g(e){return null===e}function y(e){return"number"===typeof e}function x(e){return"string"===typeof e}function b(e){return void 0===e}function _(e){return w(e)&&"[object RegExp]"===A(e)}function w(e){return"object"===typeof e&&null!==e}function k(e){return w(e)&&"[object Date]"===A(e)}function T(e){return w(e)&&("[object Error]"===A(e)||e instanceof Error)}function M(e){return"function"===typeof e}function A(e){return Object.prototype.toString.call(e)}function S(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(e){if(e=e.toUpperCase(),!o[e])if(s.test(e)){var r=n.pid;o[e]=function(){var n=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,n)}}else o[e]=function(){};return o[e]},t.inspect=u,u.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]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.types=r(4936),t.isArray=v,t.isBoolean=m,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=x,t.isSymbol=function(e){return"symbol"===typeof e},t.isUndefined=b,t.isRegExp=_,t.types.isRegExp=_,t.isObject=w,t.isDate=k,t.types.isDate=k,t.isError=T,t.types.isNativeError=T,t.isFunction=M,t.isPrimitive=function(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e},t.isBuffer=r(45920);var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",function(){var e=new Date,t=[S(e.getHours()),S(e.getMinutes()),S(e.getSeconds())].join(":");return[e.getDate(),E[e.getMonth()],t].join(" ")}(),t.format.apply(t,arguments))},t.inherits=r(42018),t._extend=function(e,t){if(!t||!w(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};var L="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function P(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}t.promisify=function(e){if("function"!==typeof e)throw new TypeError('The "original" argument must be of type Function');if(L&&e[L]){var t;if("function"!==typeof(t=e[L]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,L,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,r,n=new Promise((function(e,n){t=e,r=n})),i=[],a=0;a2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var i=this.intercalaryMonth(e);if(r&&t!==i||t<1||t>12)throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return i?!r&&t<=i?t-1:t:t-1},toChineseMonth:function(e,t){e.year&&(t=(e=e.year()).month());var r=this.intercalaryMonth(e);if(t<0||t>(r?12:11))throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return r?t>13;return t},isIntercalaryMonth:function(e,t){e.year&&(t=(e=e.year()).month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return 0!==this.intercalaryMonth(e)},weekOfYear:function(e,t,r){var i,o=this._validateYear(e,n.local.invalidyear),s=d[o-d[0]],l=s>>9&4095,u=s>>5&15,c=31&s;(i=a.newDate(l,u,c)).add(4-(i.dayOfWeek()||7),"d");var f=this.toJD(e,t,r)-i.toJD();return 1+Math.floor(f/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=f[e-f[0]];if(t>(r>>13?12:11))throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=r&1<<12-t?30:29;return i},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,s,r,n.local.invalidDate);e=this._validateYear(i.year()),t=i.month(),r=i.day();var o=this.isIntercalaryMonth(e,t),s=this.toChineseMonth(e,t),l=function(e,t,r,n,i){var a,o,s;if("object"===typeof e)o=e,a=t||{};else{var l;if(!("number"===typeof e&&e>=1888&&e<=2111))throw new Error("Lunar year outside range 1888-2111");if(!("number"===typeof t&&t>=1&&t<=12))throw new Error("Lunar month outside range 1 - 12");if(!("number"===typeof r&&r>=1&&r<=30))throw new Error("Lunar day outside range 1 - 30");"object"===typeof n?(l=!1,a=n):(l=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:l}}s=o.day-1;var u,c=f[o.year-f[0]],h=c>>13;u=h&&(o.month>h||o.isIntercalary)?o.month:o.month-1;for(var p=0;p>9&4095,(v>>5&15)-1,(31&v)+s);return a.year=m.getFullYear(),a.month=1+m.getMonth(),a.day=m.getDate(),a}(e,s,r,o);return a.toJD(l.year,l.month,l.day)},fromJD:function(e){var t=a.fromJD(e),r=function(e,t,r,n){var i,a;if("object"===typeof e)i=e,a=t||{};else{if(!("number"===typeof e&&e>=1888&&e<=2111))throw new Error("Solar year outside range 1888-2111");if(!("number"===typeof t&&t>=1&&t<=12))throw new Error("Solar month outside range 1 - 12");if(!("number"===typeof r&&r>=1&&r<=31))throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var o=d[i.year-d[0]],s=i.year<<9|i.month<<5|i.day;a.year=s>=o?i.year:i.year-1,o=d[a.year-d[0]];var l,u=new Date(o>>9&4095,(o>>5&15)-1,31&o),c=new Date(i.year,i.month-1,i.day);l=Math.round((c-u)/864e5);var h,p=f[a.year-f[0]];for(h=0;h<13;h++){var v=p&1<<12-h?30:29;if(l>13;return!m||h=2&&n<=6},extraInfo:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return{century:o[Math.floor((i.year()-1)/100)+1]||""}},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=i.year()+(i.year()<0?1:0),t=i.month(),(r=i.day())+(t>1?16:0)+(t>2?32*(t-2):0)+400*(e-1)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=400*(t-1),e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-32*(r-1)+1;return this.newDate(t<=0?t-1:t,r,n)}});var o={20:"Fruitbat",21:"Anchovy"};n.calendars.discworld=a},37715:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return(e=t.year()+(t.year()<0?1:0))%4===3||e%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return(e=i.year())<0&&e++,i.day()+30*(i.month()-1)+365*(e-1)+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-30*(n-1)+1;return this.newDate(r,n,i)}}),n.calendars.ethiopian=a},99384:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function o(e,t){return e-t*Math.floor(e/t)}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return o(7*(e=e<0?e+1:e)+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return e=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year(),this.toJD(-1===e?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,n.local.invalidMonth),12===t&&this.leapYear(e)||8===t&&5===o(this.daysInYear(e),10)?30:9===t&&3===o(this.daysInYear(e),10)?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return 6!==this.dayOfWeek(e,t,r)},extraInfo:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=e<=0?e+1:e,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+r+1;if(t<7){for(var s=7;s<=this.monthsInYear(e);s++)o+=this.daysInMonth(e,s);for(s=1;s=this.toJD(-1===t?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}}),n.calendars.hebrew=a},43805:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){return(11*this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year()+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return 5!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=i.year(),t=i.month(),e=e<=0?e+1:e,(r=i.day())+Math.ceil(29.5*(t-1))+354*(e-1)+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}}),n.calendars.islamic=a},88874:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return(e=t.year()<0?t.year()+1:t.year())%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=i.year(),t=i.month(),r=i.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5)+1524,r=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*r),i=Math.floor((t-n)/30.6001),a=i-Math.floor(i<14?1:13),o=r-Math.floor(a>2?4716:4715),s=t-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,a,s)}}),n.calendars.julian=a},83290:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function o(e,t){return e-t*Math.floor(e/t)}function s(e,t){return o(e-1,t)+1}a.prototype=new n.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(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),!1},formatYear:function(e){e=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year();var t=Math.floor(e/400);return e%=400,e+=e<0?400:0,t+"."+Math.floor(e/20)+"."+e%20},forYear:function(e){if((e=e.split(".")).length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=20*t+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,n.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,n.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,n.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){return this._validate(e,t,r,n.local.invalidDate).day()},weekDay:function(e,t,r){return this._validate(e,t,r,n.local.invalidDate),!0},extraInfo:function(e,t,r){var i=this._validate(e,t,r,n.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(e){var t=o(8+(e-=this.jdEpoch)+340,365);return[Math.floor(t/20)+1,o(t,20)]},_toTzolkin:function(e){return[s(20+(e-=this.jdEpoch),20),s(e+4,13)]},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return i.day()+20*i.month()+360*i.year()+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e%=360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}}),n.calendars.mayan=a},29108:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.baseCalendar;var o=n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear);return o.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidMonth);(e=i.year())<0&&e++;for(var a=i.day(),s=1;s=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}}),n.calendars.nanakshahi=a},55422:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){if(e=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear).year(),"undefined"===typeof this.NEPALI_CALENDAR_DATA[e])return this.daysPerYear;for(var t=0,r=this.minMonth;r<=12;r++)t+=this.NEPALI_CALENDAR_DATA[e][r];return t},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,n.local.invalidMonth),"undefined"===typeof this.NEPALI_CALENDAR_DATA[e]?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return 6!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=n.instance(),o=0,s=t,l=e;this._createMissingCalendarData(e);var u=e-(s>9||9===s&&r>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==t&&(o=r,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===t?(o+=r-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=a.daysInYear(u)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(u,1,1).add(o,"d").toJD()},fromJD:function(e){var t=n.instance().fromJD(e),r=t.year(),i=t.dayOfYear(),a=r+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 u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r0?474:473))%2820+474+38)%2816<682},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-(n.dayOfWeek()+1)%7,"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return 5!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=e-(e>=0?474:473),s=474+o(a,2820);return r+(t<=7?31*(t-1):30*(t-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(a/2820)+this.jdEpoch-1},fromJD:function(e){var t=(e=Math.floor(e)+.5)-this.toJD(475,1,1),r=Math.floor(t/1029983),n=o(t,1029983),i=2820;if(1029982!==n){var a=Math.floor(n/366),s=o(n,366);i=Math.floor((2134*a+2816*s+2815)/1028522)+a+1}var l=i+2820*r+474;l=l<=0?l-1:l;var u=e-this.toJD(l,1,1)+1,c=u<=186?Math.ceil(u/31):Math.ceil((u-6)/30),f=e-this.toJD(l,c,1)+1;return this.newDate(l,c,f)}}),n.calendars.persian=a,n.calendars.jalali=a},31320:function(e,t,r){var n=r(63489),i=r(56131),a=n.instance();function o(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}o.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(t.year()),a.leapYear(e)},weekOfYear:function(e,t,r){var i=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(i.year()),a.weekOfYear(e,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=this._t2gYear(i.year()),a.toJD(e,i.month(),i.day())},fromJD:function(e){var t=a.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}}),n.calendars.taiwan=o},51367:function(e,t,r){var n=r(63489),i=r(56131),a=n.instance();function o(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}o.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(t.year()),a.leapYear(e)},weekOfYear:function(e,t,r){var i=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return e=this._t2gYear(i.year()),a.weekOfYear(e,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate);return e=this._t2gYear(i.year()),a.toJD(e,i.month(),i.day())},fromJD:function(e){var t=a.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}}),n.calendars.thai=o},21457:function(e,t,r){var n=r(63489),i=r(56131);function a(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a.prototype=new n.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(e){var t=this._validate(e,this.minMonth,this.minDay,n.local.invalidYear);return 355===this.daysInYear(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,n.local.invalidMonth).toJD()-24e5+.5,i=0,a=0;ar)return o[i]-o[i-1];i++}return 30},weekDay:function(e,t,r){return 5!==this.dayOfWeek(e,t,r)},toJD:function(e,t,r){var i=this._validate(e,t,r,n.local.invalidDate),a=12*(i.year()-1)+i.month()-15292;return i.day()+o[a-1]-1+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),s=a+1,l=i-12*a,u=t-o[r-1]+1;return this.newDate(s,l,u)},isValid:function(e,t,r){var i=n.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(i=(e=null!=e.year?e.year:e)>=1276&&e<=1500),i},_validate:function(e,t,r,i){var a=n.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}}),n.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(e,t,r){var n=r(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(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(u.local.invalidDate||u.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function o(e,t){return"000000".substring(0,t-(e=""+e).length)+e}function s(){this.shortYearCutoff="+10"}function l(e){this.local=this.regionalOptions[e]||this.regionalOptions[""]}n(i.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return(n=(null!=e&&e.year?e.calendar():"string"===typeof n?this.instance(n,i):n)||this.instance()).newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,(function(t){return e[t]}))}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(0===a?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return 0===n.indexOf(e[1]+t[1])&&(n=n.substr(1)),n||e[0]}}}),n(a.prototype,{newDate:function(e,t,r){return this._calendar.newDate(null==e?this:e,t,r)},year:function(e){return 0===arguments.length?this._year:this.set(e,"y")},month:function(e){return 0===arguments.length?this._month:this.set(e,"m")},day:function(e){return 0===arguments.length?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(u.local.invalidDate||u.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(u.local.differentCalendars||u.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return 0===t?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+o(Math.abs(this.year()),4)+"-"+o(this.month(),2)+"-"+o(this.day(),2)}}),n(s.prototype,{_validateLevel:0,newDate:function(e,t,r){return null==e?this.today():(e.year&&(this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new a(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){return this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+o(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,u.local.invalidMonth||u.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,u.local.invalidMonth||u.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,u.local.invalidYear||u.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,u.local.invalidDate||u.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,"d"===r||"w"===r){var n=e.toJD()+t*("w"===r?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+("y"===r?t:0),o=e.monthOfYear()+("m"===r?t:0);i=e.day(),"y"===r?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):"m"===r&&(function(e){for(;ot-1+e.minMonth;)a++,o-=t,t=e.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(e,t,r,n){if(!this.hasYearZero&&("y"===n||"m"===n)&&(0===t[0]||e.year()>0!==t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,u.local.invalidDate||u.regionalOptions[""].invalidDate);var n="y"===r?t:e.year(),i="m"===r?t:e.month(),a="d"===r?t:e.day();return"y"!==r&&"m"!==r||(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||0!==e;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),u=i-(l>2.5?4716:4715);return u<=0&&u--,this.newDate(u,l,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,u.local.invalidDate||u.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var u=e.exports=new i;u.cdate=a,u.baseCalendar=s,u.calendars.gregorian=l},94338:function(e,t,r){var n=r(56131),i=r(63489);n(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[""],n(i.cdate.prototype,{formatDate:function(e,t){return"string"!==typeof e&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}}),n(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(e,t,r){if("string"!==typeof e&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw i.local.invalidFormat||i.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat;for(var n=(r=r||{}).dayNamesShort||this.local.dayNamesShort,a=r.dayNames||this.local.dayNames,o=r.monthNumbers||this.local.monthNumbers,s=r.monthNamesShort||this.local.monthNamesShort,l=r.monthNames||this.local.monthNames,u=(r.calculateWeek||this.local.calculateWeek,function(t,r){for(var n=1;x+n1}),c=function(e,t,r,n){var i=""+t;if(u(e,n))for(;i.length1},x=function(e,r){var n=y(e,r),a=[2,3,n?4:2,n?4:2,10,11,20]["oyYJ@!".indexOf(e)+1],o=new RegExp("^-?\\d{1,"+a+"}"),s=t.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)},b=this,_=function(){if("function"===typeof l){y("m");var e=l.call(b,t.substring(M));return M+=e.length,e}return x("m")},w=function(e,r,n,a){for(var o=y(e,a)?n:r,s=0;s-1){h=1,p=v;for(var E=this.daysInMonth(d,h);p>E;E=this.daysInMonth(d,h))h++,p-=E}return f>-1?this.fromJD(f):this.newDate(d,h,p)},determineDate:function(e,t,r,n,i){r&&"object"!==typeof r&&(i=n,n=r,r=null),"string"!==typeof n&&(i=n,n="");var a=this;return t=t?t.newDate():null,e=null==e?t:"string"===typeof e?function(e){try{return a.parseDate(n,e,i)}catch(l){}for(var t=((e=e.toLowerCase()).match(/^c/)&&r?r.newDate():null)||a.today(),o=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,s=o.exec(e);s;)t.add(parseInt(s[1],10),s[2]||"d"),s=o.exec(e);return t}(e):"number"===typeof e?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e)}})},69862:function(){},40964:function(){},72077:function(e,t,r){"use strict";var n=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],i="undefined"===typeof globalThis?r.g:globalThis;e.exports=function(){for(var e=[],t=0;t>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?k(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?k(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=d.exec(e))?new M(t[1],t[2],t[3],1):(t=h.exec(e))?new M(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=p.exec(e))?k(t[1],t[2],t[3],t[4]):(t=v.exec(e))?k(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=m.exec(e))?P(t[1],t[2]/100,t[3]/100,1):(t=g.exec(e))?P(t[1],t[2]/100,t[3]/100,t[4]):y.hasOwnProperty(e)?w(y[e]):"transparent"===e?new M(NaN,NaN,NaN,0):null}function w(e){return new M(e>>16&255,e>>8&255,255&e,1)}function k(e,t,r,n){return n<=0&&(e=t=r=NaN),new M(e,t,r,n)}function T(e,t,r,n){return 1===arguments.length?((i=e)instanceof a||(i=_(i)),i?new M((i=i.rgb()).r,i.g,i.b,i.opacity):new M):new M(e,t,r,null==n?1:n);var i}function M(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function A(){return"#".concat(L(this.r)).concat(L(this.g)).concat(L(this.b))}function S(){var e=E(this.opacity);return"".concat(1===e?"rgb(":"rgba(").concat(C(this.r),", ").concat(C(this.g),", ").concat(C(this.b)).concat(1===e?")":", ".concat(e,")"))}function E(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function C(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function L(e){return((e=C(e))<16?"0":"")+e.toString(16)}function P(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new I(e,t,r,n)}function O(e){if(e instanceof I)return new I(e.h,e.s,e.l,e.opacity);if(e instanceof a||(e=_(e)),!e)return new I;if(e instanceof I)return e;var t=(e=e.rgb()).r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),o=Math.max(t,r,n),s=NaN,l=o-i,u=(o+i)/2;return l?(s=t===o?(r-n)/l+6*(r0&&u<1?0:s,new I(s,l,u,e.opacity)}function I(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function D(e){return(e=(e||0)%360)<0?e+360:e}function R(e){return Math.max(0,Math.min(1,e||0))}function z(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}function F(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}n(a,_,{copy:function(e){return Object.assign(new this.constructor,this,e)},displayable:function(){return this.rgb().displayable()},hex:x,formatHex:x,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return O(this).formatHsl()},formatRgb:b,toString:b}),n(M,T,i(a,{brighter:function(e){return e=null==e?s:Math.pow(s,e),new M(this.r*e,this.g*e,this.b*e,this.opacity)},darker:function(e){return e=null==e?o:Math.pow(o,e),new M(this.r*e,this.g*e,this.b*e,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(L(this.r)).concat(L(this.g)).concat(L(this.b)).concat(L(255*(isNaN(this.opacity)?1:this.opacity)))},formatRgb:S,toString:S})),n(I,(function(e,t,r,n){return 1===arguments.length?O(e):new I(e,t,r,null==n?1:n)}),i(a,{brighter:function(e){return e=null==e?s:Math.pow(s,e),new I(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?o:Math.pow(o,e),new I(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new M(z(e>=240?e-240:e+120,i,n),z(e,i,n),z(e<120?e+240:e-120,i,n),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 e=E(this.opacity);return"".concat(1===e?"hsl(":"hsla(").concat(D(this.h),", ").concat(100*R(this.s),"%, ").concat(100*R(this.l),"%").concat(1===e?")":", ".concat(e,")"))}}));var N=function(e){return function(){return e}};function B(e,t){return function(r){return e+r*t}}function j(e){return 1===(e=+e)?U:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}(t,r,e):N(isNaN(t)?r:t)}}function U(e,t){var r=t-e;return r?B(e,r):N(isNaN(e)?t:e)}var V=function e(t){var r=j(t);function n(e,t){var n=r((e=T(e)).r,(t=T(t)).r),i=r(e.g,t.g),a=r(e.b,t.b),o=U(e.opacity,t.opacity);return function(t){return e.r=n(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+""}}return n.gamma=e,n}(1);function H(e){return function(t){var r,n,i=t.length,a=new Array(i),o=new Array(i),s=new Array(i);for(r=0;r=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=na&&(i=t.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:G(r,n)})),a=K.lastIndex;return a